Jak wizualnie wybrać blok tekstu, który właśnie wkleiłem w Vimie?


13

Zwykle muszę przenosić / kopiować fragmenty kodu między moimi plikami źródłowymi. Po wklejeniu bloku tekstu zwykle muszę wykonać pewne operacje na tym bloku, takie jak ponowne użycie go =.

Czy istnieje sposób łatwego wizualnego wybrania bloku tekstu, który właśnie wkleiłem bez robienia tego ręcznie?

Odpowiedzi:


21

'[I ']znaki wyznaczają pierwszą i ostatnią linię wcześniej zmieniona lub yanked tekstu. Odpowiedniki `[i `]ograniczają odpowiednie linie i kolumny.

Za pomocą tego możesz wizualnie wybrać ostatnio zmieniony blok linii za pomocą, '[V']a następnie zastosować =polecenie.

Ponieważ jednak wkleja kursor pozostawia kursor w pierwszym wierszu wklejonej treści, możesz również określić ruch, w którym =polecenie powinno zostać zastosowane, w tym przypadku do ']znaku. To by było ='].


Ta odpowiedź opisuje metodę, która działa dla wszystkich typów selekcji wizualnych (w tym wizualnych blokowych): stackoverflow.com/questions/4312664/...
Adam Byrtek

14

To mapowanie umożliwia ponowne wybranie właśnie wklejonego tekstu:

nnoremap gV `[v`]

Ale powinieneś był użyć [pi ]pzamiast tego.

Zobaczyć :help [p.


2
+1 za [pi]p
lisowski.r

3

Vim zawiera następujące pomocne mapowania:

`[

i

`]

Które wybierają odpowiednio pierwszy i ostatni znak uprzednio zmienionego tekstu.

Następująca seria klawiszy (w trybie normalnym) wybierze ostatnio wklejony tekst:

`[v`]

Aby uzyskać szybszy dostęp, możesz skonfigurować mapowanie, na przykład :

nnoremap gp `[v`]
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.