🚀 在 VS Code 中

2021 年 9 月(版本 1.61)

更新 1.61.1: 此更新解决了以下问题

更新 1.61.2: 此更新解决了以下问题

下载:Windows: x64 Arm64 | Mac: 通用 Intel Silicon | Linux: deb rpm tarball Arm snap


欢迎使用 Visual Studio Code 2021 年 9 月版。此版本包含许多更新,我们希望您会喜欢,其中一些主要亮点包括

如果您想在线阅读这些发行说明,请访问 Updates 上的 code.visualstudio.com

观看亮点 VS Code 团队发布派对上此版本的新功能。您可以在我们的 YouTube 频道上找到活动录像

Insiders: 想要尽快试用新功能吗?您可以下载每晚构建的 Insiders 版本,并在最新更新可用时立即试用。

工作台

在不创建新组的情况下拆分编辑器

添加了一个新的命令 在组中拆分 (⌘K ⇧⌘\ (Windows, Linux Ctrl+K Ctrl+Shift+\)),用于将编辑器拆分为两侧,而无需第二个编辑器组。这允许您在同一文件的两个编辑器中并排工作。您还可以通过短视频中看到的 切换布局 按钮在垂直或水平拆分之间切换布局。

如果您希望拆分是垂直或水平的,则有一个新的设置 workbench.editor.splitInGroupLayout

有新的命令可以通过快捷键使用此功能

  • workbench.action.splitEditorInGroup
  • workbench.action.toggleSplitEditorInGroup
  • workbench.action.joinEditorInGroup
  • workbench.action.toggleSplitEditorInGroupLayout

以及在两侧之间导航

  • workbench.action.focusFirstSideEditor
  • workbench.action.focusSecondSideEditor
  • workbench.action.focusOtherSideEditor

新的颜色 sideBySideEditor.border 设置了将一侧与另一侧分隔开的边框颜色。

锁定编辑器组

我们在上一个里程碑中引入了 锁定编辑器组 作为一项实验性的新功能。在此里程碑中,设置体验得到了改进,允许您轻松选择在打开时应自动锁定组的编辑器

Locked editor group setting

该设置现在称为 workbench.editor.autoLockGroups。同样,与编辑器组锁定相关的命令已重命名,不再是实验性的

  • workbench.action.lockEditorGroup
  • workbench.action.unlockEditorGroup
  • workbench.action.toggleEditorGroupLock

通过装饰指示已删除和只读编辑器

打开的编辑器可以指示它们是否为只读,或者它们关联的资源是否已从磁盘中删除。此指示是通过在编辑器标签后附加“deleted”和/或“readonly”给出的,这需要相当多的空间。

VS Code 现在使用装饰来实现此目的

  • 具有已删除资源的编辑器以删除线和红色显示。
  • 具有只读资源的编辑器显示锁图标。

Editor readonly and deleted decorations

将编辑器拆分到现有组中

当您将编辑器拆分到侧面时,即使侧面存在现有组,VS Code 也会打开一个新的编辑器组。但是,有时您希望将编辑器拆分到已经存在的组中。

为了支持这一点,添加了新的命令

  • workbench.action.splitEditorToPreviousGroup:拆分到上一个组。
  • workbench.action.splitEditorToNextGroup:拆分到下一个组。
  • workbench.action.splitEditorToAboveGroup:拆分到当前组上方的组。
  • workbench.action.splitEditorToBelowGroup:拆分到当前组下方的组。
  • workbench.action.splitEditorToLeftGroup:拆分到当前组左侧的组。
  • workbench.action.splitEditorToRightGroup:拆分到当前组右侧的组。
  • workbench.action.splitEditorToFirstGroup:拆分到第一个组。
  • workbench.action.splitEditorToLastGroup:拆分到最后一个组。

差异编辑器的更短标签

当您比较两个文件时,工作区相对文件夹路径会前缀在文件名上,使得很难看到正在比较的文件的名称。

在此版本中,文件夹现在从标签中隐藏,除非两个文件名相同,否则与普通编辑器标签的行为一致。

如果两个文件名相同,则会显示一个描述,提示文件夹差异

Diff editor comparing two files

macOS:文件菜单更改

在 macOS 上,如果您从 文件 菜单中选择 打开... 菜单项,您可以打开文件和文件夹。对于新用户来说,这可能会令人惊讶,并且人们尝试使用 打开工作区 命令打开文件夹,而该菜单项专门用于打开 .code-workspace 文件。

