Então, minha pergunta é simples. É uma boa idéia aprender scripts do vim apenas para criar o vim ou devemos adotar outras linguagens mais aceitas para isso.
Por exemplo, este link abre vídeos do YouTube que mostram Como usar o Python para criar plugins do vim.
Os scripts do Vim não são totalmente úteis, a menos que se pretenda criar alguns plugins do vim. Então, existe algo em particular que não pode ser feito, a menos que os scripts vim sejam usados apenas?
Respostas:
Meus plugins são 99% no VimL. O motivo é que o VimL está disponível onde o vim está instalado. É muito mais complicado com outras linguagens - por exemplo, é raro ter o Python instalado nas caixas de janelas onde uso o Vim.
É claro que o VimL é complicado, faltam muitos recursos interessantes, mas pelo menos é mais fácil ter algo portátil.
O 1% que não está no VimL é quando eu preciso interagir com a API externa, que oferece ligações python.
BTW, quase tudo que você aprende sobre o VimL pode ser usado interativamente quando você joga com comandos como
:substitute
. A maioria dos mapeamentos ou macros também não precisa de python.fonte
map()
que espera strings ou (o não relacionado):map
. Muitas vezes eu tenho de jogar com / em torno de avaliação corda para chegar a minhas extremidades, como a geração de mapeamentos ou processamento de lista de chamadas de função, ...exec
recebendo trechos do VimL de qualquer maneira. Ele permite que você escreva sua lógica principal em uma linguagem na qual possa trabalhar com muito mais eficiência, mas você ainda precisa aprender o VimL.Se você pretende escrever plugins, deve ler definitivamente o belo artigo "Writing Vim Plugins", de Steve Losh ; não apenas para decidir se você continuará com o VimL ou não, mas também para os conselhos de melhores práticas.
Ele também contém uma pequena discussão sobre o Scripting Vim com outros idiomas :
Minha experiência é que, mesmo quando um plug-in não-VimL é melhor, acabo mudando para uma alternativa pura do VimL posteriormente, principalmente por causa da portabilidade. O Vim roda em praticamente qualquer sistema (mesmo sistemas antigos e feios), e a sobrecarga de configurar dependências ou desativar temporariamente esse plug-in não vale a pena (especialmente se você esquecer que o desativou e tentar usar seus mapeamentos / comandos) .
Mesmo quando é mais fácil configurar as dependências, você pode encontrar alguns problemas (por exemplo: alguns plugins baseados em python não funcionam 100% quando originados de pastas compartilhadas em máquinas virtuais). É por isso que os poucos plugins que escrevi usam apenas o VimL.
fonte