Wie kann man in Vim Text aus der Zwischenablage einfügen?
- Vim und die Zwischenablage: Grundlagen
- Text aus der Zwischenablage in den Vim-Puffer einfügen
- Vorraussetzungen und mögliche Probleme
- Fazit
In Vim ist das Einfügen von Text aus der Zwischenablage eine häufige Anforderung, insbesondere wenn man zwischen verschiedenen Programmen oder Fenstern arbeiten möchte. Da Vim ursprünglich in einer terminalbasierten Umgebung entwickelt wurde, ist der Umgang mit der systemweiten Zwischenablage nicht immer auf den ersten Blick ersichtlich. Im Folgenden wird erläutert, wie man Text aus der Zwischenablage in Vim einfügt und was dabei zu beachten ist.
Vim und die Zwischenablage: Grundlagen
Vim unterscheidet zwischen mehreren sogenannten Registern, also Speicherplätzen für Text. Neben den normalen Registern für Cut, Copy und Paste gibt es spezielle Registrier für die systemweite Zwischenablage. Das bekannteste Register für die Zwischenablage unter Unix-ähnlichen Systemen ist das + (Plus) Register und das * (Sternchen) Register. Diese beiden unterscheiden sich je nach System und Konfiguration. Das + Register adressiert meistens die systemweite Zwischenablage, während * oft die X11-Zwischenablage unter Linux anspricht.
Text aus der Zwischenablage in den Vim-Puffer einfügen
Um Text aus der Zwischenablage einzufügen, muss man das entsprechende Register vor dem Einfügekommando verwenden. Im Normalmodus kann man zum Beispiel "+p eintippen, um den Inhalt des Clipboards hinter den Cursor einzufügen. Analoges gilt für "*p. Das bedeutet, dass die Befehle im Normalmodus lauten:
"+p – Einfügen des Inhalts der systemweiten Zwischenablage hinter den Cursor
"*p – Einfügen des Inhalts der X11-Zwischenablage hinter den Cursor
Alternativ kann auch das Einfügen im Einfügemodus erfolgen. Hierzu kann man zuvor die gewünschten Registerinhalte in den Einfügemodus reinschieben, zum Beispiel mit + oder * .
Vorraussetzungen und mögliche Probleme
Damit diese Funktionen funktionieren, muss Vim jedoch mit Unterstützung für die Zwischenablage kompiliert sein. Das lässt sich überprüfen, indem man in Vim den Befehl :version eingibt und nach dem Feature +clipboard oder +xterm_clipboard sucht. Sollte dort -clipboard oder -xterm_clipboard stehen, ist die Unterstützung nicht vorhanden und die beschriebenen Befehle funktionieren nicht.
Als Alternative kann man in solchen Fällen den Programm gvim (die GUI-Version von Vim) verwenden, denn diese unterstützt in der Regel die Zwischenablage automatisch. Zudem existieren unter Linux oft Hilfsprogramme wie xclip oder xsel, mit denen man die Zwischenablage außerhalb von Vim manipulieren kann, falls die normale Vim-Version keine direkte Zwischenablageunterstützung bietet.
Fazit
Das Einfügen aus der Zwischenablage in Vim ist zwar möglich, erfordert aber das Wissen um die Register + und * sowie die passende Vim-Konfiguration. Wenn Vim mit Clipboard-Unterstützung kompiliert ist, kann man ganz einfach mit "+p oder im Einfügemodus mit + die Zwischenablage einfügen. Andernfalls empfiehlt es sich die GUI-Version von Vim oder externe Hilfsprogramme zu benutzen.