为了避免混淆,我们对 macOS 上的文件菜单进行了细微调整

  • 新的条目 打开文件夹... 打开一个文件夹。
  • 打开工作区... 已重命名为 从文件打开工作区...

macOS File menu

遥测设置

有一个新的遥测设置 telemetry.telemetryLevel,它提供了更高的配置粒度,并允许用户选择他们是否只想发送错误遥测数据,而不发送一般使用数据。值分别为 onerroroffonerror 的值也将启用崩溃报告器。

现有的设置 telemetry.enableTelemetrytelemetry.enableCrashReporter 已标记为弃用,转而使用新的 telemetry.telemetryLevel 设置,但仍将继续受到尊重。

迷你地图背景透明度

现在可以使用新添加的 minimap.foregroundOpacity 颜色,独立于迷你地图文本的不透明度来配置 迷你地图 背景不透明度。

更新的帮助菜单项

随着入门体验的不断改进,帮助 菜单项已更新为更常用的名称。这是基于对新用户的学习,但希望使每个人更容易找到帮助。入门视频 现在是 视频教程,而 交互式游乐场 变成了 编辑器游乐场。您将在 帮助 菜单和命令面板中找到新名称。帮助 菜单还有一个 显示所有命令 条目,作为打开命令面板的附加入口点。

编辑器

括号对引导线

编辑器现在支持基本的括号对引导线。括号对引导线使用与括号对着色功能相同的颜色和相同的算法。括号对匹配算法在最近的 “括号对着色速度提升 10,000 倍” 博客文章中详细描述。

与缩进引导线类似,活动括号对引导线会突出显示。

Bracket pair guides shown in the editor

可以通过配置 editor.guides.bracketPairs 设置(默认为 false)来启用括号对引导线。我们将继续迭代此功能,并在下一个版本中探索垂直引导线。

缩进引导线设置

editor.renderIndentGuideseditor.highlightActiveIndentGuide 设置已被弃用,转而使用 editor.guides.indentationeditor.guides.highlightActiveIndentation

源代码管理

Git 存储库的“发布或同步”操作按钮

Git 扩展现在向源代码管理视图添加了一个新的“操作”按钮,以便您更轻松地发布或同步任何未推送的更改。

New Source Control view Sync button

主题:Amethyst Theme

默认情况下,如果有未推送的提交,Git 扩展将添加一个如上所示的 同步更改 按钮;如果分支尚未发布,则添加一个 发布更改 按钮。此外,用户可以通过配置 git.showUnpublishedCommitsButton 设置来自定义此行为,该设置默认为 whenEmpty,以便仅当存在未推送的提交且视图中没有其他更改时才显示该按钮。

这个新的操作按钮作为源代码管理扩展的新的建议 API 提供,有关更多详细信息,请参见下面的 建议的 API 部分

最后,用户可以通过新的 scm.showActionButton 设置完全禁用源代码管理视图中任何操作按钮的可见性,该设置会覆盖任何源代码管理扩展的行为。

增加更改文件显示限制

在此版本之前,Git 扩展对可以在源代码管理视图中显示的更改数量有一个硬编码的限制,即 5000 个更改。此限制是为了防止用户在 VS Code 处理 Git 报告的所有更改时等待时间过长。现在,此限制已增加到 10,000 个更改,并且有一个新的 git.statusLimit 设置,允许用户自定义限制(如果需要,每个存储库都可以自定义)。此设置也可以设置为 0 以完全禁用限制,但请注意,如果存在大量更改,这可能会导致更新花费很长时间。

此外,当超出限制时,我们在输入框中添加了以下警告指示器。

New warning indicator, which reads "Too many changes were detected. Only the first 10,000 changes will be shown below"

终端

固定尺寸

您现在可以通过 终端:设置固定尺寸 命令 (workbench.action.terminal.setDimensions) 静态设置终端尺寸。当换行可能令人不适或具有破坏性时,这非常有用。

该命令将显示一个提示,您可以在其中输入首选的宽度和/或高度。

Terminal Set Fixed Dimensions column width prompt

自定义标题和描述

终端名称通常是与其关联的进程的名称,有时可能难以区分终端。

您现在可以使用 terminal.integrated.tabs.titleterminal.integrated.tabs.description 设置中的变量来配置标题和描述。

当前的默认值是

{
  "terminal.integrated.tabs.title": "${process}",
  "terminal.integrated.tabs.description": "${task}${separator}${local}${separator}${cwdFolder}"
}

