如何在Visual Studio Code中跳转到构建错误?

15

我正在 Linux 上使用 Visual Studio Code (版本 1.8.1)。当出现构建错误且我点击包含错误的行时,它不会跳转到相应的代码行。是否有办法让 Visual Studio Code 表现得与标准版 Visual Studio 相同?


1
虽然这不是问题的答案,但按下alt-F8会快速跳转到下一个错误,至少在TypeScript中是这样的。 - Theodore Norvell
alt-f8?它似乎有所作为,但是: 1)alt-f8不是一个可以快速完成任何操作的按键组合,因为我无法用左手按下它。 2)在我的情况下,它似乎循环遍历了3到6个问题,不确定原因。 - Jan Wilmans
4个回答

9
您是否在您的tasks.json中定义了问题匹配器(problem matcher)?有几个内置的问题匹配器可以直接引用,例如"problemMatcher": ["$tsc"]就适用于TypeScript。
文档中还包含一个C++自定义问题匹配器的示例:
"problemMatcher": {
    "owner": "cpp",
    "fileLocation": ["relative", "${workspaceRoot}"],
    "pattern": {
        "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
        "file": 1,
        "line": 2,
        "column": 3,
        "severity": 4,
        "message": 5
    }
}

如果你使用的语言没有内置的匹配器,但只要它相对热门,你仍然应该能够在一些搜索中找到适合自己的匹配器。


4

你是否在Visual Studio Code的TERMINAL窗口中构建了你的代码?如果是这样,请按下“Ctrl”键并将鼠标光标移动到错误行中的文件名和行号(例如“/home/..../xxx.cpp:123”),然后你可以单击它以跳转到相应的代码行。

这对我起作用。


1
在发布答案之前,您应该先通过评论向提问者询问。 - tupui
我不知道在发布答案之前询问OP更好。那是我第一次回答问题。谢谢你提醒我! - fengliutie
欢迎。确实,当你写答案时应该有把握,否则评论区是一个很好的地方。这里是回顾[答案]。 - tupui
2021 年,我使用 VS Code 的原始安装和 MS C++ 插件运行此方法,按下默认密钥 <F7> 构建了一个简单的 CMake 项目,该方法对我有效。 - ahcox
很遗憾这不是Jeopardy。它可能只是两个或三个答案中的一个。至少对我来说,这是“唯一”的答案。我认为当前的C++插件,正如@ahcox所提到的,具有默认匹配器。 - David Bradley
显示剩余3条评论

2

您可以使用 Ctrl + shift + M 的快捷键,快速跳转到代码中的错误。


FYI,Ctrl-M 禁用制表符(是的,制表键),问题列表按文件名排序(https://github.com/microsoft/vscode/issues/98819),因此它不总是第一个错误。 - jozxyqk

0

使用Visual Studio Code的原始安装和Microsoft C++插件,在按下默认键绑定<F7>编译一个简单的CMake项目后,<CTRL-LEFT_MOUSE>可以很好地从TERMINAL选项卡中导航到错误所在的行。请注意,OUTPUT窗口中的错误无法点击。

此选项卡中的错误是可点击的: Terminal tab

此选项卡中的错误不可点击: enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接