Cet article fait partie de la série Vi / Vim Tips and Tricks en cours. En tant que programmeur, vous pouvez effectuer de nombreuses tâches répétitives lors du codage, telles que :
- Ajouter un en-tête de fichier
- Ajout d'un commentaire de fonction/cadre
- Y compris l'extrait de code par défaut
- Vérification de la syntaxe
- Lire la documentation sur une fonction
- Convertir un bloc de code en commentaire, et vice versa
Le plugin C-Support Vim offre le moyen le plus simple de faire tout ce qui précède, économisant beaucoup de temps et de frappes pour les programmeurs C et C++.
Le plugin a été écrit par Fritz Mehner, qui explique le but du plugin comme suit :"Écrire et exécuter des programmes. Insérez des déclarations, des idiomes, des commentaires".
Il met également en évidence les fonctionnalités suivantes :
- Édition orientée instructions de programmes C / C++
- Accélérez considérablement l'écriture de nouveau code.
- Rédigez du code et des commentaires avec une apparence professionnelle dès le début.
- Utiliser des extraits de code
Cet article explique comment installer le plugin en 3 étapes simples et 7 fonctionnalités puissantes du plugin.
3 étapes pour installer le plugin C.Vim
Étape 1 :Téléchargez le plug-in C Vim
Téléchargez le plug-in depuis le site Web vim.org.
$ cd /usr/src $ wget http://www.vim.org/scripts/download_script.php?src_id=9679
Étape 2 :Installez le plug-in C Vim
$ mkdir ~/.vim $ cd ~/.vim $ unzip /usr/src/cvim.zip
Étape 3 :Activez le plug-in dans ~/.vimrc
Ajoutez la ligne suivante au ~/.vimrc pour activer le plugin pour l'éditeur Vim.
$ vim ~/.vimrc filetype plugin on
8 fonctionnalités puissantes du plugin C.Vim
Fonctionnalité 1 :Ajouter un en-tête automatique au fichier *.c
Lorsque vous ouvrez un fichier avec l'extension .c, il ouvre le fichier avec l'en-tête comme indiqué ci-dessous. Cela placera également le curseur dans le champ Description en mode Insertion.
$ vim myprogram.c /* * ================================================= * Filename: myprogram.c * * Description: * * Version: 1.0 * Created: 01/19/09 20:23:25 * Revision: none * Compiler: gcc * * Author: Dr. Fritz Mehner (mn), [email protected] * Company: FH Südwestfalen, Iserlohn * * ================================================= */
Pour changer la valeur par défaut de l'AUTEUR et de l'ENTREPRISE, modifiez la valeur par défaut dans ~/.vim/c-support/templates/Templates
$ vim ~/.vim/c-support/templates/Templates |AUTHOR| = geekstuff |AUTHORREF| = gk |EMAIL| = subscribe@geekstuff |COMPANY| = thegeekstuff.com
Maintenant, lorsque vous créez un nouveau fichier c, il affichera les valeurs modifiées pour AUTHOR et COMPANY comme indiqué ci-dessous.
$ vim myprogram.c /* * ================================================= * * Filename: myprogram.c * * Description: * * Version: 1.0 * Created: 01/19/09 20:26:43 * Revision: none * Compiler: gcc * * Author: geekstuff (gk), subscribe@geekstuff * Company: thegeekstuff.com * * ================================================= */
Remarque : Pour ajouter des champs personnalisés à l'en-tête, modifiez le fichier ~/.vim/c-support/templates/file-description.template et ajoutez votre propre champ personnalisé.
Fonctionnalité 2 :Ajout de la fonction C à l'aide de \if
Pour écrire une sous-routine, tapez \if en mode normal, ce qui vous demandera le nom de la fonction (comme indiqué dans la Fig1 ci-dessous) et insère la sous-routine avec le contenu de la fonction par défaut (comme indiqué dans la Fig2 ci-dessous).
Fig1 : Insérer la fonction C automatiquement
Fig 2 : Insérer la fonction C automatiquement
Fonctionnalité 3 :Insérer l'en-tête de la fonction principale à l'aide de \im
Pour insérer la fonction principale, tapez \im en mode normal, ce qui ajoutera la fonction principale comme indiqué ci-dessous.
Fig 3 :Insérer automatiquement la fonction principale C
Fonctionnalité 4 :Insérer un en-tête de fonction à l'aide de \cfu
Pour insérer un en-tête de fonction, tapez \cfu en mode normal, qui demandera le nom de la fonction comme indiqué sur la Fig 4, et ajoutera le commentaire comme indiqué sur la Fig 5.
Fig 4 :Insérer automatiquement l'en-tête de la fonction C
Fig 5 :Insérer automatiquement l'en-tête de la fonction C
Fonctionnalité 5 :Ajouter un commentaire de cadre à l'aide de \cfr
Pour ajouter un commentaire de cadre, tapez \cfr en mode normal, ce qui donnera le commentaire formaté suivant.
Fig 6 :Insérer un commentaire de cadre automatiquement
Fonctionnalité 6 :pour inclure le fichier d'en-tête, utilisez \p<
Tapez \p
Pour enregistrer et compiler le fichier, utilisez \rc.
Pour exécuter, utilisez \rr.
Le plugin est livré avec quelques extraits de code prédéfinis que vous pouvez insérer dans votre code. Voici les extraits de code par défaut fournis avec le plug-in.
Par exemple, si vous souhaitez créer une fonction qui allouera une matrice int dynamique de taille lignes * colonnes ; renvoie un pointeur, vous pouvez le réutiliser à partir des extraits de code existants. Voici le contenu des extraits de code prédéfinis calloc_int_matrix.c.
Vim 101 Hacks, par Ramesh Natarajan . Je suis un accro de la ligne de commande. Donc, naturellement, je suis un grand fan des éditeurs Vi et Vim. Il y a plusieurs années, lorsque j'écrivais beaucoup de code C sur Linux, je lisais tous les trucs et astuces disponibles pour l'éditeur Vim. Sur la base de mon expérience dans l'éditeur Vim, j'ai écrit le livre électronique Vim 101 Hacks qui contient 101 exemples pratiques sur diverses fonctionnalités avancées de Vim qui vous rendront rapide et productif dans l'éditeur Vim. Même si vous utilisez les éditeurs Vi et Vim depuis plusieurs années et que vous n'avez pas lu ce livre, rendez-vous service et lisez ce livre. Vous serez étonné des capacités de l'éditeur Vim.
Voici quelques excellents tutoriels pour l'éditeur Vi / Vim qui pourraient vous être utiles.
Remarque : Veuillez vous abonner à The Geek Stuff et ne manquez aucun des futurs trucs et astuces des éditeurs Vi et Vim .Fonctionnalité 7 :enregistrez le fichier, compilez-le et exécutez-le immédiatement.
Fonctionnalité 8 :Insérez un extrait de code prédéfini dans le code C à l'aide de \nr
$ ls ~/.vim/c-support/codesnippets
Makefile calloc_double_matrix.c main.c print_double_array.c.noindent
Makefile.multi-target.template calloc_int_matrix.c main.cc print_int_array.c.noindent
/*
* === FUNCTION ======================================================================
* Name: calloc_int_matrix
* Description: Allocate a dynamic int-matrix of size rows*columns; return a pointer.
* =====================================================================================
*/
int**
calloc_int_matrix ( int rows, int columns )
{
int i;
int **m;
m = calloc ( rows, sizeof(int*) ); /* allocate pointer array */
assert( m != NULL ); /* abort if allocation failed */
*m = calloc ( rows*columns, sizeof(int) ); /* allocate data array */
assert(*m != NULL ); /* abort if allocation failed */
for ( i=1; i
m[i] = m[i-1] + columns;
return m;
} /* ---------- end of function calloc_int_matrix ---------- */
Pour insérer ceci dans votre programme de travail en c, tapez \nr depuis le mode normal dans vim, qui vous demandera "lire l'extrait /home/ramesh/.vim/c-support/codesnippets/", tapez calloc_int_matrix.c à la fin et appuyez sur Entrée, ce qui insérera automatiquement le contenu de ~/.vim/c-support/codesnippets/ calloc_int_matrix.c dans votre fichier de travail.
Remarque :Vous pouvez définir vos propres extraits de code et les placer sous ~/.vim/c-support/codesnippets/. Vous pouvez également créer vos propres extraits de code à partir du code existant - sélectionnez la partie de code à créer en tant qu'extrait de code, appuyez sur \nw et donnez-lui un nom de fichier. À partir de la prochaine fois, tapez \nr et le nom du fichier pour obtenir votre extrait de code personnalisé.
Il existe de nombreuses fonctionnalités puissantes dans le plugin C-Support Vim. Lisez la documentation pour plus d'informations. La documentation se trouve à l'emplacement suivant sur votre système.
Lecture recommandée
Articles géniaux de l'éditeur Vim