GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Tutorial:Machen Sie Vim als Ihre C/C++ IDE mit dem c.vim Plugin


Dieser Artikel ist Teil der fortlaufenden Vi/Vim-Tipps- und Trickserie. Als Programmierer können Sie beim Codieren viele sich wiederholende Aufgaben erledigen, wie zum Beispiel:

  • Dateiheader hinzufügen
  • Funktion/Frame-Kommentar hinzufügen
  • Inklusive Standard-Code-Snippet
  • Syntaxprüfung durchführen
  • Dokumentation über eine Funktion lesen
  • Einen Codeblock in einen Kommentar umwandeln und umgekehrt


Das C-Support-Vim-Plug-in bietet die einfachste Möglichkeit, all dies zu tun, und spart viel Zeit und Tastenanschläge für C- und C++-Programmierer.

Das Plugin wurde von Fritz Mehner geschrieben, der den Zweck des Plugins so erklärt:„Programme schreiben und ausführen. Aussagen, Redewendungen, Kommentare einfügen“.

Er hebt außerdem folgende Merkmale hervor:

  • Anweisungsorientiertes Editieren von C / C++ Programmen
  • Beschleunigen Sie das Schreiben von neuem Code erheblich.
  • Schreiben Sie Code und Kommentare mit einem professionellen Erscheinungsbild von Anfang an.
  • Codeausschnitte verwenden


Dieser Artikel erklärt die Installation des Plugins in 3 einfachen Schritten und 7 leistungsstarke Funktionen des Plugins.

3 Schritte zur Installation des C.Vim-Plugins

Schritt 1:Laden Sie das C Vim-Plugin herunter

Laden Sie das Plugin von der Website vim.org herunter.

$ cd /usr/src
$ wget http://www.vim.org/scripts/download_script.php?src_id=9679

Schritt 2:Installieren Sie das C Vim-Plugin

$ mkdir ~/.vim
$ cd ~/.vim
$ unzip /usr/src/cvim.zip

Schritt 3:Aktivieren Sie das Plugin in ~/.vimrc

Fügen Sie die folgende Zeile zu ~/.vimrc hinzu, um das Plugin für den Vim-Editor zu aktivieren.

$ vim ~/.vimrc
filetype plugin on

8 leistungsstarke Funktionen des C.Vim-Plugins

Funktion 1:Automatischen Header zu *.c-Datei hinzufügen

Wenn Sie eine Datei mit der Erweiterung .c öffnen, wird die Datei mit dem Header wie unten gezeigt geöffnet. Dadurch wird der Cursor im Einfügemodus auch in das Beschreibungsfeld gesetzt.

$ 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
*
* =================================================
*/


Um den Standardwert von AUTHOR und COMPANY zu ändern, ändern Sie den Standardwert in ~/.vim/c-support/templates/Templates

$ vim ~/.vim/c-support/templates/Templates
|AUTHOR|    = geekstuff
|AUTHORREF| = gk
|EMAIL|     = subscribe@geekstuff
|COMPANY|   = thegeekstuff.com


Wenn Sie jetzt eine neue c-Datei erstellen, zeigt sie die geänderten Werte für AUTHOR und COMPANY wie unten gezeigt.

$ 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
*
* =================================================
*/


Hinweis: Um dem Header benutzerdefinierte Felder hinzuzufügen, ändern Sie die Datei ~/.vim/c-support/templates/file-description.template und fügen Sie Ihr eigenes benutzerdefiniertes Feld hinzu.

Funktion 2:Hinzufügen einer C-Funktion mit \if

Um ein Unterprogramm zu schreiben, geben Sie \if im normalen Modus ein, was zur Eingabe des Funktionsnamens auffordert (wie in Abb. 1 unten gezeigt) und das Unterprogramm mit dem Standardfunktionsinhalt einfügt (wie in Abb. 2 unten gezeigt).

Abb. 1:C-Funktion automatisch einfügen

Abb. 2:C-Funktion automatisch einfügen

Funktion 3:Hauptfunktionskopf mit \im einfügen

Geben Sie zum Einfügen der Hauptfunktion im normalen Modus \im ein, wodurch die Hauptfunktion wie unten gezeigt hinzugefügt wird.

Abb. 3:C-Hauptfunktion automatisch einfügen

Funktion 4:Einfügen einer Funktionskopfzeile mit \cfu

Um einen Funktionsheader einzufügen, geben Sie im normalen Modus \cfu ein, was nach dem Funktionsnamen fragt, wie in Abb. 4 gezeigt, und fügt den Kommentar hinzu, wie in Abb. 5 gezeigt.

Abb. 4:C-Funktionskopf automatisch einfügen

Abb. 5:C-Funktionskopf automatisch einfügen

Funktion 5:Fügen Sie einen Frame-Kommentar mit \cfr hinzu

Um einen Frame-Kommentar hinzuzufügen, geben Sie \cfr im normalen Modus ein, was den folgenden formatierten Kommentar ergibt.

Abb. 6:Frame-Kommentar automatisch einfügen

Funktion 6:Verwenden Sie \p<

, um eine Header-Datei einzuschließen

Geben Sie im normalen Modus \p“ enthält, und platzieren Sie den Cursor im Einfügemodus auf das <-Symbol, wo Sie den Namen der Header-Datei eingeben können.

Feature 7:Datei speichern, kompilieren und sofort ausführen.

Zum Speichern und Kompilieren der Datei verwenden Sie \rc.

Verwenden Sie zum Ausführen \rr.

Funktion 8:Einfügen eines vordefinierten Code-Snippets in den C-Code mit \nr

Das Plugin wird mit einigen vordefinierten Codeschnipseln geliefert, die Sie in Ihren Code einfügen können. Im Folgenden sind die standardmäßigen Codeausschnitte aufgeführt, die mit dem Plugin geliefert werden.

$ 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

Wenn Sie beispielsweise eine Funktion erstellen möchten, die eine dynamische int-Matrix der Größe von Zeilen * Spalten zuweist; einen Zeiger zurückgeben, können Sie ihn aus den vorhandenen Codeausschnitten wiederverwenden. Es folgt der Inhalt der vordefinierten Codeschnipsel von calloc_int_matrix.c.

/*
* ===  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  ---------- */


Um dies in Ihr funktionierendes C-Programm einzufügen, geben Sie \nr aus dem normalen Modus innerhalb von vim ein, was zu „read snippet /home/ramesh/.vim/c-support/codesnippets/“ auffordern wird, geben Sie calloc_int_matrix.c ein Ende und drücken Sie die Eingabetaste, wodurch der Inhalt von ~/.vim/c-support/codesnippets/ calloc_int_matrix.c automatisch in Ihre Arbeitsdatei eingefügt wird.

Hinweis :Sie können Ihre eigenen Codeschnipsel definieren und unter ~/.vim/c-support/codesnippets/ platzieren. Sie können auch Ihre eigenen Codeausschnitte aus dem vorhandenen Code erstellen – wählen Sie den Teil des Codes aus, der als Codeausschnitt erstellt werden soll, drücken Sie \nw und geben Sie ihm einen Dateinamen. Geben Sie beim nächsten Mal \nr und den Dateinamen ein, um Ihr benutzerdefiniertes Code-Snippet zu erhalten.

Das C-Support Vim Plugin enthält viele leistungsstarke Funktionen. Lesen Sie die Dokumentation für weitere Informationen. Die Dokumentation befindet sich an folgendem Speicherort auf Ihrem System.

  • README :~/.vim/README.csupport
  • PDF:~/.vim/c-support/doc/c-hotkeys.pdf
  • Online c-support Vim-Plugin-Dokumentation
  • Dieses Plugin enthält eine Hilfedatei (csupport.txt), die von :h csupport
  • eingesehen werden kann
  • Zusätzliche Screenshots dieses Plug-ins.

Empfohlene Lektüre

Vim 101 Hacks, von Ramesh Natarajan . Ich bin ein Kommandozeilen-Junkie. Also bin ich natürlich ein großer Fan von Vi- und Vim-Editoren. Vor einigen Jahren, als ich viel C-Code unter Linux geschrieben habe, habe ich alle verfügbaren Vim-Editor-Tipps und -Tricks gelesen. Basierend auf meiner Vim-Editor-Erfahrung habe ich das Vim 101 Hacks eBook geschrieben, das 101 praktische Beispiele zu verschiedenen erweiterten Vim-Funktionen enthält, die Sie im Vim-Editor schnell und produktiv machen werden. Auch wenn Sie Vi und Vim Editors seit mehreren Jahren verwenden und dieses Buch noch nicht gelesen haben, tun Sie sich bitte einen Gefallen und lesen Sie dieses Buch. Sie werden von den Möglichkeiten des Vim-Editors begeistert sein.

Tolle Vim-Editor-Artikel

Im Folgenden finden Sie einige großartige Vi/Vim-Editor-Tutorials die Sie vielleicht hilfreich finden.

  • Vim Editor in einen schönen Quellcode-Browser für jede Programmiersprache umwandeln
  • 12 leistungsstarke Beispiele zum Suchen und Ersetzen für den Vim-Editor
  • Vi- und Vim-Makro-Tutorial:Aufnehmen und Abspielen
  • Turboladen Sie den Firefox-Browser mit der Vim-Editor-Funktionalität mit dem Vimperator-Add-on auf

Hinweis: Bitte abonnieren Sie The Geek Stuff und verpassen Sie keine zukünftigen Tipps und Tricks für Vi- und Vim-Editoren .


Linux
  1. Wie man dateispezifische Einstellungsänderungen in Vim mit Modeline vornimmt

  2. Machen Sie Vim zu Ihrer Perl-IDE mit dem Plugin perl-support.vim

  3. Linux-Tool zum Überprüfen der Rechtschreibung von Kommentaren im c/c++-Quellcode

  4. C/C++ Linux MAC-Adresse aller Schnittstellen

  5. So öffnen Sie eine Datei in vim mit Pipe

Verwalten Sie Ihre Spiele mit Lutris unter Linux

So verwalten Sie Vim-Plugins mit Vundle unter Linux

Tutorial zur Verwendung des Timeout-Befehls unter Linux

Ubuntu Mac Theme:Ein Tutorial, um Ihr Ubuntu wie macOS aussehen zu lassen

Vim Editor:So richten Sie die Funktionen der zuletzt verwendeten Dokumente mit dem MRU-Plugin ein

10 Vim-Tutorials, um Ihre Editor-Fähigkeiten zu verbessern