Recherche sur le site Web

Comment utiliser Vundle pour gérer les plugins Vim sur un VPS Linux


Introduction

L'éditeur de texte vim est un outil polyvalent et extrêmement puissant pour manipuler du texte brut, gérer les fichiers de configuration système et créer du code. Bien que l'accent mis sur la conception de l'édition modale et la grammaire élégante de l'éditeur lui-même soient appréciés par ses utilisateurs, son interface et ses fonctionnalités manquent parfois des subtilités que certains utilisateurs souhaiteraient.

Heureusement, vim inclut également un système de plugin, ou script, qui peut être utilisé pour étendre l'éditeur de diverses manières. Ceux-ci sont implémentés sous forme de simples fichiers de configuration stockés dans des sous-répertoires du répertoire ~.vim en fonction de leur fonction. Au fur et à mesure que vous ajoutez des plugins, ceux-ci peuvent devenir assez compliqués et il peut être difficile de séparer ces plugins et de les gérer efficacement.

Pour cette raison, de nombreux gestionnaires de plugins ont été créés pour vim afin de simplifier cette tâche. Le gestionnaire de plugins dont nous parlerons dans ce guide, appelé vundle, est incroyablement utile pour garder tous ces éléments en ligne.

Nous explorerons comment utiliser vundle sur une instance Ubuntu 12.04 VPS. Cependant, la plupart des distributions devraient pouvoir utiliser ces instructions sans trop de travail supplémentaire.

Installez le logiciel utilitaire

Avant de pouvoir commencer à explorer comment utiliser vundle pour gérer les plugins vim, nous devons installer tous les composants nécessaires.

Tout d'abord, nous devons mettre à jour notre index de paquets local, puis nous devons nous assurer que vim est installé (ce serait utile !) et que git est disponible pour acquérir des paquets supplémentaires. composants :

sudo apt-get update
sudo apt-get install vim git

Maintenant que vim et git sont installés (vous avez probablement déjà installé vim si vous lisez cet article), nous allons faire une pause momentanée. avant d'installer vundle pour parler du fonctionnement traditionnel des plugins et de la façon dont vundle fonctionne pour les gérer.

Comment fonctionne Vundle ?

Traditionnellement, vim est configuré pour chaque utilisateur dans le répertoire personnel de chaque utilisateur, avec des valeurs par défaut de secours configurées par l'administrateur système et enfin par le logiciel lui-même. Ces paramètres personnels sont stockés dans un fichier caché appelé ~/.vimrc.

Les plugins et les fichiers de configuration supplémentaires qui ajoutent des fonctionnalités sont classiquement ajoutés dans un répertoire caché sous ~/.vim. À l’intérieur, la plupart des plugins sont organisés en sous-répertoires en fonction des fonctionnalités qu’ils fournissent. Il peut s'agir de choses comme autoload, plugin, colors, etc.

Donc, si vous utilisez le système de plugins vim intégré, votre répertoire personnel pourrait ressembler un peu à ceci :

ls -AR ~
/home/demouser:
.bash_history  .bash_logout  .bashrc  .profile  .vim  .vimrc

/home/demouser/.vim:
autoload  bitmaps  colors  doc  plugin  syntax

/home/demouser/.vim/autoload:
plugin1.vim  plugin2.vim

/home/demouser/.vim/bitmaps:
plugin1.png

/home/demouser/.vim/colors:
plugin2.vim

/home/demouser/.vim/doc:
plugin1.txt  plugin2.txt

/home/demouser/.vim/plugin:
plugin1.vim

/home/demouser/.vim/syntax:
plugin1.vim

L'outil vundle est en fait construit sur un gestionnaire de plugins différent appelé pathogen et fournit un surensemble de fonctionnalités. Le gestionnaire pathogen simplifie la gestion des plugins en créant une arborescence de répertoires de plugins distincte pour chaque plugin individuel.

Cela signifie que plutôt que de laisser chaque plugin jeter différents fichiers dans différents répertoires, en les mélangeant avec d'autres plugins, chaque plugin recréera plutôt la structure de répertoires nécessaire à l'intérieur d'un sous-répertoire spécifique au plugin.

