问题标签 [errorformat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vim - 类型在消息中间的错误格式
给定这样的 C# 编译器消息,当打开警告作为错误时:
我希望将其errorformat
标记为 type warning而不是 type error。
我已经有这样的价值观errorformat
:
(当你看到^M
时,知道它是我文件中的实际控制代码,但它不能很好地传输到网络。这足以表明 C# 编译器输出\r\n
而不仅仅是\n
,这是一个轻微的麻烦。)
这是我第一次尝试的:
Vim 哀叹它无法处理%m
一个字符串中多次出现的 。
因此,我开始对不寻常的包含断言的正则表达式产生兴趣。这是我尝试过的:
这没有用;它得到类型“C”(可能来自“CS1572”)和消息“W”(%t
应该消耗的值)。(在其他一些实验中,省略了%t
,证明有必要消耗断言中的其余字符串,否则它会%m
在那时停止匹配。非常奇怪。)
意识到它并没有将它们视为正则表达式组,而是以一种特殊的线性方式,然后我尝试反转断言并得出以下结论:
不幸的是,这些也失败了,得到类型“C”而不是“警告”,并且(尽管最终得到完整的消息)^M
在字符串的末尾留下了。
errorformat
我已经用尽了我在命令中能想到的可能性;还有什么其他方法可以解决这个问题,还是我需要求助于运行另一个脚本来包装它,这会将格式变成 Vim 可以处理的格式?
(所有这些都是为了在快速修复列表中获得“警告”而不是“错误”这个词。可悲,不是吗?)
vim - 设置 vim 错误格式的问题
我的编译器和 lint 工具以两种不同的格式输出错误。我决定逐步设置我的错误格式,首先用于 lint,然后为编译器添加模式。
这是我要匹配的 lint 输出行
我的第一次尝试是
它奏效了。
然后我尝试如下设置
它停止工作。
有谁知道是什么问题?我确实阅读了文档,但没有帮助。
任何帮助表示赞赏。
vim - Vim:忽略但显示带有错误格式的模式?
我的编译器在通用file:line:column message
格式上生成错误,但我的问题是我的测试输出包含许多与此模式匹配的时间字符串。例如:
在带有 message2013-01-01 01
的行23
和列中被视为文件中的错误。00
Starting test foo
%-G
我可以使用错误格式字符串中的正则表达式过滤掉时间字符串,但这也会从快速修复窗口中删除该行。
有没有办法制作cnext
和cprevious
跳过与模式匹配的行(将它们视为无效)但仍将它们包含在输出中?
vim - 在 Vim 中对齐/对齐错误格式输出
我使用 Vim/gVim 在 javascript (node) 中进行编程。我在我的文件类型插件中将 jslint 连接为 makeprg。这是错误格式:
这是 jslint 的输出:
这是快速修复窗口的输出:
在列号之后,我想将其保留为 2 位数字(我希望文件的错误不超过 99 个!),使其看起来像:
我想这也会影响行号 0-9。是否可以有条件地填充输出?
vim - vim 中的多行错误格式
我正在尝试匹配这样的 C 错误消息:
到目前为止,我想出了这个:
它打开文件并将我置于第一个错误,但我必须键入:cn
四次才能得到第二个错误。我试图设置多行错误,但到目前为止我的错误字符串不起作用:
你有更好的主意吗?
vim - vim 错误格式中非常长的文件名
我一直在使用用于 vim 的 LaTeXBox 插件为 LaTeX 处理错误格式,并且我发现了一个我无法解决的问题。
LaTeX 生成相对结构化的日志文件,其中类似 Lisp 的括号语法用于解析文件,例如:
起初,这看起来是一个简单的问题,我们可以使用%P/%O/%Q
指令 with%r
和%f
来解析文件名。对于简单的.tex
文件和项目,这很好用。但是,在某些情况下,这些行可能会在文件名完成之前中断。例如,我们可能会得到这样的东西:
上面的大部分输出都可以正确解析,但是,如上所示,其中一条路径已损坏,将不会被解析。一个这样的错误足以破坏文件堆栈,从而导致日志文件的错误解析。
这个问题可以用更一般的方式来说明:我想使用错误格式来解析跨行的文件名:
我正在寻找解决这个问题的方法,或者使用更多的 vim 魔法(也许我错过了一个不错的错误格式选项?),或者使用 or 的一些latex
选项pdflatex
。任何解决方案表示赞赏。
vim - Vim 错误格式:在消息字符串中包含部分表达式
使用 vim 的 errorformat 语法,有没有办法在过滤结果中使用部分消息?
例如,除了错误本身之外,一些链接器错误没有任何明确的内容可以将它们区分为在线错误:
或者
使用错误格式:
会正确捕获并显示这两种情况,但会错误地匹配许多其他情况(任何以“[string]:[number]:”开头的行)。
或者,明确指定它们:
消除了误报,但“消息”变得不那么有用了——不再包括实际错误(只是它之后的任何内容)。
我缺少处理这种情况的语法中的任何内容吗?
理想情况下,我希望能够说出以下内容:
... StartMessage 和 EndMessage 之间匹配的所有内容都用作错误消息。
vim - jshint 的 Vim 错误格式(带有示例)
我正在尝试为此编写 efm:
但我想我错过了单独一行文件的概念。有人可以帮我解决这个问题吗?
这是我到目前为止所拥有的,但它不起作用:
谢谢!
解决方案:
vim - Vim 错误格式人物
产生的错误ghc-mod
在一行上,其中每一行都可能包含由 vim<Nul>
呈现的字符。\@
我想解析它以进行快速修复,但看不出这可能如何工作errorformat
:<Nul>
字符似乎被截断%m
,就好像它是一个新行,但使用多行语法似乎无法捕捉这种情况。
有没有办法进行errorformat
解析<Nul>
?
vim - 是否有一个 vim 错误格式可以捕获函数名而不是行号?
我正在尝试编写一个errorformat
for vim 来捕获函数名称并将其转换为行号,以便错误至少指向错误的一般位置。仍然能够在错误消息中包含函数名称将是理想的。
这是我想捕获的示例错误消息
所以我希望它参与function()
其中并将其转换为定义函数的行号,这可能需要某种 ctags 集成。这可能吗?