我一直在寻找可以让我在Vim的同一行上运行多个命令的东西,类似于在* nix系统或Windows的&
中使用分号分隔命令。有办法吗?
|
条将允许您执行此操作。来自:help :bar
'|'
可用于分隔命令,因此您可以将多个命令合二为一线。如果要在参数中使用'|'
,请在其前面加上'\'
。
示例:
:echo "hello" | echo "goodbye"
输出:
hello
goodbye
NB:您可能会发现~/.vimrc
不支持映射|
或\|
。在这些情况下,请尝试使用<bar>
。
在命令之间和之后放置<CR>
(回车/回车)。例如:
map <F5> :w<CR>:!make && ./run<CR>
请勿使用|
,因为:
某些命令在您使用|
后会出现问题
[|
在配置文件中不一致,请参见:help map_bar
您可以定义一个执行命令的功能。
function Func()
:command
:command2
endfunction
然后将其放在您的vimrc中。使用
运行该功能exec Func()
vim中的命令分隔符为|
。
我一直使用^J
通过按Ctrl + v,Ctrl + j来分隔多个命令。
您可以创建一个新文件,并在其上编写命令。然后是:so %
,表示源当前文件。