Jak pozostać w trybie wizualnym po identyfikacji za pomocą shift +> w vimie?


18

Prąd opuszcza tryb wizualny po jednorazowym wcięciu, co jest bardzo denerwujące.


5
Aby wciąć więcej niż jeden raz, po prostu użyj .klawisza, aby powtórzyć ostatnią operację
barbaz

Za pomocą . jest dobry. Ale czasami trzeba wykonać inną operację z wybranym kodem po indentig, na przykład yanking. I musisz wybrać wszystko od nowa, co jest do bani
Santi

Odpowiedzi:


25

Możesz użyć polecenia trybu normalnego, gvaby podświetlić poprzedni wybór wizualny. Dlatego możesz użyć następujących mapowań:

:vnoremap < <gv
:vnoremap > >gv

:vnoremapKomenda konfiguruje mapowanie, który będzie działał tylko w trybie wizualnym. W związku z tym ponawiasz polecenia trybu wizualnego <i >, aby wykonać wcięcie i natychmiast ponownie wybrać poprzedni wybór wizualny.


4
To jest niepoprawne. Należy użyć, vnoremapponieważ vmapbędzie rekurencyjnie mapować i się
zepsuje

3
@texasbruce: Działa mi dobrze z vmap, jednak edytowałem odpowiedź (i mój własny .vimrc), aby używać vnoremap, ponieważ jest to oczywiście bezpieczniejsze.

5

Używanie kropki „.” powtórzy wcięcie wcześniej zaznaczonego tekstu, jeśli był to najnowszy tekst edycji. Nie powoduje to ponownego wyboru tekstu, ale działa również dobrze.

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.