Vim
De ULBwiki
Tabela de conteúdo |
O Vim
O Vim é um editor de textos altamente configurável criado em 1991 por Bram Moolenaar
para a família de computadores Amiga. Não é à toa que o Vim é um dos editores mais
usados no mundo Unix tanto para tarefas relativamente simples como adicionar um novo
repositório ao APT como por programadores para o desenvolvimento e manutenção de softwares.
Mantido sobre a licença GPL e multiplataforma (*nix, Windows, Amiga, OS/2, Macintosh),
sua configurabilidade, elegância e leveza fazem dele uma ótima alternativa para substituir
bigornas como Eclipse, NetBeans, KDevelop, etc.
Instalação
Para instalar o Vim e a sua interface gráfica GVim (opcional), abra um terminal e execute os
seguintes comandos:
$ sudo apt-get update $ sudo apt-get install vim vim-gtk- gvim
Edição básica
Após a instalação abra-o a partir do terminal
$ gvim
ou do menu do Gnome e vamos agora aprender os principais conceitos sobre o Vim.
Porém, antes de começarmos, vou deixar claro uma coisa. Referenciarei teclas e combinações de teclas
com o seu nome entre parênteses, por exemplo: [Enter], [Esc], [Ctrl+L], [i], etc.
Modos de edição
O Vim conta com uma variedade de modos para facilitar a edição de textos. O modo atual
pode ser visualizado no lado esquerdo do rodapé da janela (os modos Normal e Comandos
não podem ser visualizados no rodapé). Os modos são:
- Normal
Este é o modo padrão de operação, ou seja, ao abrirmos o Vim, é nele que caímos.
Se você mudou para outro modo e deseja voltar ao normal, pressione [Esc] ou
[Ctrl+L].
- Insert
Aposto que você ficou de cara feia quando tentou editar algum texto no Vim e não conseguiu, não? =P
Provavelmente você não sabia que era necessário apertar [i] ou [a] para entrar no modo de edição.
- Visual
Neste modo nós podemos "simular" o mouse para selecionar linhas do texto e copiá-las, deletá-las, etc.
Existem três formas distintas com 3 propósitos também distintos de entrar no modo Visual: [v] para
seleção de caracteres, [V] para seleção de linhas inteiras e [Ctrl+V] para selecionar um bloco de texto.
- Comandos
Como o nome já diz, este modo permite emitir comandos (salvar, abrir, fechar, etc) para o Vim.
Para acessá-lo, entre no modo normal pressionando [Esc] e depois digite [:] seguido do comando (veremos
alguns comandos nas próximas partes do tutorial).
Arquivos
Agora que já conhecemos os diversos modos e como acessá-los, podemos realizar algumas operações básicas,
pressione [Esc] para entrar no modo Normal e experimente alguns comandos:
| Comando | Propósito |
|---|---|
| :e arquivo | Abre o arquivo. |
| :new arquivo | Abre um novo arquivo. |
| :w | Salva o arquivo. |
| :w arquivo.nome | Salva o arquivo com novo nome. |
| :saveas nome | Salva o arquivo com novo nome e muda para o novo arquivo. |
| :q | Fecha o programa ou fecha o arquivo atual se houver mais de um aberto. |
| :wq | Salva o arquivo e fecha-o. |
Adicionando uma exclamação na frente do comando, ele será forçado, por exemplo:
:q!
Movendo-se
O Vim conta com uma grande gama de operações e combinações de operações que permitem
ao usuário andar pelo documento. Todos eles devem ser realizados em modo Normal, portanto
pressione [Esc] antes. Os principais e mais usados, são as teclas que simulam as setas
do teclado:
| Tecla | Propósito |
|---|---|
| [h] | Move o cursor uma letra para trás. |
| [l] | Move o cursor uma letra para frente. |
| [k] | Move o cursor uma linha para cima. |
| [j] | Move o cursos uma linha para baixo. |
Pode parecer um pouco chato no começo, mas ajuda muito a economizar tempo, uma vez que não é
preciso mover a mão da parte ASCII do teclado.
Além dos citados acima, podemos ir para uma linha específica assim:
:n[Enter]
Onde n é o número da linha.
Mover-se para o inicio ou fim do arquivo/linha/palavra também é muito simples. Entre no modo
Normal antes e tente:
| Comando | Propósito |
|---|---|
| gg | Vai para o início do documento. |
| G | Vai para o final do documento. |
| 0 | Vai para o inicio da linha. |
| $ | Vai para o final da linha. |
| w | Vai para o inicio da próxima palavra. |
| e | Vai para o final da próxima palavra. |
| fx | Vai para a próxima ocorrência de x. |
| Fx | Vai para a ocorrência anterior de x. |
Recortar, Copiar e Colar
O Vim trabalha com um buffer para realizar operações como recortar, copiar ou colar. Ao recortar/deletar
trechos de código é para lá que ele vai, de modo que nós podemos recuperá-lo. As operações são:
| Comando | Propósito |
|---|---|
| dd | Deleta a linha atual. |
| 3dw | Deleta três palavras. |
| dG | Deleta até o final do arquivo. |
| yy | Copia a linha atual. |
| ygg | Copia da posição atual até o início do aquivo. |
Observe que eu usei combinações de operações. Experimente algumas combinações também, elas são de grande
importância.
Como eu disse antes, o Vim armazena as áreas deletadas/copiadas em um buffer. Para recuperar o conteúdo
da última deleção ou cópia de texto, utilize a tecla [p], criando assim um esquema para recortar, copiar
e colar texto.
Outra coisa importante é o modo Visual. Experimente entrar no modo Visual ([v]), mover o cursor algumas
linhas para baixo e copiar, recortar trechos selecionados. A única diferença é que no modo Visual basta
pressionar as teclas apenas 1 vez: [d] para deletar/recortar ou [y] para copiar.
Configuração
A principal característica do Vim é a sua alta configurabilidade. As configurações pessoais do Vim estão
centralizadas em um arquivo localizado na pasta pessoal de cada usuário chamado .vimrc e no arquivo de
configurações globais em /usr/share/vim/vimrc. O arquivo funciona como um script (uma sequência de comandos
que podem ser executados durante a execução do Vim, porém seria um completo regresso ter que digitar, por
exemplo, 20 comandos antes de começar a escrever seu texto) que é lido todas as vezes que o Vim é aberto.
A linguagem de "scripting" do Vim conta inclusive com estruturas/laços condicionais, funções, etc.
Um pequeno exemplo:
if has("gui_running")
set mouse=a
endif
A estrutura condicional acima diz: "se o Vim estiver rodando sobre algum gerenciador gráfico, habilite
as operações de manipulação de texto com o mouse".
Não vamos entrar muito afundo no assunto de configuração do Vim, pois para isso precisariamos de algumas
centenas a mais de texto. E como o tempo é curto, deixarei apenas um link para uma boa fonte de scripts e
dicas sobre configuração do Vim.
Posteriormente disponibizarei meu humilde vimrc junto de um script que encontrei no site acima que me permite
auto-completar texto através de palavras-chave. Uma verdadeira mão-na-roda para preguiçoso um aprendiz
de programação como eu. Além é claro de colorização, identação, "dobramento" de blocos de código-fonte,
navegador de arquivos e outras coisinhas mais que fazem do Vim uma verdadeira IDE.
Considerações Finais
O Vim apresenta um aprendizado muito difícil e até mesmo chato, porém a medida que você vai se acostumando
, entendendo e percebendo o ganho de produtividade, portabilidade e tempo em usar um editor como o Vim
a dificuldade passa e aprender passa a ser prazeroso.
Por enquanto é só. Espero que vocês tenham aprendido tanto quanto eu aprendi escrevendo este humilde artigo.
Obrigado a todos.
Abraços,
--Bife 01h49min de 13 de Junho de 2008 (UTC)



