在正常模式的vim中,我可以使用%移动到右括号。是否有相当于我可以在搜索和替换命令中使用的东西?假设我有一些乳胶代码,我想从中删除斜体。在一个简单的场景中,:%s/{\\it \(.*\)}/\1/gc
之类的东西可以完成这项工作,但实际上这将停留在第一个结束大括号,它很可能会关闭其他东西,就像我可能{\it some text in italics {\bf and some in bold also} ...possibly so many other commands with curly braces... and finally my closing curly brace:}
一样。
答案 0 :(得分:0)
这可能是“写一个小宏并使用搜索”的意思,但你可以使用normal
命令的普通模式命令,例如:
:g|{\\it|normal /{\\it^M%mm%5x`mx
:g
将在匹配模式 {\it
的每一行上触发,并且对于每个匹配,它会运行正常模式命令/{\\it
以跳转到正确的位置,%
到达右大括号,mm
在结束大括号,%
跳回到开头,5x
删除打开命令,然后跳回标记,然后x
删除结束命令。
这不能处理的是一行上的几个{\it
开口。 (但你可以再次运行它)。比学习Perl更快。