Wie im Titel erwähnt, kann ich nicht von vim in die Zwischenablage des Systems kopieren. Viceversa funktioniert, Kopieren von außen und Einfügen mit p
ist in Ordnung.
Ich habe die Zwischenablage-Unterstützung installiert, die vim-Version ist 7.3.429:
$ vim --version | grep clip
+clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
+xsmp_interact +xterm_clipboard -xterm_save
Ich habe:
set clipboard=unnamedplus
in meinem .vimrc
und es wird gesetzt, wenn ich tue:
set clipboard?
oder
:echo has('clipboard')
Ich benutze Ubuntu 12.04 LTS und vim inside gnome-terminal
(aber auch GVim hat das gleiche Problem). Irgendeine Idee?
Vielen Dank
clipboard+=unnamedplus
etwas eingestellt habe, das in der Standardeinstellung deaktiviert war. Das Umstellen aufclipboard=unnamedplus
(z. B. Entfernen anderer Einstellungen) hat bei mir funktioniert.set clipboard+=unnamed
&set clipboard+=unnamedplus
funktioniert nicht, wenn Sie mit y und p die System-Zwischenablage freigeben.:set clipboard?
==clipboard=autoselect,exclude:cons\|linux,unnamed,unnamedplus
; Nachdem ich das erste entfernt habe+
, das istset clipboard=unnamed
undset clipboard+=unnamedplus
, und es funktioniert !!:set clipboard?
==clipboard=unnamed,unnamedplus
Antworten:
Das funktioniert bei mir (Ubuntu 13.10):
Installieren Sie vim als vim-gtk neu:
Wählen Sie mit der Maus aus, was Sie möchten, und geben Sie Folgendes ein, um es in die Zwischenablage zu kopieren :
aus der Zwischenablage einfügen :
Ich weiß nicht warum, aber ein Vergleich der Ausgabe von
vim --version
zeigt, dass die übliche VIM-Installation im Vergleich zu VIM-GTK ziemlich eingeschränkt ist. Das Ersetzen von vim durch vim-gtk hatte keine Auswirkungen auf die Plug-Ins.Weitere Informationen:
quelle
xterm_clipboard
unterstützt,"+p
funktionieren jedoch nicht in regulärem VIM. Anstatt in die Zwischenablage zu kopieren, wird die Anzahl der ausgewählten Zeilen erhöht.vim-gtk
letztendlich in 14.04.4 für mich funktioniert, aber ich habe die Dinge ein bisschen anders erlebt als andere Kommentare. Vor dervim-gtk
Installation wurde vim angezeigt-xterm_clipboard
(dh nicht aktiviert). Nach der Installationvim-gtk
zeigt es (+ xterm_clipboard). Ich überprüfe das mitvim --version | grep clip
. Wie auch immer, macht Sinn, dass Sie brauchen+xterm_clipboard
!Ich werde die ursprüngliche Antwort unten belassen, weil es für andere wichtig sein kann, die nach dieser Frage suchen.
Kurz gesagt, es scheint keine einheitliche Antwort zu geben, aber mit 'set clipboard = unnamedplus' sollte entweder '* p' oder '+ p' in der Zwischenablage "system" funktionieren.
'* p' ist mit ziemlicher Sicherheit das, was Sie wollen. ( von hier )
vim ist ein cli-programm. Bei Verwendung innerhalb von gnome-terminal (oder einem beliebigen Terminal-Emulator) wird crtl + c (oder eine beliebige Tastenkombination) zuerst vom Terminal-Emulator, dann von der Shell und schließlich vom Programm (in diesem Fall vim) verarbeitet. vim und ctrl + c funktionieren mit ziemlicher Sicherheit nie, da ctrl + c ein SIGINT-Signal an die ausgeführte Task sendet. vim verwendet SIGINT, um andere Dinge wie das Beenden des Einfügemodus oder das Beenden von Suchfunktionen zu stoppen.
Mit anderen Worten. Strg + C wird niemals an VIM übergeben. SIGINT wird an VIM übergeben. SIGINT hat andere Verwendungszwecke in vim, sodass das Kopieren wahrscheinlich nicht funktioniert (und selbst wenn Sie es erzwingen können, ist dies keine gute Idee).
Versuchen Sie stattdessen, bei Strg + Umschalt + C und Strg + Umschalt + V zu bleiben (es gibt andere, aber ich glaube, diese fügen Text in die Zwischenablage des Systems ein).
Um fair zu sein, ich weiß nicht viel über Gvim.
quelle
ctrl-c
OUTSIDE VIM und dem Einfügen mitp
, aber in VIM weiß ich, dass ich verwenden mussy
.. Ich werde meine Frage bearbeitenVerwenden Sie in Ihrem vimrc:
Hiermit können Sie manuell mit der Maus auswählen und kopieren.
quelle
Zusätzlich zur akzeptierten Antwort müssen Sie, wenn Sie remote über SSH arbeiten (z. B. über
tmux
mehrere Fenster mit unterschiedlichenvim
Prozessen, zwischen denen Sie kopieren möchten), auch Ihre X-Anzeige exportieren, davim
diexterm-clipboard
Schnittstelle zwischen verschiedenen Prozessen verwendet wird. Sie können die X-Anzeige einstellen, indem Sie ausführenDies muss ausgeführt werden, bevor
vim
es gestartet wird, und unter jeder anderen Shell, die Sie haben.quelle
Ich habe auf Ubuntu 16.04 gefunden, dass ich
vim-gui-common
installiert haben muss, damit"+y
es funktioniert.quelle