Risposte:
Per installare un plugin, dobbiamo sapere in che forma si trova. Può essere:
.vim
fileplugin/*
, syntax/*
, ecc) ( Che cosa rende un plugin Vundle compatibile e sono altri gestori di plugin intercambiabili? )Un singolo .vim
file dovrebbe essere inserito nella .vim/plugin
directory.
Un file Vimball può essere installato aprendolo in Vim ed eseguendolo :source %
.
È possibile installare un set di file nel layout di directory standard copiandoli .vim
o utilizzando un gestore di pacchetti plug-in .
I plugin possono dipendere da alcune funzionalità. Perciò:
Per la maggior parte dei plugin, tuttavia, potrebbe non avere importanza.
Mi piace usare il gestore plug-in vim-plug .
Il problema con l'installazione manuale di un plugin è che è piuttosto difficile rimuovere un plugin; spesso hai diversi file in diverse directory, devi trovarli manualmente e rimuoverli.
L'aggiornamento dei problemi è altrettanto difficile: cosa succede se autoload/old-name.vim
viene rinominato autoload/new-name.vim
? Ora avete sia un vecchio e la nuova versione di un plugin.
vim-plug
risolve questo problema memorizzando ogni plugin nella propria directory; include anche il comando per installare / rimuovere facilmente un plug-in, quindi non devi preoccuparti di decomprimere plug-in e simili.
Un vantaggio chiave di vim-plug su Pathogen è che vim-plug consente di installare e rimuovere plug-in più facilmente. Tutto ciò che Pathogen fa è consentire a ciascun plugin di trovarsi in una directory separata separata.
vim-plug si basa su git ; per MS Windows, vuoi msysgit .
Puoi definire plugin nel tuo vimrc in questo modo:
call plug#begin('~/.vim/plugged')
" For MS Windows, this is probably better:
"call plug#begin('~/vimfiles/plugged')
Plug 'embear/vim-localvimrc'
Plug 'kchmck/vim-coffee-script'
" ... etc
call plug#end()
Quindi riavviare Vim e quindi installare i plug-in con:
:PlugInstall
Questo inserirà i plugin in ~/.vim/plugged
o $HOME\vimfiles\plugged
per MS Windows.
Puoi aggiungere
questo snippet dalle FAQ al tuo file vimrc prima della plug#begin()
chiamata:
if empty(glob('~/.vim/autoload/plug.vim'))
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
autocmd VimEnter * PlugInstall
endif
Nota che è necessario curl
che funzioni. Questo è quasi sempre disponibile su Linux e OSX, ma non su MS Windows; quindi questo trucco non funzionerà lì ...
Per rimuovere un plug-in, rimuoverlo dal file vimrc ed eseguire:
:PlugClean
Si noti che vim-plug non supporta l'installazione di script dal sito Web degli script Vim, ma tali script sono riprodotti su GitHub , quindi non è necessario farlo.
Ci sono anche alcuni vantaggi aggiuntivi come l'aggiornamento più semplice del plugin e il caricamento su richiesta per prestazioni migliori. Puoi anche copiare facilmente il tuo vimrc su un altro computer, eseguirlo :PlugInstall
e avere tutti i tuoi plugin.
Nota che ci sono più gestori di plugin; Mi capita di usare vim-plug
. Vedi anche: Qual è la differenza tra i gestori di pacchetti vim?
Pathogen è un gestore di percorsi di runtime, che carica plugin all'interno di Vim. Rende semplice l'installazione dei plugin; Ecco come funziona:
nota: se si utilizza Windows, sostituirlo ~/.vim
con $HOME\vimfiles
.
Copia pathogen.vim
in ~/.vim/autoload/pathogen.vim
.
Crea la ~/.vim/bundle
directory, se non esiste già.
Aggiungi la seguente riga all'inizio del tuo .vimrc
:
execute pathogen#infect()
Hai finito! Quando vuoi aggiungere un plugin, copia semplicemente l'intera directory del plugin ~/.vim/bundle
o git clone
lì. Per esempio:
cd ~/.vim/bundle
git clone https://github.com/tpope/vim-surround
* Avvertenza: se il tuo plugin ha la forma di un .vim
file, non funzionerà con Pathogen. Copiarlo ~/.vim/plugin
invece (potrebbe essere necessario creare questa directory se non esiste).
git submodule add
(invece di git clone
) se la tua configurazione di vim fa già parte del tuo progetto git.
runtimepath
opzione e questo è tutto. Non si occupa di aggiornare, aggiungere, recuperare, rimuovere plug-in.
La versione 8 introduce un nuovo meccanismo di pacchetti che sostituisce ampiamente la necessità dei gestori di plugin esistenti (patogeno, vim-plug, vundle, ecc.) Al momento della stesura (2017).
Dalla documentazione :
Un pacchetto Vim è una directory che contiene uno o più plugin
Una directory del pacchetto contiene due sottodirectory:
start/
- contiene plugin che verranno caricati automaticamenteopt/
- contiene plugin caricati su richiesta con :packadd
Può sembrare un po 'complicato, ma in pratica tutto ciò che devi fare è aggiungere il tuo plugin qui :
↓ package name
~/ .vim / pack / bundle / start / some-plugin
↑ packages dir ↑ plugin dir
Su Windows : utilizzare ~\vimfiles\pack\
invece di~/.vim/pack/
Per convenzione, abbiamo usato il nome del pacchetto "bundle" come directory che conterrà tutti i nostri plugin. Puoi usare qualsiasi nome tu voglia, e puoi anche mettere i tuoi plugin in directory di pacchetti separate se vuoi davvero.
mkdir -p ~/.vim/pack/bundle/start
cd ~/.vim/pack/bundle/start
git clone https://github.com/tpope/vim-sensible.git
Su Windows : utilizzare ~\vimfiles\pack\
invece di~/.vim/pack/
Al prossimo avvio di Vim, il plug-in verrà caricato automaticamente.
.vim
è sotto il controllo della versione, potrebbe essere meglio installare plugin con i sottomoduli di git; vedi shapeshed.com/vim-packages/#adding-a-package .
Non dimentichiamo il grande e potente Vundle !
Vundle è un gestore di plugin completo, con funzionalità per:
:PluginSearch
):PluginInstall
):PluginUpdate
):PluginClean
)Come puoi vedere, è molto simile al gestore di plug-in-vim menzionato da Carpetsmoker. Non so quale sia arrivato per primo, ma le loro API sembrano molto simili a me, così come il processo di installazione .
.vimrc
, quindi quando installi su un nuovo server tutto ciò che ti serve è un'installazione Vundle + la tua .vimrc
per installare tutto. Inoltre puoi commentare i tuoi plugin e 'pulirli', ma essere in grado di commentarli dopo mesi o anni quando hai dimenticato a lungo i loro nomi.
Molto probabilmente, il tuo plugin sarà un singolo file .vim.
Se questo è il caso, ho cercato l'aiuto e ho sperimentato e capito quanto segue. Dall'interno di vim (modalità comando), digitare:
:set runtimepath
Questo ti mostrerà una serie di directory. Alcune di queste directory avranno una plugin
sottodirectory. Mettere qualsiasi file .vim in una di queste plugin
sottodirectory lo caricherà automaticamente quando avvierai vim da qualsiasi luogo.
Per me, su Ubuntu Linux, ho scoperto che ha /usr/share/vim/vim74/plugin
funzionato bene, da installare per tutti gli utenti. Potrebbe essere necessario il permesso di root per copiare un file qui (prefisso il tuo cp
o il mv
comando con sudo
).
vim74
, il che significa che è specifico della versione, quindi l'aggiornamento a Vim 8.0, perderà quel plugin. Un modo più a prova di upgrade sarebbe quello di usarlo /etc/vim/
(crearlo se non presente e aggiungere quel percorso runtimepath
se non disponibile in /etc/vimrc
)
Most likely, your plugin will be a single .vim file
non sono d'accordo. La stragrande maggioranza dei plugin viene fornito con un .txt
file contenente il documento ed è necessario generare i tag per ottenere un documento funzionale. Inoltre molti plugin hanno una autoload
directory. Penso che l'uso di un gestore di plugin sia una soluzione migliore rispetto alla gestione manuale di runtimepath
/usr/share/vim/vimXX
è lo stock runtime e non è il luogo per la configurazione del sito / plugin. Invece, i config / plug-in del sito dovrebbero essere posizionati ovunque $VIM
punti su quel sistema (vedi :h vimfiles
). Di solito, questo è /usr/share/vim
il caso di Ubuntu e contiene collegamenti simbolici a /etc/vim
. In generale, /usr/local/
è il luogo di fatto per la configurazione del sito al di fuori del gestore pacchetti . Nota che Neovim fa uso di $XDG_(CONFIG|DATA)_DIRS
e site
directory, fornendo migliori impostazioni predefinite per le configurazioni del sito.
Vire sfrutta l'ultimo formato di pacchetto per installare plug-in e supporta Vim e Neovim. Non hai bisogno di sapere dove va tutto. Basta fornire un vimrc e Vire si prenderà cura di tutto il resto.
vi
su qualsiasi casella moderna probabilmente si avvierà solovim
con alcune funzionalità disattivate. Dubito che molte persone abbiano accesso al Vi attuale in questi giorni.