Vim makeprg 带有多个命令(cd + make)

Vim makeprg 带有多个命令(cd + make)

我希望 vim 使用两个命令运行makeprg,即:cd\ cmt;make; 但是当我这样做时,它会卡在 make 命令上。

需要澄清的是,当我说卡住时,我的意思是它结束了编译但没有返回vim,我需要点击 Cc 来取消编译,但它也会破坏编译器对编译日志的解释,我无法获得cwin对编译错误的解释。

有任何想法吗?

答案1

您应该使用这种表格:

set makeprg=cd\ cmt\ &&\ make

如果你不想逃避空间:

let &makeprg = "cd cmt && make"

- - 编辑 - -

首次尝试时遇到的问题在于,执行命令的 shellmakeprg是非交互式的,因此在执行完命令后应该退出。连续向其发送两个命令似乎不是一个好主意。

答案2

尝试这个

set makeprg=javac\ %\ \&\ \java\ %<

javac\ %将编译您的代码并 java\ %<执行它。

相关内容