1

我创建了一个函数来执行 make 因为我还想重绘屏幕。即使我使用的是“cw”命令,Quickfix 也会在每次执行后打开。我希望它仅在出现错误时打开。我知道有一个错误格式设置 - 但它似乎很复杂。有没有一种简单的方法来设置它?我在 OSX 上使用 clang 作为我的编译器。谢谢。

command! -nargs=* Make call s:Make(<q-args>)
function! <SID>Make(args)
    execute "silent make " . a:args . " | cw"
    redraw!
endfunction
4

1 回答 1

0

我最终只是从 qf 列表中删除了非错误行。留下的错误行格式正确,并根据需要链接回代码。这为我提供了 qf 中的简单(基本)错误列表以及 :sh 中的所有错误详细信息。

command! -nargs=* Make call s:Make(<q-args>)
function! <SID>Make(args)
    execute "silent make " . a:args
    call setqflist(filter(copy(getqflist()), 'v:val.valid == 1'))
    cw 
    redraw!
endfunction
于 2013-08-31T23:08:03.357 回答