问题标签 [vscode-problem-matcher]

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.

0 投票
0 回答
47 浏览

regex - 无法获得最简单的问题匹配器来报告任何问题

我一直在谷歌搜索几个小时,简化为最愚蠢的 vs 代码项目:

在此处输入图像描述

任务运行: 在此处输入图像描述

输出为空:

并且没有报告任何问题。

我错过了什么?

[编辑]

根据评论中的要求,我在这里回显一条实际的错误消息,从https://code.visualstudio.com/docs/editor/tasks#_defining-a-problem-matcher复制:

echo helloWorld.c:5:3: 警告:函数'printft'的隐式声明</p>

我从同一个链接复制了示例问题匹配器。仍然没有显示任何东西。由于某种原因,终端输出有一些换行符。

在此处输入图像描述

[编辑 2] 好的,感谢 rioV8 和 Yassin Hajaj 的帮助,我想通了。这是学习问题匹配器如何工作的一种令人沮丧的方式。我缺乏正则表达式的经验并没有帮助。

原来“shell”默认为 PowerShell,它有一个 echo 命令将每个标记显示到一个新行。我终于把它变成了一条带有一些逃避诡计的线:

文件、行和消息属性也是必需的。

所以这是一个工作示例:

0 投票
0 回答
81 浏览

c# - 通过 VSCode 运行 dotnet 应用程序是否存在问题匹配器?

我希望有人知道如何利用tasks.jsonVSCode 中的文件来捕获dotnet run命令的输出。

目前我的launch.json文件中有一个启动项,用于启动一个新的 chrome 窗口来调试 Angular 应用程序。我已preLaunchTask将该文件中的 定义为以下任务之一。还有另一项任务,但为简洁起见,我没有在此处包含该任务,因为我已使用此文档解决了该任务。

目的是一旦这两个任务完成,它会自动为我启动 Chrome 窗口。目前,当我运行以下任务时,将选择我的 C# 项目并运行控制台程序。但是,VSCode 仍然认为该任务仍在进行中,因此继续等待,希望一旦该任务完成,它就可以启动 chrome。显然,由于它继续认为任务尚未完成,因此它不会启动它。

我注意到的是,当我将下面的任务修改为 dotnet build one(C# for Visual Studio Code扩展自动生成的)时,它发现任务已成功完成并启动 chrome。可能是因为我使用了$msCompileproblemMatcher 模式。

回答我的问题(有点啰嗦抱歉!)...

  • 是否有类似problemMatcher的运行应用程序?
  • 是否需要通过将构建任务与此复合来修改以下内容,以便假设构建已完成?

感谢您在这方面的任何帮助,因为我昨天下午在谷歌上搜索了一下,试图弄清这个问题。

谢谢!

代码示例

点网运行任务

点网构建任务

0 投票
2 回答
76 浏览

visual-studio-code - 如何更改 VS Code 任务的状态?(VS Code 扩展开发)

我正在开发一个 VS Code 扩展,并且我的扩展中有一个自定义任务。在最近更新 VS Code 之前,一切都运行良好。该任务现在似乎具有如下屏幕截图的状态:

在此处输入图像描述

在终端/任务窗口中,它显示“任务有错误”并且任务颜色为红色。但实际上我的任务执行正确。我记得以前不存在这种“状态”。有谁知道如何清除此状态或如何修改它?我在 VS Code 官方文档中没有找到相关的 API 或命令。你能帮忙给一些指导吗?

这是我的任务设置(“目标”是自定义属性):

非常感谢!

0 投票
1 回答
25 浏览

visual-studio-code - 如何按多个条件过滤问题?与或或

在问题窗格中,您可以按文本或文件过滤/排除,但如果我想按多个条件过滤怎么办?像过滤那些包含文本 X OR Y(或 X AND Y)的消息。我知道您可以使用逗号过滤多种类型的文件,是否有类似的文本机制?

0 投票
1 回答
44 浏览

visual-studio-code - Visual Studio 代码中的任务 - 问题匹配不起作用

我创建了一组任务,我想用这些任务编译用 MAD Pascal 编写的程序(用于 6502 处理器的 FreePascal 编译器)通常一切正常,但是我在处理“问题匹配器”时遇到了问题。我不知道为什么,它不想检测错误?我承认,我是第一次在 VSC 中使用任务。我浏览了许多不同的教程,但一切似乎都很好。我的“问题匹配器”配置

我测试了正则表达式的正确性(regex101),它与控制台中的内容正确匹配。控制台内容示例:

有人可以向我指出我做错了什么吗?配置错误在哪里?我将非常感激 - 我非常想在“问题”窗口中看到编译错误:)

0 投票
0 回答
16 浏览

visual-studio-code - VS Code problem matchers: how to extract multiple issues from one line? (GNU linker)

The GNU linker emits error messages in this style:

I want to create two problems from this single line, for the two files and line numbers mentioned in the message, so that I can click both of them and navigate to the offending lines (oled.c:40 and bootloader.c:27). It's possible to create patterns for the compiler and for both parts of the linker message:

This does not work, because if the Linker 1 pattern matched, the Linker 2 is not executed at all. If I copy the regexp from Linker 2 to Linker 1, the second part of the message is parsed properly. Is it somehow possible to tell Code to always attempt to match all patterns, even if a previous one already matched? Or any other way to create multiple problems from one message line?

0 投票
0 回答
32 浏览

visual-studio-code - 如何配置在 vscode 的问题匹配器中显示 squiggle?

有一个编译器在触发错误时显示如下编译结果。

在此处输入图像描述

消息格式为[File]:[Code]:[Line]:[Column]:[Serverity]:[Message]

我想将其显示到问题面板,因此我构建了 tasks.json,如下所示。

在此处输入图像描述

结果,它工作正常,但曲线很奇怪。曲线必须正确绘制在错误触发的标记下,但绘制如下图。

在此处输入图像描述

编译器是否必须在 task.json 中提供或配置其他数据才能解决此问题?

任何帮助将非常感激。

感谢您的阅读。