Sei que posso abrir vários ficheiros com "vim" fazendo algo como "vim 2011-12*.log", mas como posso alternar entre ficheiros e fechar os ficheiros um de cada vez? Além disso, como posso dizer o nome do ficheiro actual que eu'm edito?
Em primeiro lugar, em vim pode entrar : (dois pontos) e depois ajudar help
, ala :help
para uma lista de tópicos de auto-ajuda, incluindo um pequeno tutorial. Dentro da lista de tópicos, mova o cursor sobre o tópico de interesse e depois prima ctrl] e esse tópico será aberto.
Um bom lugar para começar seria o tema
|usr_07.txt| Editing more than one file
Ok, sobre a sua resposta.
Após iniciar o vim com uma lista de ficheiros, pode passar para o ficheiro seguinte introduzindo :next
ou :n
para abreviar.
:wnext
é a abreviatura para escrever as alterações actuais e depois passar para o ficheiro seguinte.
Aí's também um análogo :anterior',
:anterior' e :seguinte'. (Note que
:p' é a abreviatura de :print'. O estenógrafo para
:anterior' é :prev' ou
:N'.)
Para ver onde se encontra na lista de ficheiros introduza :args' e o ficheiro que está actualmente a ser editado aparecerá em
[]` (parênteses).
Exemplo:
vim foo.txt bar.txt
:args
resultado:
[foo.txt] bar.txt
pode abrir outro ficheiro enquanto vim está aberto com :tabe filename' e para mudar para o outro ficheiro digitar
:tabn' ou `:tabp' para o próximo e o anterior em conformidade.
Os atalhos do teclado gT e gt também podem ser usados para mudar as abas quando não se está no modo de edição (ou seja, não está nos modos inserir, substituir, etc.). Em alguns sistemas Ctrl+Alt+Page Up e Ctrl+Alt+Page Down também permite a troca de separadores, mas isto nem sempre funciona (por exemplo, ganhou't funciona no terminal OS X 'out of the box').
E pode ver o nome do ficheiro na parte superior da aplicação vim.
Comandos para alternar entre amortecedores:
:bf # Go to first file.
:bl # Go to last file
:bn # Go to next file.
:bp # Go to previous file.
:bw # Close file.
`:ajuda de buffer' para encontrar mais informação
Para conhecer a utilização do nome de ficheiro Ctrl+G,:file
ou :f