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

Nützliche Vim-Editor-Plugins für Softwareentwickler - Teil 3:a.vim

Bisher haben wir in dieser Artikelserie über programmierungsbezogene Plugins für Vim die Grundlagen der Vim-Plugin-Installation mit dem Pathogen-Plugin-Manager besprochen und insgesamt drei Plugins behandelt – nämlich Tagbar, delimitMate und Syntastic. Nun, in diesem dritten und letzten Teil, werden wir ein weiteres sehr nützliches Plugin namens a.vim besprechen .

Bitte beachten Sie, dass alle in diesem Tutorial erwähnten Beispiele, Befehle und Anweisungen auf Ubuntu 16.04 getestet wurden und die von uns verwendete Vim-Version 7.4 ist.

A.vim

Wenn Sie sich mit Softwareentwicklung beschäftigen und mit Programmiersprachen wie C und C++ arbeiten, werden Sie zustimmen, dass es praktisch unmöglich ist zu sagen, wie oft Sie zwischen Quell- und Header-Dateien wechseln müssen. Was ich damit sagen will, ist, dass es sich um eine sehr grundlegende Aufgabe handelt, die sehr häufig ausgeführt wird.

Während es einfach ist, zwischen Dateien zu wechseln, wenn Sie eine GUI-basierte IDE verwenden (da Sie nur ein paar Mausklicks ausführen müssen), wird es etwas schwierig, wenn Sie eine Befehlszeilen-IDE wie Vim verwenden. Wie Sie jedoch inzwischen erraten haben, gibt es ein Plugin namens a.vim, das Ihnen das Leben erleichtert, insbesondere wenn es darum geht, zwischen Quell- und Header-Dateien zu wechseln.

Bevor wir zur Verwendung übergehen, ist es erwähnenswert, dass sich der Installationsprozess für dieses Plugin von der Art und Weise unterscheidet, wie wir die anderen in dieser Artikelserie besprochenen Plugins installiert haben. In diesem Fall sind die folgenden Schritte erforderlich:

  • Zunächst müssen Sie ein paar Dateien herunterladen (a.vim und alternate.txt), was Sie tun können, indem Sie hierher gehen.
  • Als nächstes erstellen Sie die folgenden Verzeichnisse:~/ .vim/bundle/avim , ~/ .vim/bundle/avim/doc , ~/ .vim/bundle/avim/plugin , und ~/ .vim/bundle/autoload.
  • Sobald die Verzeichniserstellung abgeschlossen ist, legen Sie a.vim in ~/.vim/bundle/avim/plugin ab sowie ~/.vim/bundle/autoload , und alternate.txt in ~/.vim/bundle/avim/doc .

Das ist es. Wenn alle oben genannten Schritte erfolgreich abgeschlossen wurden, wird das Plugin auf Ihrem System installiert.

Die Verwendung des Plugins ist sehr einfach:Sie müssen lediglich :A ausführen Befehl - wenn die aktuelle Datei eine Quelldatei ist (z. B. test.c), öffnet das Plugin die entsprechende Header-Datei (test.h) für Sie (umgekehrt gilt das auch).

Offensichtlich existiert nicht immer eine entsprechende Datei mit demselben Namen. Führen Sie in diesen Fällen :A aus erstellt eine neue Datei mit diesem Namen. Wenn beispielsweise test.h nicht vorhanden ist, wird eine Datei mit diesem Namen erstellt und für Sie geöffnet.

Falls Sie dieses Verhalten deaktivieren möchten, können Sie das g:alternateNoDefaultAlternate festlegen Variable (geben Sie ihr einen Wert ungleich Null) in .vimrc Datei in Ihrem Home-Verzeichnis vorhanden.

Weiter ist es ziemlich normal, auch von einer Quelldatei auf eine nicht entsprechende Header-Datei zu verweisen. Wenn Sie sich beispielsweise in test.c befinden und zu einer anderen Header-Datei (z. B. mem.h) und nicht zu test.h wechseln möchten, können Sie dies tun, indem Sie Folgendes ausführen:IH Befehl in Vim. Unnötig zu erwähnen, dass Sie durch den tatsächlichen Namen der zu öffnenden Datei ersetzen müssen.

