Zugriff auf Zwischenablage mit Vim über SSH
Aus Salber.net
Um über SSH im Vim auf die lokale Zwischenablage zugreifen zu können, muss das richtig konfiguriert sein.
Hier die nötigen Schritte, um mit einem Mac OS X-Rechner über SSH auf einen Ubuntu-Server zuzugreifen:
- Am Client muss ein X11-Server installiert sein.
- Da die Übertragung der Zwischenablage über SSH mit Hilfe von X11-Forwarding funktioniert, muss auf beiden Seiten X11 vorhanden sein. Für Mac OS X kann XQuartz als X-Server verwendet werden.
- Am Server muss ein Vim mit X11-Unterstützung installiert sein.
- In Ubuntu gibt es dazu das Paket vim-gtk.
- "Trusted X11 forwarding" aktivieren
- Bei Verbindungen, wo die Verwendung der Zwischenablage gewünscht ist, mit
ssh -Y server
verbinden. Das-Y
sorgt für "vertrauenswürdiges X11-Forwarding", bei dem die X11 SECURITY extensions nicht verwendet werden. Das bewirkt vereinfacht gesagt, dass der Server vollen Zugriff auf die X11-Anzeige am Client bekommt, also auch auf X11-Fenster, die nicht zur SSH-Sitzung gehören. Daher sollte das nur bei vertrauenswürdigen Servern aktiviert werden. - Wenn man will, kann dieses Forwarding (für bestimmte Server) auch automatisch aktiviert werden, indem man in der Datei
~/.ssh/config
am Client im entsprechendenHost
-Abschnitt die OptionenForwardX11
undForwardX11Trusted
aufyes
setzt. Details dazu gibt es in man ssh_config. Für eine einzelne Verbindung kann das X11-Forwarding mitssh -x server
wieder aufgehoben werden.
- Bei Verbindungen, wo die Verwendung der Zwischenablage gewünscht ist, mit
Wenn nun am Server Vim gestartet wird, öffnet sich am Client X11 und die Zwischenablage des Clients steht zur Verfügung.
Hinweis: Aufgrund eines Fehlers in XQuartz funktioniert die Synchronisierung der Zwischenablage nicht auf Anhieb. Wenn man aber in XQuartz selbst etwas mit CMD+C
kopiert, z.B. irgendwas aus einem xterm
-Fenster, dann funktioniert es richtig.
Siehe auch: