Vim Plugins · 4 min read · Nov 30, 2025

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

Bis jetzt haben wir in dieser Artikelreihe, die sich mit programmierungsbezogenen Plugins für Vim beschäftigt, die Grundlagen der Installation von Vim-Plugins mit dem Pathogen-Plugin-Manager besprochen und insgesamt drei Plugins behandelt - nämlich Tagbar, delimitMate und Syntastic. Jetzt, im dritten und letzten Teil, werden wir ein weiteres sehr nützliches Plugin namens a.vim besprechen.

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

A.vim

Wenn Sie in der Softwareentwicklung tätig sind 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 eine sehr grundlegende Aufgabe ist, die sehr häufig erledigt wird.

Während es einfach ist, zwischen Dateien zu wechseln, wenn man eine GUI-basierte IDE verwendet (da man nur ein paar Mausklicks machen muss), wird es etwas schwierig, wenn man eine Kommandozeilen-IDE wie Vim verwendet. Wie Sie sich wahrscheinlich schon gedacht haben, gibt es jedoch ein Plugin - genannt 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 der Installationsprozess für dieses Plugin anders ist als die Art und Weise, wie wir die anderen in dieser Artikelreihe besprochenen Plugins installiert haben. Folgendes sind die Schritte, die in diesem Fall erforderlich sind:

  • Zuerst müssen Sie ein paar Dateien (a.vim und alternate.txt) herunterladen, was Sie hier tun können.
  • 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 Verzeichnisstruktur erstellt ist, legen Sie a.vim in ~/.vim/bundle/avim/plugin sowie ~/.vim/bundle/autoload und alternate.txt in ~/.vim/bundle/avim/doc ab.

Das war’s. Wenn alle oben genannten Schritte erfolgreich abgeschlossen sind, wird das Plugin auf Ihrem System installiert.

Die Verwendung des Plugins ist sehr einfach: Alles, was Sie tun müssen, ist den :A-Befehl auszuführen - wenn die aktuelle Datei eine Quelldatei (zum Beispiel test.c) ist, öffnet das Plugin die entsprechende Header-Datei (test.h) für Sie (umgekehrt gilt das auch).

Offensichtlich existiert nicht jedes Mal eine entsprechende Datei mit demselben Namen. In diesen Fällen wird beim Ausführen von :A eine neue Datei mit diesem Namen erstellt. Wenn test.h also nicht existiert, wird eine Datei mit diesem Namen erstellt und für Sie geöffnet.

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

Es ist auch ganz normal, von einer Quell-Datei auf eine nicht entsprechende Header-Datei zu verweisen. Wenn Sie sich beispielsweise in test.c befinden und zu einer anderen Header-Datei (zum Beispiel mem.h) und nicht zu test.h wechseln möchten, können Sie dies tun, indem Sie den Befehl IH in Vim ausführen. Es versteht sich von selbst, dass Sie durch den tatsächlichen Namen der Datei ersetzen müssen, die Sie öffnen möchten.

Bis jetzt haben wir über die Funktionalität gesprochen, die davon ausgeht, dass die Datei, die Sie öffnen möchten, im selben Verzeichnis wie die aktuelle Datei vorhanden ist. Wie Sie zustimmen werden, ist das jedoch nicht immer der Fall. Was ich damit sagen will, ist, dass in vielen Projekten der Speicherort der Quell-Dateien und der entsprechenden Header-Dateien nicht immer im selben Verzeichnis liegt.

Um solche Situationen zu bewältigen, müssen Sie die Variable g:alternateSearchPath verwenden. Das sagt die offizielle Dokumentation über diese Variable:

“Dieses Plugin ermöglicht es, den Suchpfad, den es verwendet, um Quell- und Header-Dateien zu finden, zu konfigurieren. Der Suchpfad wird durch Setzen der Variable g:alternateSearchPath festgelegt. Die Standardeinstellung ist wie folgt:”

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

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

Wenn all die oben genannten Funktionen dieses Plugins Sie bereits “wow” sagen lassen haben, lassen Sie mich Ihnen sagen, dass das noch nicht alles ist. Eine weitere äußerst nützliche Funktion, die das Plugin bietet, ist die Möglichkeit, Ihren Vim-Bildschirm zu teilen, sodass sowohl die Quell- als auch die entsprechende Header-Datei gleichzeitig angezeigt werden können.

Was noch besser ist, Sie können den Bildschirm sowohl horizontal als auch vertikal teilen, je nachdem, was für Sie am besten passt. Verwenden Sie den Befehl :AS, um den Bildschirm horizontal zu teilen, und den Befehl :AV, um ihn vertikal zu teilen.

Vim.a vertikaler geteilte Bildschirm

vim.a horizontal geteilter Bildschirm

Verwenden Sie den Befehl :A, um zwischen geöffneten Dateien zu wechseln.

Das Plugin ermöglicht es Ihnen auch, eine entsprechende Datei in einem separaten Tab innerhalb des gleichen Vim-Fensters zu öffnen. Sie können dies tun, indem Sie den Befehl :AT ausführen.

Tabs in Vim mit a.vim.

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

Fazit

Während es viele programmierungsbezogene Vim-Plugins gibt, die zur Verwendung zur Verfügung stehen, sollten die, die wir in dieser dreiteiligen Reihe besprochen haben, ausreichen, um Ihnen eine Vorstellung davon zu geben, wie mächtig der Editor wird, wenn Sie die richtigen Plugins für Ihre Softwareentwicklungsarbeit aktiviert haben.

Natürlich haben wir uns hier nur auf den Programmierbereich konzentriert. Für diejenigen unter Ihnen, die Vim als täglichen Texteditor verwenden, sollten Sie wissen, dass es eine Vielzahl von Plugins gibt, die die Textbearbeitungsfunktionalität von Vim erweitern und sie noch besser machen. Aber diese Diskussion lassen wir uns für einen anderen Tag.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.