807 Stimmen

Alle Zeilen in die Zwischenablage kopieren

Gibt es eine Möglichkeit, alle Zeilen aus der geöffneten Datei in die Zwischenablage des VI-Editors zu kopieren? Ich habe versucht yG aber es verwendet nicht die Zwischenablage, um diese Zeilen zu speichern.

Ist es also möglich?

1 Stimmen

1 Stimmen

Wenn Sie Windows verwenden und yank nicht funktioniert, lesen Sie die 17. Antwort von oben: stackoverflow.com/questions/1620018/

1voto

Lefty G Balogh Punkte 1575

Ich weiß, dass dies nach zehn Jahren geklärt sein sollte, aber die ersten beiden Antworten haben mir nicht geholfen, also habe ich weiter gegraben. Auf einem Redhat (Remote-Server) - Windows 10 (lokaler Rechner), wenn Sie nicht das ganze Ding mit der Maus auswählen können, stecken Sie fest, weil die üblichen Kopien nicht zwischen der Remote- und der lokalen Maschine Zwischenablage funktionieren.

Um also auf dem entfernten Linux zu kopieren und auf dem lokalen Windows einzufügen, geben Sie den primären Puffer mit der Option * und einen schönen doppelten Ruck machen

使用方法 gg" * yy .

0 Stimmen

Ubuntu Vim 7.4 funktioniert nicht, er löscht nur die allererste Zeile, legt aber nicht alle Zeilen in die Zwischenablage

0 Stimmen

Ubuntu Vim 7.4 funktioniert nicht, es löscht nur die allererste Zeile, aber legt nicht alle Zeilen in die Zwischenablage in :version habe ich "-xterm_clipboard". Nach der Installation von vim-gnome funktioniert Vim 8.0 mit :version +xterm_clipboard auch nicht

1voto

Nicolas Pardo Punkte 21

Sie können eine Abkürzung verwenden, wie diese hier:

noremap <F6> :%y+<CR>

Das heißt, wenn Sie im normalen Modus F6 drücken, wird die gesamte Datei kopiert und in die Zwischenablage eingefügt. Oder Sie können einfach im normalen Modus eingeben :%y+ und drücken Sie dann Enter .

0voto

Pearson Punkte 1008

Obwohl viele der oben genannten Antworten ausgezeichnet sind, hat keine dieser Lösungen bei mir funktioniert, weil ich die Standard-VIM-Installation verwende, die mit Ubuntu 16.04 geliefert wurde, und die Zwischenablage-Option nicht standardmäßig installiert ist. Außerdem wollte ich den Text in ein externes Programm einfügen.

Die Lösung hat funktioniert: Das Standard-Terminal von Ubuntu erlaubt es, den gesamten Inhalt zu markieren, indem man die Taste Edit dann Select All .

0voto

SergioAraujo Punkte 9813

Ich habe eine Funktion erstellt, die diese Aktion ausführt, die Sie in Ihre ~/.vimrc .

fun! CopyBufferToClipboard()
    %y+
endfun
nnoremap <Leader>y :call CopyBufferToClipboard()<CR>
command! -nargs=0 CopyFile :call CopyBufferToClipboard()

OBS: Wenn Sie neovim verwenden, benötigen Sie auch einen Clipboard-Manager wie xclip. Für weitere Informationen geben Sie neovim ein. :h checkhealth

Es ist auch wichtig zu erwähnen, dass nicht immer eine einfache y wird in die Zwischenablage kopiert, damit jede Kopie in die + der "Zwischenablage-Register" ist, versuchen zu setzen: :set clipboard=unnamed,unnamedplus . Für weitere Informationen siehe: :h unnamed .

Hier mehr Informationen auf vim wikia.

-1voto

smeric Punkte 23

Ich benutze Vim en PowerShell und als ich eine Datei kopieren musste kurzer Codeblock in die Windows-Zwischenablage;

Ich benutze :set nonumber um Zeilennummern zu entfernen, dann markiere ich den Code visuell mit dem Cursor und klicke mit der rechten Maustaste. Dann füge ich ihn an der gewünschten Stelle mit Strg + V .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X