GNU/Linux >> Tutoriels Linux >  >> Linux

Plugins d'éditeur Vim utiles 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 du plugin Vim à l'aide du gestionnaire de plugins Pathogen, et 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 didacticiel ont été testés sur Ubuntu 16.04 et que la version de Vim que nous avons utilisée est la 7.4.

A.vim

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

Bien qu'il soit facile de basculer entre les fichiers lors de l'utilisation d'un IDE basé sur une interface graphique (car il vous suffit de 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é, il existe un plugin - appelé a.vim - qui vous facilite la vie, en particulier lorsqu'il s'agit de basculer entre les fichiers source et les fichiers 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 façon dont nous avons installé les autres plugins discutés dans cette série d'articles. Voici les étapes impliquées 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 du répertoire 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 ça. Si toutes les étapes susmentionnées sont terminées avec succès, le plug-in sera installé sur votre système.

L'utilisation du plugin est très simple :tout ce que vous avez à faire est d'exécuter le :A commande - si le fichier actuel est un fichier source (disons test.c), le plug-in ouvrira le fichier d'en-tête correspondant (test.h) pour vous (l'inverse est également vrai).

Évidemment, pas à chaque fois qu'un fichier correspondant portant le même nom existe. Dans ces cas, en exécutant :A va créer un nouveau fichier avec ce nom. Par exemple, si test.h n'existe pas, un fichier portant ce nom sera créé et ouvert pour vous.

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

Ensuite, il est assez normal de se référer également à un fichier d'en-tête non correspondant à partir d'un fichier source. Par exemple, si vous êtes dans test.c et que vous souhaitez basculer vers un autre fichier d'en-tête (disons mem.h) et non test.h, vous pouvez le faire en exécutant :IH commande dans Vim. Inutile de dire que vous devrez remplacer par le nom réel du fichier que vous devez ouvrir.

Jusqu'à présent, quelle que soit la fonctionnalité dont nous avons discuté, on supposait que le fichier que vous avez l'intention d'ouvrir est présent dans le même répertoire que le fichier actuel. Cependant, comme vous en 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 le même répertoire.

Pour gérer de telles situations, vous devez utiliser le g:alternateSearchPath variable. Voici ce que dit la documentation officielle à 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' 

"Ceci indique que le fichier correspondant sera recherché dans ../source, ../src. ../include et ../inc, tous relatifs au fichier actuel à partir duquel on bascule. La valeur de la variable g:alternateSearchPath est simplement une liste de préfixes et de répertoires séparés par des virgules. Le préfixe "sfr :" indique que le chemin est relatif au fichier. Les 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 utilisé."

Si toutes les fonctionnalités susmentionnées de ce plugin vous ont déjà rendu "wow", laissez-moi vous dire que ce n'est pas tout. Une autre fonctionnalité extrêmement utile offerte par le plugin est la possibilité de diviser votre écran Vim afin que la source et son fichier d'en-tête correspondant puissent être visualisés simultanément.

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

Utilisez  :A commande pour basculer entre les fichiers ouverts.

Le plugin vous permet également d'ouvrir un fichier correspondant dans un onglet séparé dans la même fenêtre Vim. Vous pouvez le faire en exécutant le :AT commande.

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

Conclusion

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

Bien sûr, nous nous sommes concentrés uniquement sur la partie programmation ici. Pour ceux d'entre vous qui utilisent Vim comme éditeur de texte quotidien, sachez 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.


Linux
  1. vifm :un navigateur de fichiers de terminal pour les amateurs de Vim hardcore

  2. Sudoedit Vim Force Write (mise à jour) sans quitter ?

  3. Trier une partie d'un fichier ?

  4. Éditeur de texte Vem - Une disposition de commande alternative pour Vim

  5. Besoin d'un bon éditeur hexadécimal pour Linux

Comment enregistrer un fichier dans Vi / Vim et quitter l'éditeur

Éditeur VIM

40 commandes Docker importantes pour les développeurs de logiciels

20 exemples de commandes de volume Docker utiles pour les développeurs modernes

Top 25 des commandes Vim pour Linux

Les 15 meilleurs logiciels de partage de fichiers pour Linux Desktop