I'm wondering if anybody knows of a Vim plugin that can handle cursor movement between parent/child/sibling elements on either HTML or XML files (preferably both).
I like to use the default movement and (visual) text objects
vatatzc # create a fold for second parent tag with all child elements
yit6jvitp # yank this element child nodes and, 6 lines down,
# replace the element content with the yanked text
Matchit.vim does some of what you want. It jumps between opening and closing XML/HTML tags when you press the %
key. But there are some tags where it adds a special behaviour. For example, if your cursor is on a <ul>
tag, pressing %
will move your cursor forward to the next <li>
tag, and so on until you reach the closing </ul>
tag where %
causes you to jump back to the opening tag.
Matchit is distributed with Vim, so you don't have to install it. But you do have to enable it by putting this in your vimrc file:
runtime macros/matchit.vim
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With