vim - execute - shell命令?

时间:2016-07-10 00:29:15

标签: bash shell vim

我想添加一个映射,它将在新窗口中显示shell命令的输出。 问题是将光标移动到文件顶部时命令被中断。

:execute ":new \| set nonu \| 0r ! ls \| normal! gg"

我发现问题出在execute命令中,该命令将符号!中的部分视为 shell命令ls | normal! gg)的其余部分这就是它在执行时显示错误的原因。

如何预防?

2 个答案:

答案 0 :(得分:2)

当命令不接受<bar>分隔命令时。修复此问题的常规方法是将命令包装在执行中,该执行除了条

之外
:execute ":new \| set nonu \| execute '0r ! ls' \| normal! gg"

答案 1 :(得分:0)

我不确定你是否可以通过:execute取消它。但您可以使用Clam(例如:Clam ls)作为基础并编辑plugin/clam.vim,以便在执行shell命令后触发gg

相关问题