可用的变量包括

  • ${cwd} - 终端的当前工作目录
  • ${cwdFolder} - 终端的当前工作目录。
  • ${workspaceFolder} - 启动终端的工作区。
  • ${local} - 指示远程工作区中的本地终端。
  • ${process} - 终端进程的名称。
  • ${separator} - 条件分隔符 (“ - ”),仅当被具有值或静态文本的变量包围时显示。
  • ${sequence} - 进程提供给 xterm.js 的名称。
  • ${task} - 指示此终端与任务关联。

Emoji 输入法

macOS 上的输入法编辑器 (IME) 现在支持 Emoji。

Dialog showing Emojis available in the Integrated Terminal for IME on macOS

Alt 缓冲区活动上下文键

某些终端 UI 应用程序(如 nano)使用 VS Code 工作台使用的键盘快捷键,这限制了它们在 VS Code 中集成时的功能。一个新的 when clause contextTerminalContextKeys.altBufferActive,当 alt 缓冲区处于活动状态时,将快捷键定向到终端而不是工作台,以解决此问题。

语言

新的 JavaScript 和 TypeScript 语言状态项

当前的 TypeScript 版本和 IntelliSense 状态现在显示在语言状态栏项中

The JavaScript and TypeScript IntelliSense status item showing config file and TypeScript version

以前,TypeScript 版本始终显示在状态栏中。您可以固定版本以恢复旧的行为

语言状态项还显示当前文件的 jsconfig/tsconfig,并指示您当前是否处于 部分模式

跨未命名文件的 IntelliSense

所有未命名的 JavaScript 和 TypeScript 文件现在都被视为同一项目的一部分。这意味着在一个未命名文件中定义的全局符号现在将在其他文件中显示为建议。

这更好地匹配了工作区中磁盘上文件的行为。您可以向未命名文件添加 importexport 以将其转换为模块,这将从其他文件中隐藏其全局变量。

跨 Web 上文件的 IntelliSense

当 VS Code 在浏览器中运行时,IntelliSense 现在可以跨 vscode.devgithub.dev 上的 JavaScript 和 TypeScript 文件工作。

Cross file JavaScript IntelliSense on github.dev

请记住,当 VS Code 在浏览器中运行时,它只能访问您当前打开的文件,因此 VS Code 无法提供项目范围的 IntelliSense 功能,例如自动导入。

更一致的 JSX 标签折叠

当您在 JavaScript 或 TypeScript 中折叠 JSX 标签时,VS Code 现在继续显示结束标签

Folding in JSX

这与 HTML 中的折叠工作方式相匹配。

预览功能

TypeScript 4.5 支持

此更新包括对即将发布的 TypeScript 4.5 版本的初始支持。有关新的语言和工具功能,请参阅 TypeScript 4.5 beta 公告帖子。一些工具亮点

要开始使用 TypeScript 4.5 每晚构建版本,请安装 TypeScript Nightly 扩展

请分享您的反馈,并告知我们您是否遇到 TypeScript 4.5 的任何错误。

跨应用程序重启恢复终端会话

当 VS Code 窗口关闭时,终端进程将被处理掉。在此版本中,有一个新的选择加入设置,用于记录和恢复缓冲区,并使用它来重新创建进程。设置 terminal.integrated.persistentSessionReviveProcess 以启用此功能。

The terminal buffer gets restored on application restart with a message indicating when the snapshot was taken

切换终端大小以适应内容宽度

您可以通过 ⌥Z (Windows, Linux Alt+Z) 或使用选项卡上下文菜单操作 切换大小以适应内容宽度,在适应完整内容和换行之间切换终端宽度。

这与编辑器中切换换行类似,并共享快捷键。

扩展贡献

Jupyter

目录

现在可以通过命令面板中的命令 Jupyter: 显示目录 访问 Jupyter Notebook 的目录。也可以通过笔记本工具栏中的图标访问此相同功能。

此功能适用于 VS Code 中的所有笔记本,因此可以通过文件资源管理器中的 大纲视图 访问。

通过“新建文件”菜单创建新 Notebook

您现在可以使用菜单项 文件 > 新建文件... 创建新的 Jupyter Notebook。也可以从 欢迎 页面或命令面板上的 新建文件... 项访问此菜单。

调试

VS Code 现在支持 Jupyter Notebook 的完整调试功能。要试用它,请确保您已安装 ipykernel v6+ 作为您选择的内核,设置断点,然后选择 调试单元格 命令。