Ceux-ci sont conservés dans un sous-répertoire appelé bundle. Votre structure de répertoires ressemblerait plutôt à ceci :

ls -AR ~
justin@vundle:~$ ls -AR ~
/home/justin:
.bash_history  .bash_logout  .bashrc  .profile  .vim  .vimrc

/home/justin/.vim:
autoload  bundle

/home/justin/.vim/autoload:
plugin1.vim  plugin2.vim

/home/justin/.vim/bundle:
plugin1  plugin2

/home/justin/.vim/bundle/plugin1:
autoload  bitmaps  doc  plugin  syntax

/home/justin/.vim/bundle/plugin1/autoload:
plugin1.vim

/home/justin/.vim/bundle/plugin1/bitmaps:
plugin1.png

. . .

Cela crée un système d’imbrication plus profond, mais cela nous permet de gérer facilement nos plugins comme une unité. Si nous ne voulons plus utiliser « plugin1 », nous pouvons simplement faire quelque chose comme ceci :

rm -rf ~/.vim/bundle/plugin1

Cela simplifie grandement notre schéma de gestion. C'est essentiellement ce qu'accomplit pathogène.

Ce que fait vundle, c'est ajouter une interface de gestion à l'intérieur de vim lui-même qui vous permet d'acquérir plus de plugins, de mettre à jour les plugins, etc. Il ajoute la partie « gestion » en plus de ce que certains les gens diraient que c'est l'amélioration de l'organisation de pathogène.

Commencez à nettoyer et installer Vundle

Maintenant que vous comprenez un peu comment fonctionne le système vundle sous-jacent, nous pouvons commencer.

Tout d'abord, si vous disposez d'un fichier ~/.vimrc actuel et d'un répertoire ~/.vim, nous allons les sauvegarder et repartir à zéro. Cela nous aidera à minimiser les incompatibilités et les problèmes potentiels :

if [ -e .vimrc ]; then mv .vimrc .vimrc_bak; fi
if [ -e .vim ]; then mv .vim .vim_bak; fi

Ensuite, nous pouvons cloner le plugin vundle directement depuis GitHub, ce qui recréera une partie de notre structure de répertoires ~/.vim :

git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

Ensuite, nous devrons recréer notre fichier ~/.vimrc pour indiquer à vim d'utiliser notre nouveau système de gestion de paquets.

vim ~/.vimrc

À l’intérieur, nous avons besoin de quelques éléments pour démarrer. Tout d'abord, nous devons nous assurer que vim ne tente pas de conserver la compatibilité avec vi, son prédécesseur. Il s'agit d'une exigence vundle. Lorsque vim tente d'être compatible, il désactive la plupart des fonctionnalités qui valent la peine d'être utilisées sur vi.

Nous souhaitons également désactiver les contrôles « filetype » par défaut pour l'instant car la façon dont vim met en cache les règles de type de fichier au moment de l'exécution interfère avec la façon dont vundle modifie l'environnement d'exécution. Nous modifierons cela plus tard :

set nocompatible
filetype off

Ensuite, nous devrons ajuster le chemin d'exécution de vim pour inclure l'emplacement vundle que nous avons cloné depuis GitHub. Après cela, nous appellerons la fonction d'initialisation vundle :

définir non compatible type de fichier désactivé set rtp+=~/.vim/bundle/vundle/ appeler vundle#rc()

Maintenant, notre système vundle est initialisé et nous pouvons ajouter les plugins que nous souhaitons gérer. Bien que vundle puisse gérer les plugins locaux, l'un de ses points forts est la possibilité de lier les versions locales aux versions en ligne, ce qui vous permet d'effectuer des mises à jour automatiques, etc.

Nous pouvons le faire en pointant vers les référentiels GitHub, les scripts vim, d'autres référentiels git distants et les référentiels git locaux.

Tout d'abord, nous devons gérer le package vundle lui-même avec vundle. Ensuite, nous pouvons ajouter les plugins supplémentaires que nous souhaitons :

