Vim错误格式和ncvhdl

Vim错误格式和ncvhdl,vim,errorformat,Vim,Errorformat,我正在尝试设置我的Vim环境,以便能够使用Cadence VHDL编译器(ncvhdl)编译VHDL代码。但是,我的errorformat字符串工作不正常。典型的ncvhdl错误行是: ncvhdl_p: *E,EXPBEG (tc_lg_and2-rtl-a.vhd,3|34): expecting the reserved word 'BEGIN' [1.2]. 我正在将errorformat设置为: set errorformat=ncvhdl_p:\ *E\\,%m\ (%f\\,%l

我正在尝试设置我的Vim环境,以便能够使用Cadence VHDL编译器(
ncvhdl
)编译VHDL代码。但是,我的errorformat字符串工作不正常。典型的
ncvhdl
错误行是:

ncvhdl_p: *E,EXPBEG (tc_lg_and2-rtl-a.vhd,3|34): expecting the
reserved word 'BEGIN' [1.2].
我正在将errorformat设置为:

set errorformat=ncvhdl_p:\ *E\\,%m\ (%f\\,%l\|%c)
有什么提示吗?
谢谢

这就是您想要做的:

set errorformat=ncvhdl_p:\ \*%t\\,%.%#\ (%f\\,%l\\|%c):\ %m
  • *
    字符需要转义
  • 使用
    %t
    识别指示错误类型的单个字符(Eerror/Warning/Lint)
  • 使用
    %.%#
    跳过字符串,如正则表达式中的
    *
有关更多信息:

:help errorformat

如果
example.txt
包含从命令输出复制的错误行列表,则可以使用设置
set makeprg=cat\example.txt
快速测试
errorformat
表达式。

Guillermo,下面的解决方案对您有效吗?@GuillermoConde在这种情况下,您应该将此答案标记为正确。