远程调试

您还可以使用 逐行运行 并使用远程内核调试 Jupyter Notebook。要试用它,请使用 Jupyter: 指定本地或远程 Jupyter 服务器以进行连接 命令连接到您的远程内核,确保您已安装 ipykernel v6+ 作为您选择的内核,并像往常一样使用 逐行运行 或调试。

单独的渲染器扩展

Jupyter Notebook 渲染器已拆分为单独的扩展程序 (Jupyter Notebook Renderers),允许用户在 vscode.devgithub.dev 上查看 Notebook 输出,例如 plotly、vega、latex 等。

Python

新的 Python 演练

Python 扩展现在提供了一个演练,其中包含一些基本设置步骤,以改善 VS Code 中 Python 的入门体验。

New Python walkthrough

改进的调试体验

当使用没有 launch.json 配置文件的工作区时,每当您开始调试 Python 文件或项目时,Python 扩展 都会显示一个调试器配置菜单。当调试具有自定义参数的 Web 应用程序(例如 Flask、Django 或 FastAPI)时,这可能会特别烦人。

您现在无需在每次开始调试时都选择配置,因为您所做的第一个选择将在会话的其余时间重复使用。

GitHub Pull Requests and Issues

继续开发 GitHub Pull Requests and Issues 扩展,该扩展允许您处理、创建和管理拉取请求和问题。查看扩展的 0.31.0 版本变更日志 以查看亮点。

远程开发

继续开发 远程开发扩展,该扩展允许您使用容器、远程计算机或 Windows Subsystem for Linux (WSL) 作为功能齐全的开发环境。

1.61 中的功能亮点包括

  • 转发端口中的 DNS 名称。
  • 轻松选择容器附加功能。
  • Dev Containers 扩展可以在 WSL 中执行 CLI 命令。

您可以在 远程开发发行说明 中了解新的扩展功能和错误修复。

扩展创作

平台特定扩展

扩展现在可以为 VS Code 支持的每个平台(Windows、Linux、macOS)发布不同的 VSIX。从 VS Code 1.61.0 版本开始,VS Code 会查找与当前平台匹配的扩展包。从 1.99.0 版本开始,vsce 扩展发布工具支持发布 平台特定扩展

如果您的扩展具有平台特定的库或依赖项,则平台特定扩展非常有用,因此您可以控制平台包中包含的确切二进制文件。一个常见的用例是扩展使用 原生 node 模块

有关更多信息,请参阅我们的 平台特定扩展文档

测试标签和非错误输出

本月,我们为构建在新的 测试 API 之上的扩展发布了其他 API。

  • 测试标签 允许您配置是否以及如何运行某些测试——或不运行。

  • 非错误输出 允许您将其他控制台输出与特定测试用例关联。

    输出中的消息以内联方式显示,类似于失败消息。

    Image showing "hello world" displayed inline beside a console.log statement

使文件系统提供程序能够将文件声明为只读

文件系统提供程序现在可以通过在 FileStat 对象上设置 permissions 属性为 FilePermission.Readonly 值,将单个文件标记为只读。只读文件不可编辑。

注意: 如果所有文件都应被视为只读,您可以在调用 registerFileSystemProvider 时使用现有的 isReadonly 选项。

设置编辑器扩展类别

当存在类别时,设置编辑器现在为扩展的 contributes.configuration 端点显示一个子树。

要创建多个类别,contributes.configuration 接受配置数组,并且每个配置的 title 键用于节标题。还有一个 order 字段,允许在子树中重新排序类别。

New Setting editor table of contents showing CSS language features having its own subtree

类型层次结构

用于添加类型层次结构提供程序的 API 提案已最终确定。

WebviewOptions.enableForms

WebviewOptions 上的新 enableForms 属性允许您启用或禁用 webview 内的表单。为了向后兼容,如果您已设置 enableScripts,则 enableForms 默认为 true。否则,它默认为 false。

我们建议禁用表单,除非您的 webview 内容需要它们。

终端状态

除了相应的 window.onDidChangeTerminalState 事件之外,Terminal 对象上还公开了一个新的 state 属性,指示用户是否与终端进行了交互。例如,扩展可能希望等到用户与终端交互后再运行操作。

在测试数据上运行 Web 扩展测试

@vscode/test-web node 模块提供了一个 CLI 和 API,用于在 Chromium、Firefox 或 Webkit 中测试 Web 扩展。

此里程碑的新功能是 folderPath 选项,用于在测试数据上打开 Web 版 VS Code。内存文件系统包含给定位置的资源,以便测试可以使用文件。

vscode-test-web --browserType=chromium --extensionDevelopmentPath=$extensionLocation $testDataLocation

更新的 codicon

以下新图标已添加到我们的 codicon

List of codicon icons that were added

  • beaker-stop
  • bracket-dot
  • bracket-error
  • bracket
  • debug-continue-small
  • graph-line
  • graph-scatter
  • pie-chart

Visual Studio Code 的 Webview UI Toolkit

Visual Studio Code 的 Webview UI Toolkit 是一个组件库,用于在 Visual Studio Code 中构建 基于 webview 的扩展

Webview Toolkit component artwork

该库的功能包括

  • 实现 Visual Studio Code 设计语言: 创建与编辑器的其余部分具有一致外观和风格的扩展。
  • 自动支持颜色主题: 所有组件在设计时都考虑了主题,并将自动显示当前编辑器主题。
  • 使用任何技术堆栈: 该库作为一组 Web 组件发布,这意味着开发人员可以使用该工具包,无论他们的扩展是使用哪种技术堆栈(React、Vue、Svelte 等)构建的。
  • 开箱即可访问: 所有组件都随附符合 Web 标准的 ARIA 标签和键盘导航。

虚拟工作区扩展指南

有一个新的 虚拟工作区 扩展指南,以帮助扩展作者在 VS Code 在虚拟环境中运行时测试和更新他们的扩展。随着 GitHub Repositories 等创建自己的虚拟文件系统的扩展的引入,以及 vscode.devgithub.dev 等新工作流程(其中 VS Code 在您的浏览器中运行),扩展不再能假设他们可以直接访问磁盘上的文件系统或平台功能。

虚拟工作区扩展指南涵盖

  • 您的扩展是否可以在虚拟工作区中无需修改即可工作。
  • 如何在没有磁盘文件系统的情况下更新您的扩展以在虚拟工作区中工作。
  • 如何在虚拟工作区中运行时向 VS Code 发出信号,以启用或禁用您的扩展。

建议的扩展 API

每个里程碑都带有新的建议 API,扩展作者可以试用它们。与往常一样,我们希望得到您的反馈。这是您试用建议的 API 必须执行的操作

  • 您必须使用 Insiders 版本,因为建议的 API 经常更改。
  • 您必须在扩展的 package.json 文件中包含此行:"enableProposedApi": true
  • 将最新版本的 vscode.proposed.d.ts 文件复制到您项目的源代码位置。

您不能发布使用建议的 API 的扩展。下一个版本中可能会有重大更改,我们永远不想破坏现有扩展。

TaskPresentationOptions close 属性

close 属性是 tasks.json 模式中的一个 presentation 属性,在 TaskPresentationOptions API 中可用。它的功能与匹配的 tasks.json 属性相同,通过控制任务完成后是否关闭终端。

标签页 API

有一个关于读取和操作标签页的 API 提案。这解决了常见的功能请求,例如在没有后备 textDocument 时,希望访问打开的资源列表。您可以在 issue #133532 中提供关于此 API 的反馈。

MarkdownString.supportHtml

新提出的 MarkdownString 上的 supportHtml 属性允许渲染 Markdown 文本中出现的安全 HTML 子集。

supportHtml 属性默认为 false。禁用时,VS Code 将剥离 Markdown 文本中出现的任何原始 HTML 标签。

控制器渲染器脚本现在使用 JavaScript 模块

NotebookController.rendererScripts 允许笔记本控制器在任何渲染器运行之前,将一组 JavaScript 文件预加载到笔记本中。这些脚本可以初始化笔记本或定义渲染器所依赖的全局符号。

渲染器脚本以前是普通的 JavaScript 文件。这些脚本可以使用 VS Code 导出的全局符号来调用 VS Code 特定的 API。

这个全局符号不易被发现,也没有给 VS Code 对渲染器脚本本身的太多控制。为了解决这个问题,渲染器脚本现在使用 JavaScript 模块,这些模块导出一个 activate 函数。此函数会被传递 VS Code API。

interface KernelPreloadContext {
    readonly onDidReceiveKernelMessage: Event<unknown>;
    postKernelMessage(data: unknown): void;
}

export function activate(ctx: KernelPreloadContext): Promise<void> | undefined {
    ...
}

此更改还更好地对齐了来自 NotebookController 的渲染器脚本与由贡献的 笔记本渲染器 提供的渲染脚本。

快速选择保持滚动位置属性

window.createQuickPick() 返回的 QuickPick 对象上的 keepScrollPosition 属性已作为建议的 API 添加。 这允许您控制快速选择中的滚动位置 (cursorTop) 是否移回列表顶部。

以下是此 API 的一些用例

  • 使用建议的 QuickPickItemButtons API 实现“从列表中删除此项”选项(例如,Ctrl/Cmd + P x QuickPickItemButton)。
  • 使用建议的 QuickPickItemButtons API 实现“以某种方式切换此项”选项(例如,插入代码片段 命令)。
  • 异步加载快速选择中的项目(例如 setInterval 通过重新分配 .items 属性向列表添加项目,其中滚动不应跳转到顶部)。

在没有控制滚动位置的能力的情况下,这些操作中的每一个都会强制快速选择的滚动位置跳到列表的顶部。 keepScrollPosition 允许扩展作者控制此行为。

SourceControl.actionButton

源代码控制 API 现在在 SourceControl 对象上包含 actionButton 属性,允许 SCM 提供程序有条件地在输入框下方显示“操作”按钮。例如,当存在未推送的更改时,Git 扩展使用此新属性来显示发布或同步按钮。

语言服务器协议

新版本的 语言服务器协议 以及相应的 npm 模块已发布。新版本包含类型层次结构的建议实现。

工程

切换到 DOMPurify 以清理渲染的 HTML

我们已切换到内部使用 DOMPurify 来清理在主工作台中渲染的 HTML。这主要用于清理渲染的 Markdown。

DOMPurify 维护良好,并且开箱即用地符合 受信任类型。此切换有助于保护用户,并使我们更有信心启用诸如 MarkdownString.supportHtml 之类的功能。

对 Big Sur CLI 使用 open 命令

在 macOS Big Sur 上,当从命令行启动 VS Code 时,我们现在使用 open 命令来生成 VS Code。此更改允许 VS Code 像从 macOS Dock 启动一样打开,从而修复了一些涉及授权的问题。

文件监视更改

用于检测磁盘上文件和文件夹更改的文件监视器已更改为一个 ,该库可以处理我们所有支持的平台(Windows、Linux、macOS),并减少了为不同平台维护不同监视器的开销。我们计划在所有平台上默认启用此库。此迭代我们在 Windows 和 macOS 上启用了它,并计划很快在 Linux 上启用它。

新的监视器应该在启动时更快,并减少大型文件夹上花费的 CPU 周期。使用该库的一个缺点是,文件监视器不再自动检测工作区中 macOS 上是符号链接的文件夹。如果您有这样的设置,您可以使用新的 files.watcherInclude 设置来显式添加符号链接路径以包含在文件监视中。从好的方面来说,您可以在 Windows 上使用此新设置来显式包含工作区内的符号链接文件夹 - 这在以前在 Windows 上是不可能的。

您应该不会注意到日常工作中的任何差异,但如果文件监视对您不起作用,请报告问题。如果遇到问题,可以使用设置 files.legacyWatcher 来启用旧的监视器。

文档

高级容器配置

有一个新部分涵盖了 Dev Containers 扩展的 高级容器配置

在容器文档中,您可以学习如何

高级容器配置文档包含有关设置开发容器的技巧和代码示例,以及简短的 YouTube 视频

值得注意的修复

  • 69665: 从睡眠状态恢复操作系统时,终端有时会显示损坏的纹理
  • 130407: [琐碎] settings>files: 排除更改模式为 (blank) 将无法删除
  • 133149: 任务终端标记为 info/warning 级别问题失败。
  • 133567: 可访问性:查找引用中顶级树节点的标签都只显示“true”
  • 133910: 当解析 shell 环境失败或超时时显示错误
  • 133976: 允许通过协议 URL 打开 .code-workspace

感谢

最后但同样重要的是,非常感谢以下人士在本月为 VS Code 做出的贡献

对我们的问题跟踪的贡献

vscode 的贡献

vscode-eslint 的贡献

vscode-html-languageservice 的贡献

vscode-json-languageservice 的贡献

vscode-languageserver-node 的贡献

vscode-pull-request-github 的贡献

vscode-references-view 的贡献

vscode-vsce 的贡献

language-server-protocol 的贡献

monaco-editor-webpack-plugin 的贡献