4

vim 的快速修复功能的期望行为是什么?快速修复窗口 (:copen) 应该只包含编译器错误/警告还是应该显示整个输出?我想要前者,因为 make 的输出可能很长,但我得到后者,即使编译器设置为 gcc 和 g:compiler_gcc_ignore_unmatched_lines 设置。但是,quickfix 窗口中带有警告/错误的行会突出显示,并且 :cnext 会正确跳转到下一个问题。此外,没有问题的行有一个双管道符号前缀,因此 vim 似乎正确解析了 make 输出。

除了警告/错误之外,这些行是否显示并且可以隐藏,或者错误格式字符串与 make 输出不完全匹配?

我以 avrdude 5.11.1 源代码为例,但在许多其他项目中我得到了相同的结果。

设置编译器会自动调整错误格式字符串还是我必须始终手动设置该字符串?

谢谢

4

1 回答 1

1

这真的是你希望它工作的方式。我经常通过将 grep 添加到我的 makeprg 来过滤掉一些我不感兴趣的构建输出,但我也想要一些构建输出,即使它不是错误。

我认为 vim 不会从 quickfix 中删除非错误行。如果您不希望它们在那里,您需要自己过滤它们(或修改efm以将它们包含在错误中)。

于 2012-10-26T05:21:27.113 回答