我一直试图找到一些东西,可以让我在Vim中在同一行上运行多个命令,类似于在*nix系统中使用分号分隔命令或在Windows中使用&。有办法做到这一点吗?
条形|可以做到这一点。来自:help:bar
'|'可用于分隔命令,因此您可以在一个命令中给出多个命令 线。如果你想在参数中使用'|',在它前面加上'\'。
例子:
:echo "hello" | echo "goodbye"
输出:
hello
goodbye
注:你可能会发现你的~/。Vimrc不支持映射|或\|。在这些情况下,尝试使用<bar>代替。
您可以定义一个执行命令的函数。
function Func()
:command
:command2
endfunction
把这个放到,比如说,你的vimrc。使用
exec Func()
在命令之间和之后放置<CR>(回车回车)。例如:
map <F5> :w<CR>:!make && ./run<CR>
不要使用|,因为:
如果在某些命令后面使用|,则会出现问题 |在配置文件中不一致,请参阅:help map_bar
我想这可能会帮助一些人在链上做替换,一个失败了
从注释中
%s/word/newword/ge | %s/word2/newword2/ge
当没有找到字符串时,可以使用e标志忽略错误。
推荐文章
- 为什么Vim使用~扩展名保存文件?
- 如何添加一个设置路径只执行批处理文件?
- 如何在Vim或Linux中将空格转换为制表符?
- 使用Bash在每个子目录中执行一个操作
- 我如何使用vimdiff来解决git合并冲突?
- 在Vim中删除当前缓冲区的文件名/路径
- Git在终端提交时打开VIM,但无法返回终端
- 请参阅编辑器中的换行符和回车
- 如何在NERDTree中显示隐藏文件(以句点开始)?
- 如何复制一个选择到OS X剪贴板
- 如何删除(不削减)在Vim?
- Vim:在可视模式下快速选择文本块的方法
- 是否有vim命令来重新定位一个选项卡?
- MacVim和普通Vim有什么区别?
- 有什么方法可以在Vim中查看当前映射的键吗?