现已发布!阅读有关 11 月份新功能和修复的信息。

2024 年 8 月(1.93 版本)

1.93.1 更新:此更新解决了这些 问题

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


欢迎使用 Visual Studio Code 的 2024 年 8 月版本。此版本中有很多更新,我们希望您会喜欢,其中一些主要亮点包括

如果您想在线阅读这些发行说明,请访问 更新,网址为 code.visualstudio.comInsiders: 想尽快试用新功能吗?您可以下载每晚的 Insiders 版本,并在最新更新可用时立即尝试。

辅助功能

通过键盘调整表格列大小

一个新的命令 list.resizeColumn 使您可以使用键盘调整列的大小。当您触发此命令时,选择要调整大小的列,并提供您要设置的宽度的百分比。以下视频显示了如何应用此命令来调整键盘快捷方式编辑器中列的大小。

屏幕阅读器支持合成聊天响应

我们更新了 accessibility.voice.autoSynthesize 设置,使屏幕阅读器用户可以选择使用我们的合成器宣布聊天响应,而不是获取 aria 警报。

调试改进

当您在编辑器中调试并将焦点集中在编辑器中时,现在调用调试:添加到监视命令会为屏幕阅读器用户宣布变量的值。

此外,改进了调试辅助功能帮助对话框,使其更加全面。

工作台

新的配置文件编辑器

新的配置文件编辑器现在已在 Visual Studio Code 中普遍可用。新的配置文件编辑器使您能够从一个位置管理配置文件。此体验包括创建新配置文件、编辑和删除现有配置文件以及导入和导出配置文件以与他人共享。有关更多信息,请参阅配置文件文档

Screenshot that shows the Profiles editor.

Linux 支持窗口控制覆盖

一个新的设置 window.experimentalControlOverlay 使原生窗口控件可以显示,即使通过 window.titleBarStyle 设置启用了自定义标题栏也是如此。

Screenshot of VS Code on Linux, highlighting the Linux window control overlays in the top-right corner.

开箱即用,我们尚未在 Linux 上默认启用自定义标题,但我们计划最终这样做。一旦您打开自定义标题,原生窗口控制覆盖将自动显示。我们欢迎您在使用此新功能时发现的任何反馈!

注释排序

现在可以按照注释在文件中的位置或日期对注释进行排序。

Screenshot that shows the additional comment sorting options.

从设置编辑器复制设置 URL

您可以从设置编辑器复制指向特定设置的直接 URL。当您导航到设置 URL 时,它会打开 VS Code 并将焦点放在设置编辑器中相应的设置上。

Video that shows how to copy a setting URL in the Settings editor.

在资源管理器中反向排序

我们添加了一个额外的排序选项 explorer.sortOrderReverse,它使您能够反转各种资源管理器排序配置,从而提供更大的排序灵活性。

编辑器

灯泡改进

在上一个里程碑中,我们改进了代码操作灯泡图标的显示位置。我们现在决定将 editor.lightbulb.enabled 默认设置为 onCode。这意味着灯泡图标仅在光标位于具有源代码的行上时才会显示,并且显示频率会降低。

操作列表的颜色主题

可以使用 editorActionList.backgroundeditorActionList.foregroundeditorActionList.focusForegroundeditorActionList.focusBackground 键通过主题配置操作列表控件的颜色,例如代码操作菜单。默认情况下,操作列表控件主题与快速选择和命令面板的主题匹配。获取有关自定义颜色主题的更多信息。

GitHub Copilot

在此里程碑中,我们继续改进 VS Code 中 GitHub Copilot 的体验,包括编辑器、聊天视图和内联聊天。我们还添加了一些实验性功能供您尝试,我们希望获得您的反馈。

改进的测试生成

借助 GitHub Copilot,您可以通过使用编辑器上下文菜单中的使用 Copilot 生成测试操作,或使用内联聊天中的 /tests 斜杠命令来为您的代码生成测试。

我们通过查找现有测试文件并将新测试生成到该文件中,将其附加到末尾,从而改进了测试生成流程。如果还没有测试文件,Copilot 会为生成的测试创建一个新的测试文件。

重命名用于生成测试和文档的代码操作

当您将光标放在标识符(例如方法名称)上时,GitHub Copilot 会为您提供代码操作来生成测试或文档。为了更好地反映其目的,我们将这些代码操作重命名为使用 Copilot 生成测试使用 Copilot 生成文档。以前,这些被称为使用 Copilot 进行测试使用 Copilot 进行文档

New code action names for test and documentation generation

改进的聊天历史记录

您可以使用聊天视图顶部的显示聊天按钮从聊天历史记录中打开以前的聊天会话。这些会话现在具有更友好的 AI 生成名称。您还可以通过选择每行上的铅笔图标手动重命名会话。

这些聊天历史记录条目现在也按其上次请求的日期排序,并按日期存储桶标记和分组。

The chat history picker shows friendly session names and entries are grouped by age.

注意:只有新的聊天会话才能获得 AI 生成的名称,您已经拥有的任何聊天会话都不会被重命名。

为空窗口保存聊天会话

以前,VS Code 没有为空窗口(没有打开文件夹或工作区)保存聊天会话。现在,这些会话会按预期保存,并且可以通过显示聊天按钮加载来自空窗口的先前聊天记录。

注意:您应避免同时在多个空窗口中打开和使用同一聊天会话。

在快速聊天中附加上下文

使用快速聊天时,您现在可以使用 附加上下文 操作将文件和符号等上下文附加到您的 Copilot 请求。

差评反馈详情

您是否从 Copilot 聊天中获得了不符合您期望的响应?通过在聊天响应的工具栏上选择差评按钮来帮助我们。现在,它会显示一个下拉菜单,其中包含一些详细的选项,供您描述问题。您还可以从此菜单打开问题报告器。

The chat response feedback dropdown, showing extra details on the thumbs down button.

代码生成指令(实验性)

设置github.copilot.chat.experimental.codeGeneration.instructions

Copilot 可以帮助您生成代码,例如作为重构的一部分、生成单元测试或实现功能。您可能希望使用特定的库,或者希望 Copilot 生成的代码遵循特定的编码风格。

实验性设置 github.copilot.chat.experimental.codeGeneration.instructions 使您可以定义一组添加到每个生成代码的 Copilot 请求的指令。

可以在用户或工作区设置中定义指令,也可以从文件中导入。

以下代码段显示了如何从设置和外部文件定义一组指令

  "github.copilot.chat.experimental.codeGeneration.instructions": [
    {
      "text": "Always add a comment: 'Generated by Copilot'."
    },
    {
      "text": "In TypeScript always use underscore for private field names."
    },
    {
      "file": "code-style.md" // import instructions from file `code-style.md`
    }
  ],

myProject/code-style.md 的内容

Always use React functional components.
Always add comments.

在截图中,你可以从参考部分看到这些指令被使用过

Copilot Chat using code generation instructions.

在聊天视图中自动检测聊天参与者(实验性功能)

设置: chat.experimental.detectParticipant.enabled

GitHub Copilot 有几个内置的聊天参与者,例如 @workspace,它们也会为聊天视图贡献命令。以前,你必须在聊天提示中明确指定聊天参与者和命令。

为了更容易地使用自然语言与聊天参与者互动,在接下来的几周内,我们将尝试启用 Copilot 聊天功能,使其能够自动将你的问题路由到合适的参与者或聊天命令。

Screenshot of Chat view that shows how the '@workspace' participant is automatically detected.

如果自动选择的参与者不适合你的问题,你可以选择聊天响应顶部的 重新运行但不带 链接,将你的问题重新发送给 Copilot。

使用最近的编码文件作为内联聊天上下文(实验性功能)

设置: github.copilot.chat.experimental.temporalContext.enabled

通常,当你提示 Copilot 时,你提出的问题与你刚刚正在处理或查看的代码相关。内联聊天现在可以使用最近查看或编辑过的代码作为上下文,以提供更相关的建议。

此功能仍处于实验阶段,但也欢迎所有人进行测试。

使用当前编辑器行作为内联聊天提示(实验性功能)

设置: github.copilot.config.experimental.inlineChatCompletionTrigger.enabled

现在,你无需先打开内联聊天再输入聊天提示,而是可以直接在编辑器中开始键入,并使用当前行的内容作为内联聊天的提示。为了获得更流畅的聊天体验,Copilot 可以检测到你何时是在提示而不是编写代码,然后自动为你启动内联聊天。

你可以通过以下几种不同的方式使用当前行作为内联聊天的提示:

  • 命令面板⇧⌘P (Windows, Linux Ctrl+Shift+P)) 中输入内联聊天:在编辑器中使用当前行启动
  • inlineChat.startWithCurrentLine 命令配置一个快捷键,并将其与 inlineChatExpansion 上下文键结合使用
  • 启用 github.copilot.config.experimental.inlineChatCompletionTrigger.enabled 设置,以便 Copilot 检测到当前行主要包含文本而不是源代码,然后启动内联聊天。

以下视频演示了 Copilot 如何在检测到当前行上主要包含文本后建议启动内联聊天。

从聊天启动调试(实验性功能)

设置: github.copilot.advanced.startDebugging.experimental.enabled

@vscode 聊天参与者上提供了一个新的实验性斜杠命令 /startDebugging。此命令使你能够创建启动配置并开始调试你的应用程序。

你还可以通过创建 launch.json 快速选择中的 使用 GitHub Copilot 生成调试配置 选项访问此命令。

Generate Debug Configuration with GitHub Copilot is an option in the Create a launch.json file Quick Pick.

根据测试覆盖率生成测试(实验性功能)

设置: github.copilot.chat.experimental.generateTests.codeLens

如果测试覆盖率信息可用,GitHub Copilot 可以为尚未被测试覆盖的函数和方法提供 CodeLens 使用 Copilot 生成测试

语言

将“SQL”重命名为“MS SQL”

SQL 文件的语言名称已从“SQL”重命名为“MS SQL”,以更好地反映该语言对 Microsoft SQL Server (T-SQL) 语法的关注。此语言模式的文件扩展名仍然是 .sql,语法高亮显示保持不变。

vscode.dev 上的完整项目智能感知和包类型定义

VS Code for the Web 上使用 JavaScript 和 TypeScript 的体验变得更好了。首先,我们实现了包智能感知,因此你可以看到任何导入的包(例如 react)的建议和文档。这与 VS Code 的桌面版本中的工作方式非常相似。

IntelliSense and error reporting for an imported package on vscode.dev.

在 TypeScript 文件中,我们为 package.json 中列出的包提供智能感知。JavaScript 文件更加灵活,并使用 自动类型获取,它为导入到当前文件中的任何包提供智能感知,即使该包未在 package.json 中列出。

由于有了包智能感知,我们也为 JavaScript 和 TypeScript 项目启用了完整的项目智能感知。这极大地改进了代码导航,使你可以正确地 转到定义查找所有引用 你项目中的任何符号。它还启用了类型错误报告。我们现在甚至支持在编写代码时自动导入。

Finding all references of a symbol in a TypeScript project.

Chrome、Microsoft Edge 和 Firefox 支持包类型定义和完整的项目智能感知。Safari 尚不支持,因为它没有实现 ReadableByteStreamController

源代码管理

源代码控制图视图

根据用户反馈,我们已将上个里程碑启用的历史记录图从“源代码控制”视图移动到一个名为 源代码控制图 的新视图中。这减少了主视图的信息过载,并使你可以根据需要隐藏/折叠/移动新视图。这也为功能齐全的历史记录图奠定了基础。

“源代码控制图”视图当前显示当前分支的远程/基础。在下一个里程碑中,我们将努力添加将图表筛选到任何存储库引用的功能,并改进具有多个存储库的工作区的体验。

Source Control Graph view showing a graph visualization of the repository.

主题: GitHub Sharp (在 vscode.dev 上预览)

支持 reftable 格式

Git 2.45 添加了对名为“reftable”的新引用存储后端的初步支持。在本里程碑中,我们更新了内置的 Git 扩展以支持此新的引用存储后端。

使用 Git 2.45,你可以使用 --ref-format=reftable 标志创建或克隆使用新的引用存储后端的存储库。Git 2.46 还添加了通过使用 git refs migrate 命令将现有存储库迁移为使用新的引用存储格式的支持。

请注意,新的引用存储后端仍被认为是实验性的。

紧凑文件夹设置

感谢社区的贡献,我们添加了一个新的设置 scm.compactFolders,用于控制在以树形结构查看更改时,文件夹是否在“源代码控制”视图中以紧凑形式呈现。

终端

Julia 和 NuShell 支持

现在为 Julia 和 NuShell 提供了 shell 集成支持。这启用了诸如 命令装饰运行最近命令 等功能,用于这些 shell 类型。

移动多个终端选项卡

你现在可以选择多个终端选项卡,并将它们作为有序组在终端列表中移动。

命令指南设置和颜色主题

命令指南是在悬停时显示在命令及其输出旁边的栏。你现在可以使用 terminal.integrated.shellIntegration.showCommandGuide 设置禁用 命令指南,并且可以通过主题的 terminalCommandGuide.foreground 主题键配置颜色。

笔记本

在差异视图中显示或隐藏未更改的单元格

笔记本差异视图现在隐藏未更改的单元格,这使你可以专注于已更改的单元格。同时,所有未更改的单元格的输入始终处于折叠状态。

在差异视图中管理空格

笔记本差异视图现在遵循以下设置

笔记本执行计数的粘性滚动

当向下滚动代码单元格时,代码单元格的执行计数现在会粘在屏幕底部。这使得在长代码单元格中工作时更容易查看执行状态和更新。

任务

在进程退出时保持任务终端打开

如果任务的终端进程以非零代码退出,我们现在会保持终端打开以便于调试。

调试

跳转到变量定义

调试扩展现在可以将变量和表达式链接到你代码中的位置。在“变量”视图、“监视”视图和“调试控制台”中,可以使用 Ctrl-选择(macOS 上使用 Cmd-选择)选择带有此链接的数据。

内置的 JavaScript 调试器将链接到你的代码中定义的函数的位置。其他调试扩展需要采用相应的协议更改才能启用此功能。

查找控件

你现在可以在调试控制台中打开“查找”控件 (⌥⌘F (Windows, Linux Ctrl+Alt+F)),以在输入中搜索结果。将在以后的里程碑中研究在输出中搜索结果的支持。

你还可以通过调试控制台工具栏上“筛选”控件右侧显示的 调试控制台:聚焦查找 操作访问该控件。

启动配置输入缓存

在启动配置和任务中使用的 输入变量 现在会保留其最后输入的值,以简化重新运行依赖于它们的调试会话的过程。仅当输入上没有明确定义 default 时才会执行此操作。

JavaScript 调试器

实验性网络视图

JavaScript 调试器现在包括一个基本的实验性网络视图,当 debug.javascript.enableNetworkView 设置打开时,该视图可用。该视图显示有关浏览器会话发出的请求和响应的信息。

显示 JavaScript 调试器的网络视图的屏幕截图。 主题: Codesong (在 vscode.dev 上预览)

当使用 --experimental-network-inspection 参数启动 Node.js 22.6.0 及以上版本时,“网络”视图也适用。例如,可以在 node 启动配置中添加 "runtimeArgs": ["--experimental-network-inspection"]

注意:Node 的网络实现仍处于早期阶段,关于请求和响应的大部分数据尚未可用。

测试

支持消息的堆栈跟踪

测试扩展现在可以将堆栈跟踪与测试失败相关联。当它们这样做时,你将在“测试结果”视图和错误预览中看到调用堆栈中每一帧周围的代码。你可以在视图中按住 Ctrl 键(macOS 上按住 Cmd 键)选择代码,跳转到它们的原始位置,或使用标题上的“转到文件”操作。

编辑器显示测试失败消息和导致失败的相应调用堆栈。 主题:Codesong (在 vscode.dev 上预览)

安装程序

Debian 包现在会提示你确认是否要添加 packages.microsoft.com 存储库。这使你可以使用 apt 在之后更新软件包。

Terminal showing the prompt for adding the Microsoft packages repo during the install.

远程开发

远程开发扩展允许你使用 开发容器、通过 SSH 连接的远程计算机或 远程隧道,或者 Windows 子系统 for Linux (WSL) 作为功能齐全的开发环境。

亮点包括

  • 开发容器模板的可选路径
  • 通过 SSH 扩展了对远程操作系统的兼容性

你可以在远程开发发行说明中了解有关这些功能的更多信息。

Web 版 VS Code

当在 https://vscode.dev 上浏览 GitHub 存储库或在桌面端使用 GitHub 存储库扩展时,现在会遵守 git.openDiffOnClick 设置。

Open diff by selecting Open Changes for changed resources.

对扩展的贡献

Python

Django 单元测试支持

我们很高兴地宣布支持我们最要求最多的功能之一:你现在可以通过测试资源管理器发现和运行 Django 单元测试!有关如何启用此功能的设置说明,请查看我们的文档

在测试资源管理器中发现并运行的 Django 单元测试。 主题:Catppuccin Macchiato (在 vscode.dev 上预览)

在你探索这个新添加的功能时,请在我们的 vscode-python 仓库中提供反馈并报告任何问题,或者使用“Python:报告问题”命令。

原生 REPL 改进

我们对新的原生 REPL 体验进行了更多改进和错误修复。我们正在推出原生 REPL 作为 智能发送 的默认目标进行实验,但如果你有兴趣尝试一下,可以在你的用户 settings.json 中设置 python.REPL.sendToNativeREPL,然后重新加载你的 VS Code 窗口。

使用 Pylance 从内联提示跳转到定义

当使用 Pylance 启用内联提示时,你现在可以通过悬停在其上并在按住 Ctrl 键(macOS 上按住 Cmd 键)的同时单击,更方便地导航到类型的定义。

Go to Definition supported by using Ctrl/Cmd + click when hovering over a Python type on an inlay hint.

调试测试时支持重启

你现在可以通过调试工具栏控件在调试测试时重启调试器。

GitHub Pull Requests 和 Issues

GitHub Pull Requests 扩展上取得了更多进展,该扩展使你能够处理、创建和管理拉取请求和问题。查看扩展的 0.96.0 版本更新日志以了解亮点。

扩展编写

VS Code 的 EcmaScript 模块 (ESM) 加载的影响

我们正在改变在 VS Code 核心中加载代码的方式,从 AMD/CommonJS 转变为 ESM。扩展将继续作为 CommonJS 加载,但此更改会带来对 require 方法的更改:具体来说,从我们的 1.94 版本开始,require.main 将为 undefined。如果你有从安装位置访问文件的用例,请考虑使用 vscode.env.appRoot联系我们

终端 shell 集成 API

终端 shell 集成 API 现在可以使用了。这个强大的 API 使扩展可以侦听在终端中运行的命令、读取它们的原始输出、退出代码和命令行。

window.onDidEndTerminalShellExecution(event => {
  if (event.execution.commandLine.value.startsWith('git')) {
    if (event.exitCode === 0) {
      // React to a successful git command
    } else {
      // React to a failing git command
    }
  }
});

它还提供了一种更可靠的执行命令的方式,它将等待提示符开始,然后发送命令,从而防止命令在终端中额外回显一次。

const commandLine = 'echo "Hello world"';
if (term.shellIntegration) {
  const execution = shellIntegration.executeCommand({ commandLine });
  window.onDidEndTerminalShellExecution(event => {
    if (event.execution === execution) {
      console.log(`Command exited with code ${event.exitCode}`);
    }
  });
} else {
  term.sendText(commandLine);
  // Without shell integration, we can't know when the command has finished or what the
  // exit code was.
}

有关更多信息,请参阅 vscode.d.ts 中的 API 和 扩展示例

身份验证帐户 API

身份验证 API 现在在处理多个帐户时具有更多控制权。一直以来缺少的功能是能够获取所有帐户并获取特定帐户的 AuthenticationSession。现在可以使用最终确定的 getAccounts API 实现此功能。

希望使用身份验证会话的扩展作者可以运行以下代码,以获取用户已登录的帐户的 AuthenticationSessionAccountInformation

const accounts = vscode.authentication.getAccounts('microsoft');

从那里,你可以使用这些帐户专门为这些帐户生成会话

const session = vscode.authentication.getSession('microsoft', scopes, {
  account: accounts[0]
});

注意:为了使其正常工作,身份验证提供程序需要处理传递给 getSessionscreateSession 的参数。内置的 GitHub 和 Microsoft 提供程序已经采用了此参数。

我们认为这是处理多个身份验证会话以及处理我们以前无法支持的各种情况的最清晰方法。

调试适配器协议

我们在 调试适配器协议 中将 locationReferences 添加到变量和其他数据类型,以启用源位置的关联。

VS Code 中的 WebAssembly

wasm-wasi-core 扩展的 1.0 版本与 @vscode-wasm-wasi@vscode/wasm-component-model npm 模块一起发布。用法示例可以在 vscode-extension-samples 存储库的 wasm-* 子文件夹中找到。在 VS Code 博客上,也有几篇关于如何在 VS Code 扩展中使用 WebAssembly 代码的文章。

预览功能

终端 IntelliSense 改进

实验性 PowerShell IntelliSense 在此版本中获得了以下改进

  • git checkout 现在包含 - 的补全,以切换到上一个分支。
  • terminal.integrated.suggest.runOnEnter 的默认值现在设置为忽略,这意味着 Enter 完全不与 IntelliSense 交互。这是来自用户的反馈,他们发现这对肌肉记忆的影响太大了。
  • PowerShell 关键字现在可以作为命令(而非 args)的补全。
  • cd 的第一个目录建议现在始终是它自己,当设置 terminal.integrated.suggest.runOnEnter 时,这会使事情更顺畅。 cd 进入 docs 将显示 docs 作为顶级结果。
  • 现在,当在命令行的不同位置请求时,建议更加一致。
  • 当导航返回目录时,为 <path>/../ 提供补全。 cd ..\ 将为 ..\..\ 提供建议。

Conpty 在产品中发布

Conpty 是终端的后端,它模拟伪终端在其他操作系统上的工作方式。此组件在 Windows 本身中发布,这意味着错误修复通过 Windows 更新发布。用户可能最终会等待很长时间才能收到这些修复。

在此版本中,我们有一个实验性设置,将 conpty 与 VS Code 本身捆绑在一起,类似于 Windows 终端的做法。这意味着用户可以在我们发布 VS Code 更新时获得错误修复,而无需等待 Windows 更新。

要启用此功能,请将以下设置设置为 true

"terminal.integrated.experimental.windowsUseConptyDll": true

启用此功能后,你应该期望的改进类型是

  • 更好的性能
  • 更可靠的 shell 集成
  • 更多转义序列支持(例如,即将推出 Windows 上的 sixel 支持)

目前唯一已知的问题是,某些用户的进程会一直存在并阻止 VS Code 更新 (microsoft/vscode#225719),这需要手动终止该进程才能启用更新。

TypeScript 5.6 支持

我们继续改进对即将发布的 TypeScript 5.6 的支持。查看 TypeScript 5.6 RC 博客文章,了解此版本中包含的内容的详细信息。

要开始使用 TypeScript 5.6 的预览版本,请安装 TypeScript Nightly 扩展

新的问题报告器实现

在此里程碑中,我们正在尝试新的问题报告器实现。功能保持不变,但应该有一些改进,例如改进的多显示器支持,以及在 Web 版 VS Code 中提供问题报告器。

新版本的问题报告器默认启用,可以使用桌面版 VS Code 中的 issueReporter.experimental.auxWindow 设置进行配置。

建议的 API

语言模型工具

我们继续迭代我们的 LanguageModelTool API。该 API 包含两个主要部分

  1. 扩展注册工具的能力。工具是旨在由语言模型使用的一段功能。例如,读取文件的 Git 历史记录。

  2. 语言模型支持工具的机制,例如扩展在发出请求时传递工具、语言模型请求调用工具以及扩展反馈工具调用的结果。

本月添加的更改之一是用户可以将某些工具手动附加到他们的聊天请求中。例如,对于计算用户希望在其请求中使用的某些动态上下文的工具。

该提案可以在 vscode.proposed.lmTools.d.ts 中找到。查看 tool-user 示例扩展,该示例演示了如何注册和调用工具。

请关注 issue #213274 以获取更新或向我们提供反馈。

注意:该 API 仍在积极开发中,情况会有所变化。

测试增强功能

将代码与测试关联

我们正在开发一个 API,使扩展能够将代码与测试关联起来,反之亦然。这允许用户在两者之间跳转,并启用诸如在光标处运行测试之类的操作,使其在实现代码中也能工作。我们预计随着 API 的发展,会构建更多的体验。

查看 vscode#126932 获取更多信息和更新。

可归因的测试覆盖率

我们正在开发一个 API,用于归因每个测试的测试覆盖率。这使用户能够看到哪些测试运行了哪些代码,从而过滤编辑器中显示的覆盖率以及测试覆盖率视图中的覆盖率。

查看 vscode#212196 获取更多信息和更新。

聊天参与者检测 API

如果您正在编写一个向“聊天”视图贡献参与者或聊天命令的扩展,您可以通过在 package.json 中的 chatParticipants 贡献中添加元数据来启用您的参与者和命令被自动检测。我们已使用 示例 更新了 vscode-extension-samples 仓库,展示如何采用此 API。在测试时,请务必设置 chat.experimental.detectParticipant.enabled。请注意,这是一个建议的 API,可能会发生更改。

网站

我们修复了 VS Code API 页面下的几个链接。指向泛型类型和函数的链接再次有效,并且原始类型和值不再格式化为链接了!

工程

在 VS Code 中使用 ESM 的进展

在此里程碑中,我们完成了为 VS Code Core 采用 ESM 的大部分工作。我们的目标是使用 ECMAScript 模块 (ESM) 加载并完全放弃 AMD。我们将于 9 月开始发布启用 ESM 的 Insider 构建版本,并计划在 10 月的下一个版本中将 ESM 推送到 Stable 版本。

我们发布 ESM 的计划已在 https://github.com/microsoft/vscode/issues/226260 中捕获。

值得注意的修复

感谢

最后但同样重要的是,衷心感谢 VS Code 的贡献者。

问题跟踪

我们问题跟踪的贡献

拉取请求

vscode 的贡献

vscode-css-languageservice 的贡献

vscode-eslint 的贡献

vscode-flake8 的贡献

vscode-generator-code 的贡献

vscode-hexeditor 的贡献

vscode-isort 的贡献

vscode-js-profile-visualizer 的贡献

vscode-json-languageservice 的贡献

vscode-languageserver-node 的贡献

vscode-loader 的贡献

vscode-mypy 的贡献

vscode-pull-request-github 的贡献

vscode-python-debugger 的贡献

vscode-vsce 的贡献

language-server-protocol 的贡献

python-environment-tools 的贡献