In die System-Zwischenablage anstatt in den VIM-Puffer kopieren

19

Ich möchte Y und P so einstellen, dass sie anstelle von vim buffer direkt in die Zwischenablage des Systems kopieren und einfügen.

Ich möchte keine zusätzlichen Befehle. Nur die normalen, aber sie sollten in die Zwischenablage des Systems kopieren und einfügen und den vim-Puffer umgehen.

Wie kann ich das erreichen?

Ich lasse vim auf Ubuntu 10.10 laufen.

Owais Lone
quelle

Antworten:

9

Sie können Vim veranlassen, die Zwischenablage anstelle des Standardregisters zum Ziehen, Ablegen usw. zu verwenden, indem Sie den folgenden Befehl zu Ihrer ~ / .vimrc-Datei hinzufügen:

set clipboard+=unnamed

Sehen

:help clipboard
:help 'clipboard'
garyjohn
quelle
Ich hatte zu verwenden , set clipboard+=unnamedpluswie pro vim.wikia.com/wiki/Accessing_the_system_clipboard . Das *Register wird nicht in meine Zwischenablage kopiert, wenn ich vim von einem Terminal aus starte (was immer der Fall ist).
Cledoux
Für Arch (um 2016-04) habe ich Folgendes getan:set clipboard=unnamedplus
hodgkin-huxley
23

Sie müssen zuerst prüfen, ob vim mit Unterstützung für die Zwischenablage kompiliert ist, ausführen vim --version | grep clipund feststellen, ob sich ein +oder -vor clipboardund befindet xterm-clipboard.

Wenn die Zwischenablage unterstützt wird, sollte beim Kopieren und Einfügen in die *oder +-Register die System / X11-Zwischenablage verwendet werden. "*yyKopieren Sie also eine Zeile und "*pfügen Sie sie ein.

In Ubuntu 10.10 können Sie vim-gnome installieren, um die Unterstützung für die Zwischenablage zu kompilieren.

steabert
quelle
3
Ich habe sowohl diese als auch die oben beschriebene Methode ausprobiert, kann sie jedoch nicht in die Zwischenablage kopieren. In Vim funktioniert es jedoch einwandfrei.
Owais Lone
8

probieren Sie es aus:

"+y   and    "+p

Das funktioniert bei mir unter Ubuntu.

wliao
quelle
1
Dieser funktioniert für mich, nicht die * -Version. Warum berichten Menschen über verschiedene Dinge?
Trusktr
6

Das Standard-VIM in Ubuntu ist vim-tiny, das nicht für die Unterstützung der Systemzwischenablage kompiliert wurde. Sie müssen das vollständige VIM und die Gnome-GUI installieren, um Unterstützung für die Zwischenablage zu erhalten:

sudo at-get install vim-full vim-gnome

Nachdem Sie diese beiden Pakete installiert haben, können Sie die von Akira und wliao erwähnten Befehle verwenden.

dotancohen
quelle
0

in die Zwischenablage ziehen

 "*y

Einfügen aus der Zwischenablage:

 "*p

für mehr Informationen:

 :help clipboard
Akira
quelle
Es funktioniert nicht Funktioniert einwandfrei in Vim selbst, scheint sich jedoch nicht auf die Zwischenablage des Systems auszuwirken.
Owais Lone
Oh, es funktioniert nicht, da meine Version 7.2 ist und dies nur in 7.3 unterstützt wird.
Owais Lone
Warum dann nicht upgraden?
Harrymc
Es funktioniert bei mir genau wie beschrieben, außer mit +. "+ JJ .... Warum?
Trusktr
@trusktr: schau dir die antwort von steabert an.
Akira
0

In meiner Ubuntu 18.04 (GNOME Shell)aktivierten Zwischenablage:

sudo apt-get install vim-gnome

vim --version|grep clipboard
+clipboard         +jumplist          +persistent_undo   +virtualedit
-ebcdic            +mouseshape        +statusline        +xterm_clipboard
MD. Mohiuddin Ahmed
quelle