Bisher wurde bei jeder besprochenen Funktionalität davon ausgegangen, dass die Datei, die Sie öffnen möchten, im selben Verzeichnis wie die aktuelle Datei vorhanden ist. Wie Sie jedoch zustimmen würden, ist dies nicht immer der Fall. Was ich damit sagen will ist, dass in vielen Projekten der Speicherort der Quelldateien und der entsprechenden Header-Dateien nicht immer dasselbe Verzeichnis ist.

Um mit solchen Situationen umzugehen, müssen Sie den g:alternateSearchPath verwenden Variable. Folgendes steht in der offiziellen Dokumentation zu dieser Variable:

"Dieses Plug-in ermöglicht die Konfiguration des Suchpfads, den es zum Auffinden von Quell- und Header-Dateien verwendet. Der Suchpfad wird durch Festlegen der g:alternateSearchPath-Variablen angegeben. Die Standardeinstellung lautet wie folgt:"  

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

"Dies zeigt an, dass die entsprechende Datei in ../source, ../src. ../include und ../inc gesucht wird, alles relativ zu der aktuellen Datei, von der umgeschaltet wird. Der Wert der Variablen g:alternateSearchPath ist einfach eine durch Kommas getrennte Liste von Präfixen und Verzeichnissen. Das Präfix „sfr:“ gibt an, dass der Pfad relativ zur Datei ist. Andere Präfixe sind „wdr:“, was angibt, dass das Verzeichnis relativ zum aktuellen Arbeitsverzeichnis ist, und „abs:“. was anzeigt, dass der Pfad absolut ist. Wenn kein Präfix angegeben ist, wird "sfr:" angenommen."

Wenn alle oben genannten Funktionen dieses Plug-ins Sie bereits „wow“ gemacht haben, lassen Sie mich Ihnen sagen, dass das nicht alles ist. Eine weitere äußerst nützliche Funktion, die das Plugin bietet, ist die Möglichkeit, Ihren Vim-Bildschirm aufzuteilen, sodass sowohl die Quelle als auch die entsprechende Header-Datei gleichzeitig angezeigt werden können.

Darüber hinaus können Sie den Bildschirm sowohl horizontal als auch vertikal teilen, je nachdem, was am besten zu Ihnen passt. Verwenden Sie :AS Befehl zum horizontalen Teilen des Bildschirms und :AV Befehl für vertikale Teilung.

Verwenden Sie :A Befehl zum Umschalten zwischen geöffneten Dateien.

Mit dem Plugin können Sie auch eine entsprechende Datei in einem separaten Tab innerhalb desselben Vim-Fensters öffnen. Sie können dies tun, indem Sie :AT ausführen Befehl.

Natürlich wie :AV , :WIE , und :AT , können Sie :IHV verwenden , :IHS , und :IHT auch Befehle.

Schlussfolgerung

Obwohl viele programmierbezogene Vim-Plugins zur Verfügung stehen, sollten die, die wir in dieser dreiteiligen Serie besprochen haben, ausreichen, um Ihnen eine Vorstellung davon zu geben, wie leistungsfähig der Editor wird, wenn Sie die richtigen Plugins für Ihre Softwareentwicklungsarbeit aktiviert haben .

Natürlich haben wir uns hier nur auf den Programmierteil konzentriert. Für diejenigen unter Ihnen, die Vim als Ihren täglichen Texteditor verwenden, sollten Sie wissen, dass es eine Fülle von Plugins gibt, die die Textbearbeitungsfunktion von Vim erweitern und noch besser machen. Aber wir verschieben diese Diskussion auf ein anderes Mal.


Linux
  1. vifm:Ein Terminal-Dateibrowser für eingefleischte Vim-Liebhaber

  2. Sudoedit Vim Force Write (Update) ohne Beenden?

  3. Teil einer Datei sortieren?

  4. Vem Texteditor – Ein alternatives Befehlslayout für Vim

  5. Benötigen Sie einen guten Hex-Editor für Linux

So speichern Sie eine Datei in Vi / Vim und beenden den Editor

VIM-Editor

40 wichtige Docker-Befehle für Softwareentwickler

20 nützliche Beispiele für Docker-Volume-Befehle für moderne Entwickler

Top 25 Vim-Befehle für Linux

Die 15 besten File-Sharing-Software für Linux-Desktop