Eu estive analisando os diferentes gerenciadores de pacotes do vim e o que decidi usar o vim-plug, mas vi outros como patógenos e vundle e, sinceramente, não sei qual é a diferença.
Alguém pode me dar uma breve visão geral das diferenças para que eu possa decidir qual funciona melhor para mim?
plugin-managers
Abobrinha
fonte
fonte
Respostas:
O vim-plug é uma boa alternativa ao Vundle, ele faz as coisas um pouco diferentes do ponto de vista técnico, o que deve torná-lo mais rápido ( veja isso ). Possui a maioria (ou todos?) Dos recursos do Vundle.
+ruby
,+python
ou Neovim. Volta ao modo seqüencial usando o Vimscript se nenhum estiver disponível.Para começar a usá-lo:
E no seu vimrc:
Então dê o comando
para instalar os plugins listados.
fonte
:PlugInstall
em um novo plugin; até os documentos oficiais obscurecem isso um pouco...\vim81\autoload\..
e não..\.vim\autoload\..
.O patógeno é simples. Essencialmente, ele apenas faz:
Prós:
Contras:
Para instalá-lo, faça o download
pathogen.vim
para~/.vim/autoload
:E adicione ao seu
.vimrc
:Se você não gosta de ficar louco, ligue apenas
:Helptags
quando precisar.Os plugins são então adicionados a
~/vim/bundle
.fonte
Vundle é mais complexo. É um gerenciador de pacotes à la
apt
ouyum
para plugins. Pode:Para instalar:
E depois adicione ao seu
.vimrc
:Para instalar um plug-in, use o
Plugin
comando em.vimrc
(mais exemplos no Github README):E depois ligue
:PluginInstall
de.vim
(ouvim +PluginInstall +qall
).fonte
dein.vim : Como acompanhamento desta questão , adicionarei aqui o gerenciador de plugins criado pelo conhecido Shougo.
De acordo com o README, o plug-in tem as seguintes dependências:
Vim >7.4 or neovim
: embora seja bom manter o Vim atualizado, pode ser problemático para alguns usuários que as versões anteriores não sejam suportadasgit
: o que é bastante comum para um gerenciador de pacotesrsync
: o que não é tão comum quanto o gitO autor afirma que é mais rápido que o NeoBundle. Uma referência pode ser encontrada na página leia-me do projeto .
Um conceito original deste gerente plugin é que ele não fornece quaisquer comandos, mas apenas funções: por exemplo, para atualizar seus plugins que você não pode usar algo como
:PlugUpdate
, você tem que chamar::call dein#update()
. Para ser sincero, não encontrei uma explicação dessa opção de design.Além disso, alguém criou um plugin que fornece esses comandos "ausentes". Não tenho idéia se essa é uma boa ideia ou se é contrária à idéia principal do gerenciador de plugins, mas o autor menciona isso nas perguntas frequentes do arquivo doc.
O Dein.vim suporta a obtenção de plugins do Github (com acesso facilitado aos plugins do vimscript.org) e de diretórios locais.
O gerenciador de plugins fornece alguns recursos clássicos, como atualizar e desativar os plugins. Também permite a execução de ganchos no momento da instalação.
Observe que, de acordo com as Perguntas frequentes, parece que você precisa criar manualmente as helptags dos plug-ins instalados.
Um ponto interessante é que o autor deseja que o dein.vim seja fácil de testar e manter, para que o repositório também contenha alguns scripts de teste.
Finalmente, eu diria que esse gerenciador de plugins parece ter sido projetado para ser leve e rápido, o que é interessante, mas acho que é menos fácil de usar do que o vim-plug ou o Vundle , por exemplo.
Ah, também, Shougo descreve o dein.vim como um "gerenciador de plugins Vim / Neovim com alimentação escura" se alguém souber o que significa, fique à vontade para editar esta resposta: Estou curioso ;-)
fonte
O Vim 8.0 e o Neovim têm seu próprio gerenciador de pacotes embutido. No Vim 8.0, crie os seguintes diretórios:,
.vim/pack/*/start
onde*
está qualquer nome que você deseja usar; por exemplo.vim/pack/jimmy/start
.Clone seu plug-in no diretório inicial da mesma maneira que faria se estivesse usando patógeno.
Com o Neovim, os diretórios são um pouco mais demorados:
.local/share/nvim/site/pack/*/start
. A partir daí, faça o mesmo que para o Vim.Não há necessidade de outro gerenciador de plugins.
No Vim ou Neovim, corra
:h packages
para um pouco mais de detalhes. Leia a parte sobre cores porque elas são diferentes, embora não muito. Você não precisa de instruções extras em.vimrc
seusnvim/init.vim
arquivos.Espero que ajude.
fonte
Gosto especialmente do VAM por sua auto-implantação: tudo que você precisa é seu
.vimrc
e, em seguida, inicie o vim.Portanto, você não precisa da
To Install
linha usada pela maioria dos outros gerenciadores de plugins (a primeira etapa da instalação do gerenciador de plugins).fonte
No que me diz respeito, quero o gerenciador de plugins que uso para suportar dependências.
As razões são que eu estou mantendo vários plugins e tenho muitas interdependências: uma biblioteca genérica é usada por todos, o mecanismo de template / snippet é usado pelo pacote C ++, o plug-in de refatoração também usa o ctags library-plugin , e assim por diante. Exigir que o usuário final execute até 10 linhas para instalar os plugins nos quais está interessado não me parece uma boa solução.
Até agora, só conheço dois desses plugins: vim-addon-manager e NeoBundle . O VAM bifurcou seu código de banco de dados para o vim-pi após muitas trocas na lista de discussão oficial do vim. A idéia era que o NeoBundle (e qualquer outro plugin interessado em gerenciar dependências) pudesse eventualmente explorar o vim-pi.
Recentemente, deparei com vim-flavor, que também lida com dependências. No assunto, ele verifica as versões do plugin para instalar o correto.
Nota: Desde a minha resposta inicial,
AFAIK, nenhum desses plugins clona / instala / atualiza plugins em segundo plano / paralelo. Como não instalo um novo ambiente vim, nem atualizo os plugins que instalei uma vez por mês, sinceramente, não me importo. É claro que eles atualizam
'helptags'
, cuidam'rtp'
e assim por diante.fonte
vim-plug
O LEIA-ME de exemplo mostra "Dependências de grupo". Você já tentou isso ou difere dos métodos do VAM / NeoBundle?A maioria desses gerenciadores de plug-ins faz um ótimo trabalho no gerenciamento de plug-ins, mas deixa a dor de cabeça ao gerenciar o aplicativo
vimrc
. Se você possui várias máquinas e deseja a mesma configuração, o Vire facilita bastante . Você não precisa de git ou descobrir sub-módulos ou qualquer esforço extra para configurar ou migrar.pip install vire
vimrc
no Github como uma essência e mantenha-o lávire -i
para instalar o Vim mais recente ou (Neovim com-i -n
)" Plug 'tpope/vim-unimpaired'
vire gistID
Em seguida, execute
vire
sempre que desejar que seusvimrc
ou plug-ins sejam atualizados ou com-i
a atualização do aplicativo.O Vire aproveita o
pack
recurso do Vim / Neovim para carregar plugins. Você também pode continuar usando o gerenciador de plugins existente, mas use o Vire para instalar apenas o Vim, oe ovimrc
próprio gerenciador de plugins, se preferir.fonte
Para pessoas que desejam um gerenciador de plugins completo usando o Pathogen, também existe o apt-vim. Você pode instalá-lo com
curl -sL https://raw.githubusercontent.com/egalpin/apt-vim/master/install.sh | sh
(como descrito aqui: https://www.linuxsecrets.com/1715-vi-editor-tips-trick-and-secrets-into-the-vi-vim-editor-part-ii ). Uma vez instalado, você pode simplesmente digitarapt-vim install
seguido pelo nome do repositório de pacotes, semelhante ao gerenciador de pacotes apt do Ubuntu.fonte
curl URL |sh
. Eu nunca sugeriria que alguém executasse algum código aleatório da Internet. Realmente isso é um mau hábito de segurança.Eu estava procurando uma maneira de usar,
pathogen
mas atualizá-la facilmente e torná-lo portátil, então talvez umbash
script possa ser útil (usando avim-plug
funcionalidade) -E então um exemplo
.vimrc.bundle
-fonte