définir non compatible type de fichier désactivé définir rtp+=~/.vim/bundle/vundle/ appelle vundle#rc()

" Il s'agit du package Vundle, disponible sur GitHub. " Pour les dépôts GitHub, vous spécifiez les plugins en utilisant le " Format 'utilisateur/référentiel' Plugin 'gmarik/vundle'

" On pourrait aussi ajouter des dépôts avec une extension « .git » Plugin 'scrooloose/nerdtree.git'

" Pour obtenir des plugins de Vim Scripts, vous pouvez référencer le plugin " par son nom tel qu'il apparaît sur le site Plugin 'Buffergator'

" Nous pouvons désormais réactiver notre fonctionnalité de type de fichier retrait du plugin de type de fichier sur

Remarquez comment à la fin, nous rétablissons la fonctionnalité « filetype » que nous avions précédemment activée. Tous les plugins doivent être déclarés entre la ligne call vundle#rc() et la directive filetype plugin indent on.

Après cette section de notre ~/.vimrc, nous pouvons ajouter tous les paramètres vim supplémentaires dont nous avons besoin.

Lorsque vous avez terminé, enregistrez et fermez le fichier (« :wq » ou « ZZ »).

Installer et mettre à jour les plugins avec Vundle

Il ne nous reste plus qu'à dire à vundle d'installer tous les plugins que nous avons ajoutés au fichier. Démarrez vim :

vim

Maintenant, exécutez la commande :PluginInstall :

:PluginInstall

Cela ouvrira une nouvelle fenêtre divisée dans vim et exécutera l'installation de chacun des nouveaux plugins. Une fois terminé, vous pouvez fermer le nouveau tampon et la nouvelle fenêtre en tapant :

:bdelete

Les plugins que vous avez ajoutés à votre fichier ~/.vimrc sont maintenant installés !

Si vous souhaitez mettre à jour vos plugins, vous pouvez utiliser l'une de ces deux commandes :

:PluginUpdate

Ou

:PluginInstall!

Le "! " à la fin de la commande :PluginInstall! indique essentiellement à vundle de réinstaller tous les plugins (il vérifie si une action est nécessaire), ce qui obtiendra les versions les plus récentes.

Après une mise à jour, vous pouvez voir quels plugins ont été réellement affectés en tapant « u » dans la fenêtre du plugin vundle. Si vous souhaitez voir un journal complet des opérations qui ont eu lieu lors d'une mise à jour ou d'une installation, tapez « l » pour afficher le journal complet.

Gérer les plugins avec Vundle

Maintenant que vous savez comment installer les plugins, passons en revue d'autres fonctionnalités qui peuvent vous aider à tirer le meilleur parti de vundle.

Acquérir de nouveaux plugins

L'une des fonctions les plus utiles de vundle est la possibilité de rechercher et d'installer plus de plugins.

Nous pouvons lister tous les plugins que vundle peut trouver sur le site Vim Scripts en tapant :

:Plugins

Ou

:PluginSearch!

Le "! " à la fin de la commande actualise la liste locale du site Vim Scripts.

Si nous voulons rechercher un plugin spécifique, nous pouvons utiliser cette même syntaxe comme celle-ci :

:PluginRecherche ! plugin_query

Cela ouvrira une nouvelle fenêtre avec les résultats de notre requête. Si vous avez récemment actualisé la base de données locale, vous pouvez laisser de côté le « ! » de la commande. Donc, si vous recherchez « markdown », vous pouvez obtenir quelque chose comme ceci :

PluginSearch markdown
"Keymap: i - Install plugin; c - Cleanup; s - Search; R - Reload list
"Search results for: markdown
Plugin 'instant-markdown.vim'
Plugin 'MarkdownFootnotes'
Plugin 'Markdown'
Plugin 'Markdown-syntax'

Comme vous pouvez le voir en haut, vous pouvez facilement installer n'importe lequel des plugins en vous déplaçant vers la ligne avec le plugin et en tapant « i ».

