问题标签 [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.
bash - 如何在 Vim 中使用 quickfix 调试 Bash 脚本
我每天都使用 Vim 编写 shell 脚本。我一直在阅读有关quickfix窗口的信息,我认为它可以提高我在编辑-运行-修复周期中的工作效率。
如果我理解正确,我必须编写自己的errorformat
函数,以便 Vim 能够捕获错误并将它们引入quickfix窗口。但这似乎真的很复杂。
在编写 Bash 脚本时,是否有更简单/更方便的方法来利用 Vim 中的快速修复窗口?
vim - 如何使用 vim 的错误格式 %* 匹配正则表达式 .* 等价物?
我想使用 vim 的错误格式来匹配我的 makeprg 的输出。但是看起来匹配应该是完整的匹配,因此我需要使用.*
匹配器之类的正则表达式。到目前为止,我找到%*[^ ]
了最接近的,但我也需要匹配空格。
更具体地说:我想匹配这样的输出:
到目前为止,我尝试过这个(不工作):
vim - Vim errorformat and ncvhdl
I am trying to set up my Vim environment, to be able to compile VHDL code by using the Cadence VHDL Compiler (ncvhdl
). However, my errorformat string is not working properly. A typical ncvhdl
error line is:
I am setting the errorformat to:
Any hints out there? Thanks!
vim - vim errorformat中的一些高级模式是什么意思?(%s, %+, %\\@=)
我尝试阅读:help errorformat
和谷歌搜索(主要是stackoverflow),但无法理解那里提到的一些模式:
%s
- “指定要搜索的文本以定位错误行。[...]”- 嗯,首先,试图完全理解这句话,我应该把“要搜索的文本”放在哪里
%s
?之前呢?或者,我不知道,它是否会污染整个模式?怎么回事? - 其次,这个模式实际上是做什么的,它与模式中的常规文本有什么不同,比如某种
set efm+=,foobar
?这里的“foobar”对我来说也是“要搜索的文本”......:/
- 嗯,首先,试图完全理解这句话,我应该把“要搜索的文本”放在哪里
%+
- 例如,我在一个问题中看到过类似的东西:%+C%.%#
- 这是否意味着整行将被附加到
%m
早期/后期多行模式中使用的 a 中?如果是,那么如果没有%.%#
(== regexp.*
)怎么办,但是,比方说,%+Ccont.: %.%#
- 这样的东西是否可以仅捕获cont.:
字符串之后的内容到%m
? %C%.%#
另外, and%+C%.%#
和 和有什么区别%+G
?%A
另外, and%+A
或%E
vs.之间有什么区别%+E
?
- 这是否意味着整行将被附加到
- 最后,Python 的示例以
:help errorformat-multi-line
以下字符结尾:%\\@=%m
-- WTF%\\@=
是什么意思?
对于理解这些东西的帮助,我将不胜感激。
php - CodeIgniter 2 中的非格式化错误日志
我目前正在websocket
CodeIgniter 2 中运行一个守护程序。该守护程序开始使用nohup
并在一个永恒循环中运行。错误输出格式为 HTML。但是,我希望在没有 HTML 格式的情况下记录错误。CodeIgniter 是否可以选择使这成为可能?
编辑:
我不仅在跟踪错误。我也在保存websocket
日志。日志包含已运行的功能和其他有用信息。我不想隐藏日志中的错误,因为它们可能对跟踪一些错误很有用。我想记录我的自定义websocket
消息以及可能发生的错误。
守护进程启动命令:
日志中的错误如下所示:
javascript - Vim 错误格式多行字符串
我正在尝试将此错误输出解析为Flow
. 在第一个错误中,真正重要的是第二个文件和行号,而不是第一个。我想告诉 vim 使用第二个文件条目。(所以在这种情况下,位置列表应该跳转到 source.js 的第 94 行,而不是第 20 行)
这是当前为 flow 定义的错误格式:它的工作原理是它使用第一个文件名而不是第二个文件名。
尝试的解决方案
我一直在尝试使用多行错误格式,但我不知道我在做什么。阅读后:help errorformat
,似乎这样的事情应该可以工作,但它只是将整个错误加载到消息中,没有文件/行信息。它还使用第一个条目而不是第三个条目匹配第二个错误。
更新
感谢 lcd047,他指出我没有匹配正确的输出。Syntastic 将错误格式化如下,全部在一行中:
那么,新问题,我怎样才能匹配第二个位置而不是第一个?我想我宁愿忽略第一个位置。
更新答案 - 这有效:
vim - Vim 错误格式化多个条目
我使用的 c++ 编译器(由 ant 启动)会产生不同格式的错误。例如:
[应用] /localdev/foo.cc:10:29: 错误: foo.h: 没有这样的文件或目录
(让我们称之为格式A)
并采用以下格式:
[应用] /localdev/foo.cc:307: 错误: 预期 ';' 在“标准”之前
(让我们称之为格式 B)
注意格式 A 有一个额外的列说明符。
我正在尝试创建一个匹配两者的 vim 错误格式。
我有:
set errorformat=\ %#[apply]\ %f:%l:%c:\ error:\ %m
set errorformat+=\ %#[apply]\ %f:%l:\ error:\ %m
但我似乎无法让 Vim 与 Format B 匹配。
我知道errorformat本身是正确的,因为如果我注释掉第一个errorformat设置,我可以匹配错误格式B。如果我注释掉第二个errorformat设置,我可以匹配错误格式A。
请注意,如果我反转errorformat设置,那么当 Vim 遇到错误 Format A 时,它会尝试打开一个名为“/localdev/foo.cc:10”的文件,当然找不到。(看起来 vim 有一个贪婪的匹配算法,在这种情况下,匹配文件的字符串也包括行号)。
将匹配格式 A 和格式 B 的正确错误格式设置是什么?
我在互联网和 vim 文档上查看了使 %c “可选”的方法,但我还没有找到秘密。
谢谢你。
vim - Vim 的错误格式被忽略
我对 Vim (v7.3) 的错误格式有疑问。试图将其设置为将我的 C 错误提取到 quickfix 中。错误模式可能是众所周知的:
我正在设置这个错误格式:
然后我运行:make
(我也进行了修改:makeprg
)。但是errorformat
设置不起作用。就像它被完全忽略了,因为快速修复或多或少地充满了整个编译日志文件(不仅是错误)。
我什至尝试将错误格式设置为一些废话,如下所示:
还是一样的结果。快速修复充满了数百行。
我错过了一些神奇的打开/关闭errorformat
设置吗?
string - VIM:如何在我指定的错误消息格式中设置“errorformat”?
在我的系统中,我们将所有构建错误消息重新格式化为以下格式:
如您所见,此格式包含几个部分:
我希望使用 vim+quickfix 打开这个构建错误文件,并导航到源文件+行号。那么如何在我的 .vimrc 中设置 'errorformat' 字符串呢?
非常感谢。
string - VIM:如何在我指定的错误消息格式中使用`let errorformat`?
我正在使用的 linter 以以下格式输出错误:
很明显,格式包含几个部分:
bear
使用类型- 错误编号
- 文件名
- 行号(开始)
- 列号(开始)
- 行号(结束)
- 列号(结束)
- 错误信息的类型
- 错误消息本身
我正在为语法编写我的 linter 插件,这导致输出字符串出现问题,我该如何配置它以符合要求?
我试过let errorformat = 'L%l\\:%m'
没有运气