Jak skakać między pasujące znaczniki (takich jak <div>
, <span>
itd) podczas edycji dokumentów HTML / XHTML / XML podobnie jak %jest używany, aby przejść między dopasowywania nawiasów?
Jak skakać między pasujące znaczniki (takich jak <div>
, <span>
itd) podczas edycji dokumentów HTML / XHTML / XML podobnie jak %jest używany, aby przejść między dopasowywania nawiasów?
Odpowiedzi:
Vim jest wyposażony w makro o nazwie matchit, które robi to za ciebie; wszystko, co musisz zrobić, to aktywować go za pomocą runtime macros/matchit.vim
vimrc. Umożliwi to skakanie np. Z a <div>
na jego </div>
. Zauważ, że twój kursor musi znajdować się w nawiasach kątowych; jeśli jesteś na nawiasach kątowych, %przeskoczysz z jednego nawiasu na drugi jak zwykle.
Możesz przełączać się między tagami za pomocą operatorów wizualnych, na przykład:
Kursor powinien przeskoczyć do pasującego zamykającego znacznika html / xml. Aby przejść do tyłu od zamykającego znacznika, naciśnij olub, Oaby przejść do przeciwnego znacznika.
Teraz możesz wyjść z trybu wizualnego, naciskając Esc, zmieniając go club kopiując y.
Aby zarejestrować tę akcję w rejestrze, naciśnij, qqaby rozpocząć nagrywanie, wykonaj przeskakiwanie do znaczników jak powyżej (w tym Esc), naciśnij, qaby zakończyć. Następnie, aby wywołać skok, naciśnij @q.
Zobacz więcej pomocy przy :help visual-operators
lub :help v_it
:
at
<tag> </tag>
wiersza (znaczników)it
<tag> </tag>
blok wewnętrzny
Alternatywnie użyj wtyczki, takiej jak matchit.vim lub surround.vim .
Zobacz też:
xmledit
( Http://vimawesome.com/plugin/xmledit ) Wtyczka pozwala skakać pomiędzy otwartymi i bliskich za pomocą tagów
Często <localleader> będzie \, więc możesz skakać
UWAGA: W przeciwieństwie matchit
do tego, nie musisz umieszczać kursora wewnątrz tagu. Umieszczenie go bezpośrednio na <
lub >
jest w porządku dla xmledit
wtyczki. :)
UWAGA 2: Wadą jest to, że nie można jej używać w trybie wizualnym. Ale to nie jest wielka sprawa, ponieważ zawsze możesz wybrać cały tag za pomocą at.
>
, będzie działał jak wcześniej, jeśli go używaszdiv
, będzie działał tak, jak chcesz).