Vim %
操作符跳转到匹配的圆括号、注释结束和其他一些东西。但是,它不匹配XML标记(据我所知,也不匹配任何其他标记)。
使用Vim跳转到匹配的XML标记的最佳方式是什么?
注意:我真正想做的是复制XML文件中的一节,而不是手动查找匹配的标记。
发布于 2009-02-01 15:31:34
有一个名为matchit.vim的vim插件。你可以在这里找到它:http://www.vim.org/scripts/script.php?script_id=39。它的创建几乎与您所描述的目的完全相同。
安装它,将光标放在标记的主体上(而不是<>,否则它将与那些匹配),然后按%跳到其他标记。查看该脚本的页面,找出它还匹配哪些内容。
发布于 2011-10-31 15:12:37
OP指出,他真正想做的是复制一段XML,而不必找到匹配的标记。在普通模式下,使用yat<motion>p
很容易做到这一点,它将文本拖入其中并包含匹配的标签,然后粘贴它。yit<motion>p
几乎是一样的,但是它不包括外部标记。
字符串中的'y‘当然是正常模式下的"yank“命令。(:help y
)
a
或i
可用于在操作符(如y
)之后或在可视选择内进行对象选择。a
或i
后的符号指定应选择的内容。这里使用的对象类型t
表示一个SGML标签。(:help object-select
)。
当然,<motion>
只是指通过您选择的方式移动到某个地方,而p
会将拖拽出来的文本放在该位置。
发布于 2015-05-14 15:47:46
这只是我使用"yank","object-select“(标签选择)和”跳到最后一次被拖走的文本“的技巧。
yit`]
跳转到结束标记之前的右侧
和
yit
在开始标记后跳转到右侧
注意:这将更改默认寄存器的内容
https://stackoverflow.com/questions/500989
复制相似问题