为emacs编译模式捕获多行编译器输出

为emacs编译模式捕获多行编译器输出,emacs,compile-mode,Emacs,Compile Mode,我希望通过emacs编译hSpice pva。 但是,编译模式不能正确解析输出 这是pva编译器生成的错误消息(pvaE部分): 非常感谢您帮助修复此regexp 字符串中的空白语法错误。字符串中的空格语法错误,而不是“\s+”,应该是“\\s-+”。它应该是“\\s-+”而不是“\s+”,\*也应该是\\*。在Emacs中,字符串文字语法和regexp语法是完全独立的,因此在regexp中需要一个反斜杠,在字符串文字中需要另一个反斜杠来保护它。\*也应该是\\*。在Emacs中,字符串文字语法

我希望通过emacs编译hSpice pva。 但是,编译模式不能正确解析输出

这是pva编译器生成的错误消息(pvaE部分):


非常感谢您帮助修复此regexp

字符串中的空白语法错误。字符串中的空格语法错误,而不是“\s+”,应该是“\\s-+”

。它应该是“\\s-+”

而不是“\s+”,
\*
也应该是
\\*
。在Emacs中,字符串文字语法和regexp语法是完全独立的,因此在regexp中需要一个反斜杠,在字符串文字中需要另一个反斜杠来保护它。
\*
也应该是
\\*
。在Emacs中,字符串文字语法和regexp语法是完全独立的,因此在regexp中需要一个反斜杠,在字符串文字中需要另一个反斜杠来保护它。
Parsing include file 'include/constants.vams'
Parsing include file 'include/disciplines.vams'
*pvaE* Syntax error, unsupported syntax or illegal keyword at/before 'vco_cal_dec'
    file "/my/path/to/file/veriloga.va", line# 226

  (ari_var>=0 ari_var<= 7) : ari_var2=16;
              ^
(defvar verilog-compilation-error-regexp-alist '("^\*pvaE\* .+\n\s+file \"\\(.+\\)\", line# \\([0-9]+\\)"  1 2))
(add-to-list 'compilation-error-regexp-alist  verilog-compilation-error-regexp-alist)