vim:make编译并运行C代码,如果它是成功的

编译C程序并运行它,我使用“:make”,但是如果编译成功,我也想运行编译的程序.

我写了

au FileType c setlocal makeprg=g++\ %\ \&\&\ ./a.out

在vimrc中,可以使用,但是当我的代码有一些错误时,我有一个vim错误,所以vim不要把光标放在好的线上.
我得到这个错误

E40: Can’t open errorfile
/tmp/vEtUQQ2/0

是否有解决方法,修复或其他方式来实现?

有一种纯粹的vim来做,但这有点烦人.

使用QuickFixCmdPost(Autocmd事件)检查’:make’运行后是否存在建筑错误.
如果没有错误,请运行新编译的程序.

autocmd QuickfixCmdPost make call AfterMakeC()
function! AfterMakeC()
    " No any error after make
    if len(getqflist()) == 0
        !./a.out
    endif
    " :~)
endfunction

您可能希望将脚本放在编译器插件中的命名空间下

相关文章

解决方案:解决linux下vim乱码的情况:(修改vimrc的内容)全...
Linuxvi/vim所有的UnixLike系统都会内建vi文书编辑器,其他的...
      vim正则匹配:空行:/^$/  /^[\t]*$/注释...
$select-editorSelectaneditor.Tochangelater,run'sele...
上次手贱忘了保存,这次就简单做个备忘吧,把踩过的坑记一下...
Linux之文本编译器小结vim的优势所有的UNIX-LIKE习通都会内置...