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.