在 VIM 中执行 shell 命令时,它会等待命令完成。您可以按Enter切换回 VIM,但只有在命令完成后才会切换回。如果 shell 任务运行时间较长,则返回 VIM 继续工作,稍后再检查 shell 输出会更有利。
最简单的方法是什么:
- 运行 Shell 命令 (
:!jshint %
) - 在命令完成之前切换回 VIM。
- 稍后再检查输出。(我发现最简单的方法是
:!
)
答案1
您可以执行任何命令,就像在普通 shell 中一样&
将其发送到后台:
:! (long_running command) &
然后返回 vim。
不过你应该注意,如果命令确实输出了某些内容,那么 vim 就会看起来很乱。如果你的命令没有输出任何内容,我认为你应该没问题。
如果您的命令确实输出文本,您可以考虑:
:! (long_running command >output 2>&1) &
如果你想在一个文件中stdout
拥有stderr
:! (long_running command >output.stdout 2>output.stderr) &
如果您希望将它们放在单独的文件中。