ste*_*obe 10 regex vim scripting replace
我有一个命令在vim中整理代码中过多的空格:
" to tidy excess whitespace
map <leader>1 :execute ':%s#\s\+$##g'<CR>
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我打开了10个选项卡或缓冲区,我该如何将这个命令应用于所有这些命令,而不是仅仅去每个选项卡并应用命令.
假设您的所有缓冲区都在缓冲区列表中,那么您的地图就可以如此简单
" to tidy excess whitespace
map <leader>1 :execute ':bufdo! %s#\s\+$##g'<CR>
Run Code Online (Sandbox Code Playgroud)
未经测试,但应该这样做:
:tabdo %s/SEARCH/REPLACE/ge | update
Run Code Online (Sandbox Code Playgroud)
如果文件被命令修改,则SEARCH在所有选项卡中替换REPLACE并写入文件,如果未找到任何内容,则不显示错误消息.
如果您想在每次更换前询问,请在标志中添加"c".
另见:help :argdo,:help :windo和:help :bufdo.