Recherche…


Remarques

Un plugin est un script ou un ensemble de scripts qui modifie le comportement par défaut de Vim, soit en ajoutant des fonctionnalités non existantes, soit en étendant des fonctionnalités existantes.

Les «fonctionnalités non existantes» souvent ajoutées incluent:

  • commentant,
  • détection d'indentation,
  • auto-complétion,
  • correspondance floue
  • prise en charge d'une langue spécifique,
  • etc.

Les «fonctionnalités existantes» souvent étendues incluent:

  • omni-achèvement,
  • objets-texte et mouvements,
  • arracher et mettre,
  • ligne d'état,
  • rechercher et remplacer,
  • changement de page tampon / fenêtre / onglet,
  • pliant,
  • etc.

Comment fonctionnent les plugins

Un plugin peut se présenter sous la forme d'un fichier unique contenant 30 lignes de vimscript ou 20 Mo de vimscript / python / ruby ​​/ what divisé en plusieurs fichiers sur une douzaine de répertoires dépendant d'un certain nombre d'outils externes.

Le premier est évidemment facile à installer et à gérer, mais le second peut poser un véritable défi.

Le principe

L'option 'runtimepath' indique à Vim où rechercher les scripts d'exécution. La valeur par défaut fait que Vim recherche les scripts dans les répertoires suivants dans l'ordre :

  • sur des systèmes de type UNIX

    • $HOME/.vim/
    • $VIM/vimfiles/
    • $VIMRUNTIME/
    • $VIM/vimfiles/after/
    • $HOME/.vim/after/
  • sur Windows

    • $HOME/vimfiles/
    • $VIM/vimfiles/
    • $VIMRUNTIME/
    • $VIM/vimfiles/after/
    • $HOME/vimfiles/after/

Parmi les répertoires ci-dessus, installez uniquement les plug-ins dans ceux en gras. Les autres provoqueront l'instabilité sans raison valable. L'installation d'un plugin se résume à placer chacun de ses composants dans le bon répertoire sous $HOME/.vim/ ou $HOME/vimfiles/ .

La méthode manuelle

Plugin de fichier unique

Placez le fichier sous $HOME/.vim/plugin ou $HOME/vimfiles/plugin

Cela source le plugin au démarrage de Vim. Maintenant, l'utilisateur peut utiliser tout ce qui y est défini. Si le plug-in nécessite toutefois une activation, l'utilisateur doit soit exécuter la commande eux-mêmes chaque fois qu'ils le souhaitent, soit ajouter la commande à .vimrc

Paquet

Un bundle est une structure de répertoire utilisée par le plugin. Il comprend tous les fichiers du plugin sous les sous-répertoires appropriés.

Pour installer un tel plugin, les sous-répertoires doivent être fusionnés avec leurs homologues dans $HOME/.vim/plugin . Cette approche conduit cependant à mélanger les fichiers de différents plug-ins dans les mêmes répertoires et peut éventuellement entraîner des problèmes d'espace de noms.

Une autre approche consiste à copier le répertoire entier dans $HOME/.vim/bundle .

Lorsque vous utilisez cette approche, il devrait y avoir au moins un fichier .vim sous le répertoire $HOME/.vim/bundle/autoload . Ces fichiers seraient fournis par vim au démarrage.

Remarque: Selon le système d'exploitation de l'utilisateur, le préfixe de tous les chemins peut être $HOME/vimfiles . Pour plus de détails, voir Comment les plugins fonctionnent

VAM

https://github.com/MarcWeber/vim-addon-manager

Vundle

Vundle est un gestionnaire de plug-ins pour Vim.

Installation de Vundle

