dotfiles

Repositório dotfiles
git clone git://git.sivaldodavi.com/dotfiles.git
Log | Files | Refs | README

lfrc (1889B)


      1 
      2 # ==============================================================================
      3 # CONFIGURAÇÕES BÁSICAS
      4 # ==============================================================================
      5 set icons true
      6 set period 1
      7 set relativenumber
      8 set incsearch
      9 set incfilter
     10 set truncatechar '…'
     11 set scrolloff 10
     12 set autoquit true
     13 set shellopts '-u'
     14 set hidden true 
     15 
     16 # ==============================================================================
     17 # COMANDOS CUSTOMIZADOS
     18 # ==============================================================================
     19 
     20 # Criação de arquivos e pastas
     21 cmd mkdir $mkdir -p "$@"
     22 cmd touch $touch "$@"
     23 
     24 # Abrir arquivos
     25 cmd open $open "$f"
     26 
     27 # Bulkrename
     28 cmd bulkrename ${{
     29     old_list=$(mktemp)
     30     new_list=$(mktemp)
     31 
     32     # Coleta nomes dos arquivos
     33     if [ -n "$fs" ]; then
     34         for i in $fs; do echo "${i##*/}" >> "$old_list"; done
     35     else
     36         ls -1 > "$old_list"
     37     fi
     38 
     39     cp "$old_list" "$new_list"
     40     $EDITOR "$new_list"
     41 
     42     # Validação de integridade
     43     if [ "$(wc -l < "$old_list")" -ne "$(wc -l < "$new_list")" ]; then
     44         echo "Erro: A contagem de arquivos mudou. Operação cancelada."
     45         rm "$old_list" "$new_list"
     46         read -r _
     47         exit 1
     48     fi
     49 
     50     # Renomeação linha a linha
     51     exec 3<"$old_list"
     52     exec 4<"$new_list"
     53     while read -u 3 src && read -u 4 dest; do
     54         if [ "$src" != "$dest" ] && [ ! -e "$dest" ]; then
     55             mv -- "$src" "$dest"
     56         fi
     57     done
     58 
     59     rm "$old_list" "$new_list"
     60     lf -remote "send $id reload"
     61     lf -remote "send $id unselect"
     62 }}
     63 
     64 # ==============================================================================
     65 # ATALHOS (KEYBINDINGS)
     66 # ==============================================================================
     67 
     68 map D delete
     69 map <c-r> reload
     70 map B bulkrename
     71 map l open
     72 map <enter> open
     73 
     74 # Atalho para mostrar/esconder arquivos ocultos
     75 map . set hidden!