Wie wähle ich visuell den Textblock aus, den ich gerade in Vim eingefügt habe?


13

Normalerweise muss ich Codeausschnitte zwischen meinen Quelldateien verschieben / kopieren. Nachdem ich einen Textblock eingefügt habe, muss ich normalerweise eine Operation auf diesen Block anwenden, z. B. das erneute Einfügen mit =.

Gibt es eine Möglichkeit, den gerade eingefügten Textblock einfach visuell auszuwählen, ohne dies manuell zu tun?

Antworten:


21

Die Markierungen '[und ']begrenzen die erste und letzte Zeile des zuvor geänderten oder gezerrten Texts. Die Entsprechungen `[und `]begrenzen die jeweiligen Zeilen und Spalten.

Damit können Sie den zuletzt geänderten Zeilenblock mit visuell auswählen '[V']und dann den =Befehl anwenden .

Da ein Einfügen den Cursor jedoch in der ersten Zeile des eingefügten Inhalts belässt, können Sie auch einfach eine Bewegung angeben, auf die der =Befehl angewendet werden soll, in diesem Fall auf die ']Marke. Das wäre ='].


Diese Antwort beschreibt eine Methode, die für alle Arten von visuellen Auswahlen (einschließlich blockweiser visueller Auswahlen) funktioniert
— Adam Byrtek,

14

Mit dieser Zuordnung können Sie den gerade eingefügten Text erneut auswählen:

nnoremap gV `[v`]

Aber du hättest [pund ]pstattdessen verwenden sollen.

Sehen :help [p.


2
+1 für [pund]p
— lisowski.r

3

Vim enthält die folgenden hilfreichen Zuordnungen:

`[

und

`]

Wählt das erste und das letzte Zeichen des zuvor geänderten Texts aus.

Die folgende Tastenfolge (im normalen Modus) wählt den zuletzt eingefügten Text aus:

`[v`]

Für einen schnelleren Zugriff können Sie ein Mapping einrichten, zum Beispiel :

nnoremap gp `[v`]
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.