Vim errorformat <nul>字符</nul>

时间:2013-07-29 13:51:56

标签: vim errorformat

ghc-mod产生的错误在一行上,其中每一行可能包含<Nul>字符,由vim呈现为\@。我想解析这个for quickfix,但无法看到这对errorformat有什么用处:<Nul>字符似乎截断%m,好像它是一个新行,但是使用多行语法似乎无法捕捉到这种情况。

有没有办法让errorformat解析<Nul>

1 个答案:

答案 0 :(得分:2)

在Unix环境中不小心输出空字符的程序只是 begging 的麻烦。

不,我发现在使用'errorformat'解析输出时,Vim无法处理空字符。 (可以通过在CTRL-V前加上^V^@来为错误格式字符串添加NUL,即'makeprg',但这没用。)

不适合Vim错误格式的输出的解决方法是向:make程序添加过滤器,然后使用:set makeprg=ghc-mod\ lint\ %\ \\\|\ tr\ -d\ '\\0' :make 填充quickfix列表:

{{1}}

此提示可在:h error-file-format的最后找到。

一个更好的解决方案就是不要打扰并使用流行的ghcmod插件来执行此操作等等。