我使用[[
和]]
在Python中的类之间跳转。我还想在同一缩进级别的HTML标记之间跳转。
例如:
<div>
<li>Hello</li>
<li>Hello</li>
</div>
<div>
<li>Hello</li>
<li>Hello</li>
</div>
如果光标位于第一个div元素上,当我按div
时,它应该转到第二个]]
。如果光标位于li
元素上,则应转到下一个li
元素,然后转到下一个div
元素。
我如何在.vimrc中映射它?
答案 0 :(得分:1)
在正常模式下按,时,如果光标位于<div
,则移至下一个<div>
,否则移至下一个<li
或{ {1}} 强>
如果光标在<div
上,请转到下一个<div
。否则,请转到下一个<div
或<li
<div
使用function! NextTag()
call search( getline('.') =~? 'div' ? '<div' : '<\(li\|div\)')
endfunction
nnoremap , :call NextTag()<cr>
在vimrc中添加上述内容,然后使用:e $MYVIMRC
重新加载
假设:一个简单的标记结构,就像您发布的示例一样。嵌套的div和li可能无法正常工作。 div和li并没有出现在同一行