Wie hängt man in vim an die Zwischenablage an?

1

Ich weiß bereits, dass Sie etwas kopieren können, indem Sie Folgendes verwenden: (plus ein Ruckeln, Löschen usw. Befehl)

"a

Ich verstehe auch, dass Sie ein Register anhängen können mit:

"A

Außerdem verstehe ich, wie ich etwas in das Register der Zwischenablage kopieren kann:

"+

Die Frage Hier ist, was ich tippe, um das Register der Zwischenablage anzufügen?

Bearbeiten: Dies sollte wahrscheinlich nicht notwendig sein, aber meine VIM-Version lautet:

Vi IMproved 7.4 (2013 Aug 10, erstellt am 2. Januar 2014 um 19:39:59 Uhr) Riesige Version mit GTK2 GUI.

Jason Basanese
quelle
Das sollte nicht nötig sein, aber hier ist meine Vim-Version.
Jason Basanese
VIM - Vi IMproved 7.4 (2013 Aug 10, erstellt am 2. Januar 2014 um 19:39:59 Uhr) Große Version mit GTK2 GUI.
Jason Basanese
1
Ich sehe nicht, wie das ein Duplikat ist, ich verstehe weder das @ -Zeichen noch den let-Befehl.
Jason Basanese

Antworten:

1

Sie müssen verwenden

:let @+ .= your_expression

sehen Paketüberfluss . Wie Sie verstanden haben, besteht das Problem darin, dass Sie das nicht kapitalisieren können + Charakter.

Um beispielsweise eine Zeile in Ihrem Puffer in die Zwischenablage einzufügen, setzen Sie den Cursor auf die Zeile und ziehen sie mit yy. Dann tippen Sie :let @+ .= @0 zu rennen ( : ) der Befehl let Anhängen ( .= ) registrieren ( @ ) 0, die immer den letzten Ruck enthält, um sich zu registrieren + Dies ist eine Darstellung der Zwischenablage.

Um beispielsweise die Zeichenfolge "abc" zur Zwischenablage hinzuzufügen, geben Sie Folgendes ein :let @+ .= 'abc'.

(Zum Ändern der X11-Auswahl anstelle des Zwischenablagenregisters + Verwenden Sie Register * ).

vim hat eine enorm Befehlssatz. Wenn Sie beabsichtigen, es als Ihren Lieblingseditor anzunehmen, lohnt es sich, einige von ihnen zumindest oberflächlich zu kennen. Die meisten Vim-Benutzer verwenden wahrscheinlich nur ein Dutzend Befehle und sind nicht an ihrem Potenzial interessiert. Es ist schade, da solche Tools ihre Arbeitslast erheblich reduzieren können.

Du magst vielleicht Lerne Vimscript auf die harte Tour . Die integrierte vim-Hilfe ist auch im Internet unter sichtbar Quellschmiede mit dieser Seite auf Die Vim-Skriptsprache .

meuh
quelle
1
Eine Antwort im Format meiner Frage wäre erwünscht. Ich weiß nicht, was der let-Befehl oder das @ -Zeichen bedeuten oder tun. Eine Erklärung wäre sehr dankbar. Würde ich "+."
Jason Basanese
1

Nur die 26 genannten Register a to z kann angehängt werden. Aber das "unbenannte" Register " zeigt immer auf das zuletzt verwendete Register. Wir können dies zu unserem Vorteil nutzen, da dies auch bedeutet, dass der an ein benanntes Register angehängte Artikel auch ist angehängt in das "unbenannte" Register.

Hier ist ein Beispiel:

1| Line 1
2| Line 2
3| Line 3
  1. Ruck Linie 1 . "+yy.
    • Überprüfen Sie die Register mit :reg + ".
    • Sie werden feststellen, dass beide enthalten Linie 1 .
  2. Anhängen Zeile 2 "a" registrieren, indem Sie eingeben "Ayy. (Oder verwenden Sie ein beliebiges benanntes Register, das Sie möchten).
    • Überprüfen Sie die Register mit :reg a + ".
    • Registrieren + bleibt wie erwartet.
    • Registrieren a hat Zeile 2 angehängt, was vorher da war.
    • Registrieren " hat beide Linie 1 und Zeile 2 .

: Hilfe zitieren


Randbemerkung: Sehen Sie sich die Einstellung des "unbenannten" Registers in der Zwischenablage an, damit Sie nicht eingeben müssen "+yy jedes Mal. Wenn gesetzt, können Sie es einfach verwenden yy in die Zwischenablage ziehen.
:help clipboard
:help 'clipboard'
:help clipboard-unnamedplus
:help clipboard-unnamed

Matt Walsh
quelle