我想要很多这种改变
"\includegraphics{all.png}"
- >
"\includegraphics[width=\linewidth]{all.png}"
没有Sed而是Vim。当我这样做时,我总是意外地用空间替换缓冲区,因此浪费了很多键。我怎么能快速做到?
最少的钥匙赢了!
从Vim内部开始:将匹配项添加到缓冲区
:grep -r“includegraphics”Sections / *
答案 0 :(得分:3)
使用Vim在一组文件中执行某些操作的灵活方法是
将他们的名字列表收集到参数列表中(参见:help arglist
),
然后迭代执行所需的命令。
要执行第一步,请使用命令:args
,:argadd
和
:argdelete
。例如,将参数列表设置为all的名称
在当前目录及其中具有.tex
扩展名的文件
子目录,问题
:args ./**/*.tex
要执行第二步,请使用:argdo
命令:
:argdo %s/\\includegraphics\zs\ze{all.png}/[width=\\linewidth]/g
答案 1 :(得分:2)
替换所有缓冲区
:bufdo %s/\\includegraphics\{all\.png\}/\includegraphics[width=\linewidth]{all.png}/ge