Vim Plugins · 5 min read · Nov 30, 2025

Plugins utiles de l'éditeur Vim pour les développeurs de logiciels - partie 3 : a.vim

Jusqu’à présent, dans cette série d’articles couvrant les plugins liés à la programmation pour Vim, nous avons discuté des bases de l’installation de plugins Vim en utilisant le gestionnaire de plugins Pathogen, et avons couvert un total de trois plugins - à savoir Tagbar, delimitMate et Syntastic. Maintenant, dans cette troisième et dernière partie, nous allons discuter d’un autre plugin très utile appelé a.vim.

Veuillez noter que tous les exemples, commandes et instructions mentionnés dans ce tutoriel ont été testés sur Ubuntu 16.04, et la version de Vim que nous avons utilisée est 7.4.

A.vim

Si vous êtes dans le développement de logiciels et travaillez avec des langages de programmation comme C et C++, vous conviendrez qu’il est pratiquement impossible de dire combien de fois vous devez passer d’un fichier source à un fichier d’en-tête. Ce que je veux dire, c’est que c’est une tâche très basique qui est effectuée très fréquemment.

Bien qu’il soit facile de passer d’un fichier à l’autre lorsque vous utilisez un IDE basé sur une interface graphique (car vous n’avez qu’à faire quelques clics de souris), les choses deviennent un peu difficiles si vous utilisez un IDE en ligne de commande comme Vim. Cependant, comme vous l’auriez deviné maintenant, il existe un plugin - appelé a.vim - qui rend la vie plus facile pour vous, surtout en ce qui concerne le passage entre les fichiers source et d’en-tête.

Avant de passer à l’utilisation, il convient de mentionner que le processus d’installation de ce plugin est différent de la manière dont nous avons installé les autres plugins discutés dans cette série d’articles. Voici les étapes à suivre dans ce cas :

  • Tout d’abord, vous devez télécharger quelques fichiers (a.vim et alternate.txt), ce que vous pouvez faire en vous rendant ici.
  • Ensuite, créez les répertoires suivants : ~/. vim/bundle/avim, ~/. vim/bundle/avim/doc, ~/. vim/bundle/avim/plugin, et ~/. *vim/bundle/autoload*.
  • Une fois la création des répertoires terminée, placez a.vim dans ~/.vim/bundle/avim/plugin ainsi que ~/.vim/bundle/autoload, et alternate.txt dans ~/.vim/bundle/avim/doc.

C’est tout. Si toutes les étapes mentionnées ci-dessus sont complétées avec succès, le plugin sera installé sur votre système.

Utiliser le plugin est très simple : tout ce que vous avez à faire est d’exécuter la commande :A - si le fichier actuel est un fichier source (disons test.c), le plugin ouvrira le fichier d’en-tête correspondant (test.h) pour vous (et vice-versa est également vrai).

Évidemment, il n’existe pas toujours un fichier correspondant avec le même nom. Dans ces cas, exécuter :A créera un nouveau fichier avec ce nom. Par exemple, si test.h n’existe pas, un fichier avec ce nom sera créé et ouvert pour vous.

Dans le cas où vous souhaitez désactiver ce comportement, vous pouvez définir la variable g:alternateNoDefaultAlternate (donnez-lui une valeur non nulle) dans le fichier .vimrc présent dans votre répertoire personnel.

En avançant, il est tout à fait normal de faire référence à un fichier d’en-tête non correspondant depuis un fichier source également. Par exemple, si vous êtes dans test.c, et que vous souhaitez passer à un autre fichier d’en-tête (disons mem.h) et non test.h, alors vous pouvez le faire en exécutant la commande : IH dans Vim. Inutile de dire que vous devrez remplacer par le nom réel du fichier que vous devez ouvrir.

Jusqu’à présent, toute la fonctionnalité dont nous avons discuté suppose que le fichier que vous souhaitez ouvrir est présent dans le même répertoire que le fichier actuel. Cependant, comme vous le conviendrez, ce n’est pas toujours le cas. Ce que je veux dire, c’est que dans de nombreux projets, l’emplacement des fichiers source et des fichiers d’en-tête correspondants n’est pas toujours dans le même répertoire.

Pour gérer de telles situations, vous devez utiliser la variable g:alternateSearchPath. Voici ce que la documentation officielle dit à propos de cette variable :

“Ce plugin permet de configurer le chemin de recherche qu’il utilise pour localiser les fichiers source et d’en-tête. Le chemin de recherche est spécifié en définissant la variable g:alternateSearchPath. Le paramètre par défaut est le suivant :”

g:alternateSearchPath = 'sfr:../source,sfr:../src,sfr:../include,sfr:../inc' 

“Cela indique que le fichier correspondant sera recherché dans ../source, ../src. ../include et ../inc, tous relatifs au fichier actuel à partir duquel on passe. La valeur de la variable g:alternateSearchPath est simplement une liste séparée par des virgules de préfixes et de répertoires. Le préfixe “sfr:” indique que le chemin est relatif au fichier. D’autres préfixes sont “wdr:” qui indique que le répertoire est relatif au répertoire de travail actuel et “abs:” qui indique que le chemin est absolu. Si aucun préfixe n’est spécifié, “sfr:” est supposé.”

Si toutes les fonctionnalités mentionnées ci-dessus de ce plugin vous ont déjà fait dire “wow”, laissez-moi vous dire que ce n’est pas tout. Une autre fonctionnalité extrêmement utile que le plugin offre est la possibilité de diviser votre écran Vim afin que le fichier source et son fichier d’en-tête correspondant puissent être vus simultanément.

De plus, vous pouvez diviser l’écran à la fois horizontalement et verticalement, selon ce qui vous convient le mieux. Utilisez la commande :AS pour diviser l’écran horizontalement et la commande :AV pour une division verticale.

Écran de division verticale de Vim.a

Écran de division horizontale de vim.a

Utilisez la commande :A pour passer entre les fichiers ouverts.

Le plugin vous permet également d’ouvrir un fichier correspondant dans un nouvel onglet au sein de la même fenêtre Vim. Vous pouvez le faire en exécutant la commande :AT.

Onglets dans Vim avec a.vim.

Bien sûr, comme :AV, :AS et :AT, vous pouvez également utiliser les commandes :IHV, :IHS et :IHT.

Conclusion

Bien qu’il existe de nombreux plugins Vim liés à la programmation disponibles, ceux que nous avons discutés dans cette série en trois parties devraient suffire à vous donner une idée de la puissance de l’éditeur si vous avez les bons plugins activés pour votre travail de développement logiciel.

Bien sûr, nous nous sommes uniquement concentrés sur la partie programmation ici. Pour ceux d’entre vous qui utilisent Vim comme éditeur de texte quotidien, vous devez savoir qu’il existe une pléthore de plugins disponibles qui ajoutent à la fonctionnalité d’édition de texte de Vim et la rendent encore meilleure. Mais nous laisserons cette discussion pour un autre jour.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.