terça-feira, 4 de maio de 2010

O editor de texto vi

O vi foi o primeiro editor verdadeiramente baseado em telas para o UNIX e ainda é muito popular. É usado para editar arquivos de texto ASCII. Ele é pequeno, simples e não muito difícil para aprender. Atualmente as distribuições Linux trazem o VIM (VIsual editor iMproved) que é uma versão melhorada e atualizada do editor vi. O VIM melhora o vi acrescentando novas potencialidades: janelas múltiplas, anulação multi-nível, realce de blocos e mais. Para inicializar o VIM e editar um arquivo use a seguinte sintaxe:

# vim arquivo

Se o arquivo já existir, ele será aberto para edição, se não será aberto um novo arquivo. Existem três modos de operação: modo de comando, modo de execução e o modo de edição. Quando você inicia o VIM ele está no modo de comando, este modo permite que você use diversos comandos (pressionando uma ou mais teclas) para inserir, localizar ou modificar o texto. O modo de execução se inicia quando pressionamos os ":" (dois pontos), aparecendo um prompt na parte de baixo da tela para entrada de um comando. Conheça alguns:

Comandos de movimentação do cursor pelo texto:

Ctrl+f    avança para a próxima tela (semelhante a Page Down).
Ctrl+b    recua para a tela anterior (semelhante a Page Up).
0 (zero)  move o cursor para o início da linha.
$         move o cursor para o fim da linha.
nG        move o cursor para a linha n.
:n        move o cursor para a linha n.
G         move o cursor para a última linha do texto.
w         move o cursor para a próxima palavra
b         move o cursor para o início da palavra anterior
e         move o cursor para o próximo final de uma palavra
ge        move o cursor para o final anterior de uma palavra
setas     move o cursor.

Comandos de localização e troca de texto:

/palavra         procura pela palavra a partir da posição do cursor para baixo.
?palavra         procura pela palavra a partir da posição do cursor para cima.
n                repete a última procura.
N                repete a última procura na direção inversa.
:g/s1/s//p2/g    substitui em todo o texto os p1 por p2.
:g/p1/s//p2/gc   substitui em todo o texto, solicitando confirmação, os p1 por p2.
:n,m/p1/s//p2/g  substitui da linha n até m os p1 por p2.
Ctrl+g           exibe as informações do arquivo.

Comandos de modificação do texto:

x         apaga o caractere sob o cursor.
dd        apaga a linha sob o cursor.
ndd       apaga n linhas, da linha sob o cursor para baixo.
D         apaga os caracteres na linha a partir da posição do cursor.
yy        copia a linha sob o cursor.
nyy       copia n linhas, da linha sob o cursor para baixo.
p         cola o texto apagado ou copiado após a posição do cursor.
u         desfaz a última modificação.
:r arq    insere o conteúdo do arquivo especificado após a linha do cursor.

Comandos de edição do texto (inicia o modo de edição):

a         insere o texto depois da posição do cursor.
A         insere o texto no fim da linha de onde se encontra o cursor.
i         insere o texto na posição do cursor.
I         insere o texto no início da linha de onde se encontra o cursor.
o         insere uma linha abaixo da linha com o cursor.
O         insere uma linha acima da linha com o cursor.

No modo de edição, tudo que for digitado será inserido no texto a partir da posição do cursor. Para começar uma nova linha, pressione ENTER. Para retornar ao modo de comando pressione a tecla ESC.

Comandos para gravar o texto, abrir um novo arquivo ou sair do editor:

:w        grava o texto no arquivo aberto.
:w arq    grava o texto no arquivo especificado.
:w>> arq  acrescenta o texto no arquivo especificado.
:w!       força a gravação do texto no arquivo aberto.
:wq       grava o texto no arquivo aberto e sai do editor.
:wq arq   grava o texto no arquivo especificado e sai do editor.
:e arq    abre o arquivo especificado, fechando o atual.
:q        sai do editor desde que o texto não tenha nenhuma alteração.
:q!       força a saída do editor sem salvar as alterações no texto.

Se precisar use o comando :help, mas não se assuste com a quantidade de comandos existentes. No arquivo de ajuda do VIM, para avançar em um assunto posicione o cursor sobre a ligação e pressione CTRL-]. Para retornar pressione CTRL-t ou CTRL-o. O comando :q sai da ajuda e retorna ao editor.

Nenhum comentário:

Postar um comentário