Autocompletando no vim + dicionário PHP
Nesse artigo sobre o vim, falei um pouco sobre a personalização do .vimrc, agora vamos adicionar um dicionário das funções php para que você consiga autocompletar suas funções como aqueles editores pesados como o phpeclipse faz, mas ao invés de usarmos o CTRL+espaço, vamos usar apenas o TAB.
- 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
Agora para tudo funcionar, basta inserir a linha abaixo no seu .vimrc:
1 2 3 | if has("autocmd")
autocmd FileType php set complete-=k/home/USUARIO/.vim/doc/funclist.txt complete+=k/home/USUARIO/.vim/doc/funclist.txt
endif |
Lembre de trocar USUARIO pelo seu usuário no sistema.
Pronto, se você fez tudo corretamente, faça um teste:
1 | vim teste.php |
1 2 3 | <?php eregi_re ?> |
deve ficar:
1 2 3 | <?php eregi_replace ?> |
T+
Popularity: 50%
E aí Renato!
Cara, tentei usar o vim com teu tutorial passado, mas achei estranho. Fundo preto e marcações com contraste péssimo. Isso tudo via SSH no meu servidor. É sempre assim ou faltou eu fazer algo pra melhorar a leitura?
Sobre este artigo, como nunca tinha usado o VIM, não soube como instalar os tais plugins.
De qualquer forma, continuo lá no Eclipse por enquanto. :)
Um abraço, cara.
Responder
Opa Daniel, tudo joia? Pois então, o uso do vim é assim mesmo, fundo preto e syntax colorida e só. Mas com o acrescimo dos plugins, cores (syntax) vc vai contando o editor de acordo com suas necessidades, faz um pesquisa no site: http://www.vim.org e veja a imensidão de opções de personalização que temos.
Qualquer dúvida estamos ai!
Responder
Bacana!!! Show de bola, então!
Responder
Daniel, vai acompanhando o blog que vou tentar publicar um artigo por dia e esses próximos creio que serão sobre o vim. Um abraço!
Responder
Daniel, podes tentar executar no vi
:set background=dark
Aqui melhorou o contraste das cores.
Não testei a dica, mas, funcionando, seria apenas trocar o arquivo “funclist.txt” para ter um auto-completar com outras linguagens, é isso?
Abraço!
Responder
Olá Rodolfo. sim, trocando o funclist.txt por outro arquivo com tags funcionará perfeitamente, aguarde o novo artigo explicando como utilizar o vim com o exuberant-ctags, vale a pena :-)
Responder
De qualquer maneira vocês podem tentar o Gvim
é mais indicado para usuários iniciantes, do que dar de cara logo com o Vim, assusta e faz parecer coisa de doido.. hehee
Responder
E ai cara, testei sua dica e consegui fazer funcionar diretinho no linux, mas no windows não rola não sei porque, vc poderia me esplicar como fazer isso no windows?
Vlw!
Responder
Creio que seja algum problema na chamada do arquivo funclist.txt. Já fiz o gvim no windows auto completar e funcionou perfeitamente. Verifique o caminho do arquivo :-)
Responder
Um passo além da complementação pura e simples é o recurso de snippets
veja um vídeo aqui: http://www.eustaquiorangel.com/posts/438
“SnippetsEmu provides expanding code snippets for Vim similar to those
found in the OS X editor TextMate”
Uma boa extensão para snippets chama-se snippetsEmu
e pode ser baixada aqui: http://www.vim.org/scripts/script.php?script_id=1318
mas como o código do snippetsEmu tem a extensão .vba você deve instalar
também a extensão vimball acessível aqui:
http://vim.sourceforge.net/scripts/script.php?script_id=1502
Responder
Você já viu snippets?
veja estes links:
* http://pt.wikibooks.org/wiki/Vim:_Complementando_c%C3%B3digos_com_snippets
* http://vivaotux.blogspot.com/2008/03/instalando-o-plugin-snippetsemu-no-vim.html
* http://code.google.com/p/snippetsemu
* http://ttyshare.com/rec/mopemope/3716682/
Responder