O
Vi é o editor básico do
GNU/Linux, está disponível em grande parte das distribuições do
GNU/Linux, mesmo
naquelas que vêm em apenas um disquete.
Hoje em dia as distribuições usam uma versão mais completa e com mais recursos do que o Vi, que é o Vim
(VI iMproved).
Ao invocar o Vi, este entra direto para o modo "visualização" onde visualizaremos o arquivo. Para modificar
o arquivo, usam-se
os modos texto para a inserção de dados e modo comando para a localização, movimentação, alteração e
para salvar e sair do
texto.
Para voltar ao modo de visualização, sempre se usa a tecla ESC.
Após digitar "vim" no terminal será aberto um arquivo em branco para você criar seu arquivo e futuramente
editá-lo com o
próprio vim, se preferir é claro.
$ vim
Dentro do arquivo iremos trabalhar com modos e seus comandos, que serão abordados a seguir.
Irei abordar cada destes comandos:
- Modo texto - comandos de inserção;
- Modo comando - comandos de localização, movimentação, alteração e para salvar e sair do texto.
Modo texto - comandos de inserção
Comando de inserção de texto:
- i - insere texto antes da posição atual do cursor;
- a - insere o texto depois da posição atual do cursor;
- r - Substitui o texto na posição atual de onde se encontra o cursor;
- A - insere o texto no final da linha onde se encontra o cursor
- o - Adiciona uma linha abaixo da linha onde se encontra o cursor;
- O - Adiciona uma linha acima da linha onde se encontra o cursor;
- ESC muda para o modo de visualização.
Modo comando - comandos de localização, movimentação, alteração e para salvar e sair do
texto
Comandos para localização de texto:
- /palavra - Busca pela palavra ou caractere em todo o texto;
- ?palavra - Move o cursor para a ocorrência anterior da palavra;
- n- Repete o último comando / ou ?;
- N - Repete o último comando / ou ?, na direção reversa;
- Ctrl+g - Mostra o nome do arquivo, o número da linha atual e o total de linhas.
Comandos para a movimentação pelo texto:
- Ctrl+f - Move o cursor para a próxima tela;
- Ctrl+b - Move o cursor para a tela anterior;
- H - Move o cursor para a primeira linha da tela;
- M - Move o cursor para o meio da tela;
- L - Move o cursor para a última linha da tela;
- h - Move o cursor um caractere à esquerda;
- j - Move o cursor para a próxima linha;
- k - Move o cursor para linha anterior;
- l - Move o cursor um caractere à direita;
- w - Move o cursor para o início da próxima palavra;
- W - Move o cursor para o início da próxima palavra, separadas por espaço;
- b - Move o cursor para o início da palavra anterior;
- B - Move o cursor para o início da palavra anterior separadas por espaço;
- 0(zero) - Move o cursor para o início da linha atual;
- ^ - Move o cursor para o primeiro caractere não branco da linha atual;
- $ - Move o cursor para o final da linha atual;
- nG - Move o cursor para a linha n;
- :n - Move o cursor para a linha n;
- gg - Move o cursor para a primeira linha do arquivo;
- G - Move o cursor para a última linha do arquivo.
Comandos para alteração do texto:
- x - Deleta o caractere que está sob o cursor;
- dw - Deleta a palavra, da posição atual do cursor até o final;
- dd - Deleta a linha atual, e copia o conteúdo para área de transferência;
- D - Deleta a linha a partir da posição atual do cursor até o final;
- :A,Bd - Deleta da linha A até a linha B, copia para área de transferência;
- rx - Substitui o caractere sob o cursor pelo especificado em x;
- u - Desfaz a última modificação;
- U - Desfaz todas as modificações feitas na linha atual;
- J - Une a linha corrente a próxima;
- yy - ECopia 1 linha para a área de transferência;
- yNy - Copia N linhas para a área de transferência;
- p - Cola o conteúdo da área de transferência;
- Np - Cola N vezes o conteúdo da área de transferência;
- cc - Apaga o conteúdo da linha, e copia para área de transferência;
- cNc - Apaga o conteúdo de N linhas, e copia para área de transferência (a partir da linha atual);
- :%s/string1/string2/g - Substitui "string1" por "string2";
- ndd - Deleta o conteúdo de n linhas a partir da linha atual;
- nD - Deleta a linha a partir da posição atual do cursor até o fim de n linhas.
Comandos para salvar e sair:
- :wq, ZZ ou :x - Salvam o arquivo e saem do editor;
- :w nome_do_arquivo - Salva o arquivo corrente com o nome especificado;
- :w! nome_do_arquivo - O mesmo que :w, mas forçando sobrescrita;
- :q - Sai do editor;
- :q! - Sai do editor sem salvar as alterações realizadas.
NOTA: Estes são comandos básicos mas muito essenciais na hora de trabalhar em modo texto com vim.
Bom pessoal, essa foi minha dica sobe o editor de textos vim, espero que tenha tirado proveito o máximo
possível dele.
Obrigado pelo espaço VOL e até a próxima...