(Les détails complets de l'installation peuvent être trouvés dans le démarrage rapide de Vundle )

  1. Installez Git et clonez Vundle dans ~/.vim/bundle/Vundle.vim .

  2. Configurez les plug-ins en ajoutant les éléments suivants en haut de votre .vimrc , en ajoutant ou en supprimant des plug-ins si nécessaire (les plug-ins de la liste sont simplement .vimrc titre d'illustration)

     set nocompatible              " be iMproved, required
     filetype off                  " required
    
     " set the runtime path to include Vundle and initialize
     set rtp+=~/.vim/bundle/Vundle.vim
     call vundle#begin()
     " alternatively, pass a path where Vundle should install plugins
     "call vundle#begin('~/some/path/here')
    
     " let Vundle manage Vundle, required
     Plugin 'VundleVim/Vundle.vim'
    
     " All of your Plugins must be added before the following line
     call vundle#end()            " required
     filetype plugin indent on    " required
     " To ignore plugin indent changes, instead use:
     "filetype plugin on
    
     "place non-Plugin stuff after this line
    
  3. Installer les plugins: en lançant Vim et en exécutant :PluginInstall .

Formats de plugin pris en charge

Voici des exemples de différents formats pris en charge. Conservez les commandes du plug- vundle#begin entre vundle#begin et vundle#end .

Emplacement du plugin Usage
plugin sur GitHub Plugin 'tpope/vim-fugitive'
plugin de http://vim-scripts.org/vim/scripts.html Plugin 'L9'
Plugin Git non hébergé sur GitHub Plugin 'git://git.wincent.com/command-t.git'
git repos sur votre machine locale (par exemple lorsque vous travaillez sur votre propre plugin) Plugin 'file:///home/gmarik/path/to/plugin'
Le script vim sparkup se trouve dans un sous-répertoire de ce référentiel appelé vim. Passez le chemin pour définir le runtimepath correctement. Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
Installez L9 et évitez un conflit de nommage si vous avez déjà installé une version différente ailleurs. Plugin 'ascenator/L9', {'name': 'newL9'}

Travailler sur un compte partagé, par exemple, sur un nœud de tête de cluster peut générer des problèmes à partir du point d'utilisation du disque par le répertoire .vim . Il y a quelques paquets qui prennent une quantité considérable d'espace disque, par exemple YCM . Alors, choisissez Vundle votre Vundle plug- Vundle , et il est très facile de le faire en définissant rtp . Et si vous prévoyez d'installer un plug-in vim, ne faites pas directement git clone dans le répertoire bundle . Utilisez la méthode Vundle.

L'avenir: les forfaits

Voir :help packages .

Agent pathogène

vim-pathogen est un gestionnaire de runtimepath créé par Tim Pope pour faciliter l'installation de plugins et de fichiers d'exécution dans leurs propres répertoires privés.

Installation du pathogène

  1. Mettez le pathogène dans ~/.vim/bundle (ici avec Git, mais ce n'est pas obligatoire):

    git clone https://github.com/tpope/vim-pathogen.git
    
  2. Ajoutez les lignes suivantes en haut de votre .vimrc :

     " enable vim-pathogen
     runtime bundle/vim-pathogen/autoload/pathogen.vim
     execute pathogen#infect()
    
  • la directive runtime spécifie le chemin d'accès au script d'autoload de vim-pathogen ;
  • execute pathogen#infect() initie.

Une fois lancé, Pathogen lance automatiquement un balayage dans les dossiers de ~/.vim/bundle et charge le plug-in de chacun d'eux.

Utilisation de l'agent pathogène

  1. Placez le répertoire ~/.vim/bundle/ de votre plug-in dans ~/.vim/bundle/ pour le rendre disponible au prochain démarrage de Vim.
  2. Exécuter :Helptags pour indexer la documentation de votre nouveau plugin.

Avantages

  • Chaque plug-in réside dans son propre répertoire sous ~/.vim/bundle/ .
  • Votre .vimrc reste propre à la configuration nécessaire pour charger les plugins.

L'effort nécessaire pour "gérer" un plugin est ainsi réduit à:

  • mettre son répertoire de premier niveau sous ~/.vim/bundle/ pour l' installer ,
  • remplacer son répertoire de niveau supérieur pour le mettre à jour ,
  • supprimer son répertoire de niveau supérieur pour le désinstaller .

La manière dont vous effectuez ces trois actions (manuellement, via un outil d'automatisation, avec Git / Svn / Hg / quel que soit…) dépend entièrement de vous.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow