如何创建提供自定义问题匹配器的 VS Code 扩展?

2024-05-09

我有一个使用自定义的项目problemMatcher。但我想将其提取到扩展中,使其可配置。所以最终它可以用于tasks.json like

{
    "problemMatcher": "$myCustomProblemMatcher"
}

怎么做?


从 VSCode 1.11.0(2017 年 3 月)开始,扩展可以通过以下方式贡献问题匹配器package.json https://code.visualstudio.com/updates/v1_11#_tasks:

{
    "contributes": {
        "problemMatchers": [
            {
                "name": "gcc",
                "owner": "cpp",
                "fileLocation": [
                    "relative",
                    "${workspaceRoot}"
                ],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        ]
    }
}

然后任务可以引用它"problemMatcher": ["$name"] ($gcc就本例而言)。


而不是定义匹配器pattern内联,它也可以贡献problemPatterns所以它是可重用的(例如,如果您想在多个匹配器中使用它):

{
    "contributes": {
        "problemPatterns": [
            {
                "name": "gcc",
                "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        ],
        "problemMatchers": [
            {
                "name": "gcc",
                "owner": "cpp",
                "fileLocation": [
                    "relative",
                    "${workspaceRoot}"
                ],
                "pattern": "$gcc"
            }
        ]
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建提供自定义问题匹配器的 VS Code 扩展? 的相关文章

  • VS Code Pylance 不突出显示变量和模块

    我正在使用带有 Python 和 Pylance 扩展的 VS Code 我遇到的问题是 Pylance 扩展没有对模块和数据框等内容进行语法突出显示 我希望顶部的模块为绿色 df 变量为蓝色 我正在使用默认的深色 颜色主题 这是我的 VS
  • 在 VS Code 中,如何获取当前选定的 Python 的路径?

    我想指定Python路径tasks json没有明确的完整路径 我曾经使用过这样做python pythonPath 但该设置现已弃用 检索当前选择的 Python 路径的替代方法是什么 还有其他 VS Code 环境变量吗 对于当前的Py
  • 如何让 Visual Studio Code 重置 Rust 的 IntelliSense 引擎?

    我正在开发两个项目 一个是一个库 另一个是使用该库的程序 当我对库进行更改时 其他窗口 程序 看不到这些更改 因此我没有获得更新的 IntelliSense 关闭使用该库的程序并重新打开它确实会强制更新 但我真的不想走那么远 直接回答标题
  • 更改 VS Code 中的默认 Emmet 设置

    是否可以改变default 不适用于单个项目 命令的 Emmet 行为 在 Visual Studio 代码中 例如 我不想看到属性lang en in 标签 我也不想看到该字符串 也许我会想向 VS Code 中的默认 Emmet 行为添
  • 在 VSCode Fortran 调试中检查从另一个模块导入的变量

    我正在调试一些包含许多 Fortran 模块的代码 其中一些模块彼此共享变量 不幸的是 带有 VScode 的 gdb 在调试时似乎无法检查导入的变量 目前 当我需要检查导入的变量时 唯一的方法是停止调试 并手动更改代码以包含等于导入变量的
  • 有没有办法通过 VS Code 任务运行命令?

    在 VS Code 中 我有一个扩展 我可以通过按 F1 并按名称搜索来运行其命令 但是我想从任务 tasks json 自动运行它 我从键盘快捷键知道它的全名 您可以在以下位置运行有效命令tasks json与 command synta
  • [“类型别名”只能在 .ts 文件中使用]

    我使用命令react native init 名称项目 然后打开vscode似乎有错误消息代码 图像 这就是你需要用 VS Code 做的事情 仔细观察 gif Steps to resolve error 1 Go to extensio
  • 找不到模块 dtrace-provider

    我有一个简单的nodejs应用程序抛出 Cannot find module build Release DTraceProviderBindings 我在网上查了一下 看起来很多人在 Windows 上使用 Restify 时都遇到了同样
  • VS Code - 如何为工作区选择 Jupyter 内核?

    我有一些 ipynbVS Code 工作区中的文件 它们都位于同一目录中 这是我的工作区配置 vscode settings json python pythonPath usr local anaconda3 bin python 我知道
  • 调试firebase云函数

    如何使用 Visual Studio 代码进行调试firebase 数据库 trigger功能 我尝试了模拟器 但是当我调用它时出现错误 functions debug myMethod C functions functions gt f
  • 无法找到可用的空闲守护进程

    我正在尝试在 Visual Studio Code 中将 Talon SRX 与 WPILib 一起用于 First Robotics for Java 我按照此处的说明进行操作 https phoenix documentation re
  • VsCode 删除缩进样式 - 点

    我想删除 禁用浅灰色点 只需将此行放入您的settings json file editor renderWhitespace none 另一种方法是通过主菜单View gt Toggle Render Whitespace
  • 如何更改 Visual Studio Code“Powershell 集成控制台”?

    有谁知道如何安装 更新 PS 7 以供 VS Code Powershell 集成控制台使用 我可以在常规 powershell 终端上获取 PS 7 但 Powershell 集成控制台仍然是 PSVersion 5 1 我似乎不知道如何
  • 如何在 Visual Studio Code 上运行 Scheme?

    我想知道如何在 Visual Studio Code 上运行简单的方案代码 我已经安装了一个名为 Scheme 的扩展 但下一步是什么 我没有找到有关如何运行代码或开发人员联系方式的扩展的任何详细信息 现在在 VSCode 上编译Schem
  • 使用扩展菜单的内置图标

    我想重用调试器工具栏中使用的 播放 按钮图标作为我从扩展添加的新菜单项 有没有办法在 package json 中设置图标信息以使用 VSCode 中已有的 svg 或者我必须提供自己的扩展 是的 您可以使用内置图标 它们称为 Codico
  • VS Code 中取消缩进行

    有没有相当于editor actions indentLines将选定的行移动到左侧而不是右侧 我知道您可以使用 Tab Shift Tab 进行缩进 但不幸的是 这在 Vim 模式下不起作用 这就是所谓的 突出 查看命令 key shif
  • Python 类型提示中的“at”符号 (@)(由 Pylance / Pyright 建议)

    The 2022 年 7 月发布 https devblogs microsoft com python python in visual studio code july 2022 release 引入了 Visual Studio Co
  • 使用 Flutter 3.10 / Dart 3.0 进行 VS Code 调试<优化>

    在最新的 颤振 升级 之后 我在 VS Code 调试期间查看某些变量时遇到问题 如何在悬停时查看变量的内容而不是获取此内容 Screenshot of hovering variable 这仅发生在某些变量上 其他变量我可以正常查看内容
  • VSCode Settings.json 丢失

    我正在遵循教程 并尝试将 vscode 指向我为 Scrapy 设置的虚拟工作区 但是当我在 VSCode 中打开设置时 工作区设置 选项卡不在 用户设置 选项卡旁边 我还尝试通过以下方式手动转到文件 APPDATA Code User s
  • 有没有办法阻止 prettier / prettier-now 将函数参数分解为新行

    当使用 prettier prettier now 在保存时进行格式化时 当一个函数包装另一个函数时 它会中断到一个新行 我想知道是否有办法阻止这种行为 例如 期望的输出 app get campgrounds id catchAsync

随机推荐