我希望 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\ %<
执行它。