Cela téléchargera et installera le plugin, mais cela ne mettra pas à jour votre ~/.vimrc pour qu'il se charge automatiquement correctement.

Ainsi, pour installer le plugin « MarkdownFootnotes », nous déplacerions notre curseur sur cette ligne en appuyant sur « i » :

"Keymap : i - Installer le plugin ; c - Nettoyage ; s - Rechercher ; R - Recharger la liste "Résultats de recherche pour : démarque Plugin 'instant-markdown.vim' Plugin 'MarkdownFootnotes' # déplacez-vous ici et appuyez sur "i" Plugin « Markdown » Plugin « Syntaxe Markdown »

Vous pouvez supprimer le tampon vundle une fois l'installation terminée :

:bdelete

Ensuite, éditez votre ~/.vimrc en tapant :

:e ~/.vimrc

Ajoutez la nouvelle ligne du plugin :

définir non compatible type de fichier désactivé définir rtp+=~/.vim/bundle/vundle/ appelle vundle#rc()

Plugin 'gmarik/vundle'

Plugin 'scrooloose/nerdtree.git'

Plugin « Buffergator »

Plugin 'MarkdownFootnotes'

retrait du plugin de type de fichier sur

Vous pouvez enregistrer et fermer le fichier à ce stade.

Gestion des plugins installés

Une fois certains plugins installés, vous pouvez les gérer avec vundle.

Pour voir tous vos plugins installés, tapez ceci :

:PluginList
" My Plugins
Plugin 'gmarik/vundle'
Plugin 'scrooloose/nerdtree.git'
Plugin 'Buffergator'
Plugin 'MarkdownFootnotes'

Si vous devez supprimer un plugin, cela doit être effectué en deux étapes.

Vous pouvez supprimer les fichiers du plugin en les listant, puis en appuyant sur la touche « D » lorsque votre curseur est sur le plugin que vous souhaitez supprimer. Donc pour supprimer notre plugin « MarkdownFootnotes », on peut le sélectionner et appuyer sur « D » :

" Mes plugins Plugin 'gmarik/vundle' Plugin 'scrooloose/nerdtree.git' Plugin « Buffergator » Plugin 'MarkdownFootnotes' # Appuyez sur "D" une fois sélectionné

À ce stade, vundle a toujours ce plugin dans sa configuration, mais les fichiers du plugin ne sont pas installés. Vous pouvez réinstaller les fichiers en tapant :

:PluginInstall

Mais nous ne le ferons pas. Au lieu de cela, nous supprimerons l'entrée de notre fichier ~/.vimrc :

:e ~/.vimrc
set nocompatible
filetype off
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()

Plugin 'gmarik/vundle'

Plugin 'scrooloose/nerdtree.git'

Plugin 'Buffergator'

filetype plugin indent on

Cela terminera la suppression du plugin de votre système.

Un moyen plus simple de procéder consiste cependant à le supprimer d'abord du fichier ~/.vimrc.

Après l'avoir supprimé, vous pouvez appeler cette commande, qui supprime automatiquement tous les plugins qui ne sont pas dans votre fichier ~/.vimrc (elle vous demandera de confirmer) :

:PluginClean
" Removing Plugins:
Plugin 'MarkdownFootnotes'

. . .
Continue? [Y/n]:

Vous pouvez taper « Y » pour supprimer tous les plugins non référencés.

Conclusion

À ce stade, vous devriez être en mesure de gérer facilement vos plugins via l'interface vundle. Les avantages d'avoir un bon gestionnaire de plugins pour vim peuvent ne pas être apparents au premier coup d'œil, surtout si vous n'utilisez pas beaucoup de plugins.

Cependant, l’un des plus grands avantages que cela vous offre est la possibilité d’expérimenter facilement de nouveaux plugins. Lorsque le processus est clair et simple, vous êtes plus susceptible d'explorer différents plugins et d'essayer d'intégrer des fonctionnalités alors que sinon vous seriez peut-être nul et feriez les choses de manière plus compliquée.

Par Justin Ellingwood

Articles connexes: