Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Vim plugin for better XML/HTML navigation?

Tags:

html

vim

plugins

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).

like image 221
Thomas Avatar asked Apr 27 '11 12:04

Thomas


2 Answers

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
like image 107
sehe Avatar answered Oct 22 '22 11:10

sehe


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
like image 6
nelstrom Avatar answered Oct 22 '22 13:10

nelstrom