O que está acontecendo pode ser reunido a partir dos dotfiles do autor. Aviso! A coisa toda é bastante complicada (e inteligente).
-
Este é o comando
vim-
bash:vim-() { vim -s <(printf '\eh') }
Abre o Vim e simula uma sequência de teclas,
<Esc>h
. -
<Esc>h
é mapeado para executar um comando personalizado,:FPScratchy
, que por sua vez chama um script externo,ack_find
.nmap <ESC>h :FPScratchy "ack_find"<CR>
-
O propósito desse comando é criar uma "janela de rascunho" contendo a lista de arquivos gerada pelo comando externo e fazer alguns remapeamentos para navegação:
<CR>
no modo normal para abrir o arquivo sob o cursor,<CR>
in modo visual para adicionar os arquivos selecionados ao arglist local e<Esc><CR>
no modo normal para abrir o arquivo sob o cursor em uma janela dividida.function! FPScratchy(...) call call(function("Scratchy"), a:000) setlocal cursorline nmap <buffer> <CR> 0gf vmap <buffer> <CR> :Lines2arglocal<CR> nmap <buffer> <ESC><CR> 0<c-w>f<c-w>w endfunction command -nargs=* FPScratchy :call FPScratchy(<args>) function! Lines2arglocal() range let lines = map(range(a:firstline, a:lastline), 'getline(v:val)') execute "arglocal " . join(lines, " ") endfunction command -range Lines2arglocal <line1>,<line2>:call Lines2arglocal()
-
O autor alterou seu método
find
para umack
-based um pouco mais envolvido há alguns anos . Não temos meios de saber o que ele usou diariamente, mas podemos supor que foi simples:$ find . -type f