17 de dezembro de 2008

Autocompletar no VIM

Vi um post no blog do Renato Carvalho[1] e achei muito útil, para que programa isso é uma maravilha, então eu vou colocar este tutorial aqui, mas com algumas modificações.

O autocompletar é um método que funciona da seguinte maneira: você digita parte do nome de uma função de uma linguagem e, ao apertar uma tecla específica, o editor que você está utilizando, se ele possuir esta opção implementada, irá lhe mostrar uma lista com funções que são parecidas com o que você digitou.

No VIM esta opção não vem implementada e para implementá-la você deve fazer o seguinte, utilizando como exemplo o PHP:

Crie os diretórios para plugin e doc no ~/.vim/:

$ mkdir -p ~/.vim/doc

$ mkdir -p ~/.vim/plugin


Baixe e instale o plugin para o vim SuperTab.

Baixe a lista das funções php do site do Lerdorf e salve em ~/.vim/doc como php-funclist.txt

Insira a linha abaixo no arquivo /etc/vim/vimrc para que tenha efeito em todos os usuários:
if has("autocmd")
autocmd FileType php set complete-=k/home/$USER/.vim/doc/php-funclist.txt complete+=k/home/$USER/.vim/doc/php-funclist.txt
endif


Você pode trocar o nome do arquivo com a lista de funções para o nome que você quiser, eu aconselho que você coloque algo relacionado com o nome da linguagem a qual a lista de funções pertence, no caso deste tutorial, o PHP.

Agora você pode testar:
No terminal digite:
$ vim teste.php

No arquivo faça o teste:

< ?php
eregi_re
?>

Pressione a tecla TAB e veja o resultado:

< ?php
eregi_replace
?>


Pronto! Isso pode ser feito para outras linguagens, desde que você possua a lista com as funções e insira uma nova linha no /etc/vim/vimrc fazendo as devidas modificações.

[1] - http://www.renatocarvalho.net/autocompletando-no-vim-dicionario-php.html

Créditos a Renato Carvalho, com algumas modificações feitas por mim.

Nenhum comentário: