编辑 LaTeX 文档时,我希望在具有 \begin{‹environment›}
的每一行的末尾附加 % (fold)
字符串其中的命令(适用于任何 ‹environment›
)。
我尝试过使用以下 Vim 命令:
:g/\\begin\{\w+\}/ s/$/\% \(fold\)/
但是对于已经存在的行,它会将 % (fold)
字符串加倍。
如何修改上面的命令以插入 % (fold)
仅当它不存在时?
最佳答案
只需修改:global
(或:substitute
)命令中的模式
只匹配不以 % (fold)
:
:g/\\begin{\w\+}/ s/\(% (fold)\)\@<!$/% (fold)/
或
:g/\\begin{\w\+}\(.*% (fold)$\)\@!/ s/$/% (fold)/
关于regex - 一个 Vim 命令,用于插入一段文本以匹配行,除非它已经存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8923552/