2024年8月(版本 1.93)
更新 1.93.1:此更新修复了以下 问题。
下载:Windows: x64 Arm64 | Mac: 通用版 Intel Silicon | Linux: deb rpm tarball Arm snap
欢迎阅读 Visual Studio Code 2024 年 8 月版。此版本带来了许多我们希望您会喜欢的更新,其中一些主要亮点包括:
- 配置编辑器 - 在一个地方切换和管理您的配置文件。
- Django 单元测试支持 - 通过测试资源管理器发现并运行 Django 单元测试。
- vscode.dev 上的 IntelliSense - 通过 IntelliSense 提升您在 vscode.dev 中的 JS 和 TS 编码体验。
- Notebook 差异查看器 - 通过折叠未更改的单元格,高效审查 Notebook 中的更改。
- 通过键盘调整表格列宽 - 使用键盘更便捷地调整 VS Code 中的表格列宽。
- 源代码管理图 - 轻松隐藏、折叠或移动源代码管理图。
- GitHub Copilot - 在快速聊天中添加上下文,改进测试生成和聊天历史记录。
- 实验:自定义 Copilot 指令 - 为 Copilot 定义特定的代码生成指令。
如果您想在线阅读这些发行说明,请访问 code.visualstudio.com 上的更新。Insiders:想尽快尝试新功能吗?您可以下载每晚Insiders版本并尽快尝试最新更新。
辅助功能
通过键盘调整表格列宽
新增了 list.resizeColumn 命令,使您能够使用键盘调整列宽。触发此命令后,选择要调整的列并输入您想要设置的宽度百分比。以下视频展示了如何应用此功能来调整键盘快捷方式编辑器中的列宽。
屏幕阅读器对合成聊天响应的支持
我们更新了 accessibility.voice.autoSynthesize 设置,允许屏幕阅读器用户选择收听由我们的合成器朗读的聊天响应,而不是获取 aria 提示。
调试改进
当您在编辑器聚焦状态下进行调试时,调用 调试:添加到监视 命令现在会为屏幕阅读器用户朗读变量的值。
此外,调试辅助功能帮助对话框也得到了改进,更加全面。
工作台
新的配置编辑器
新的配置编辑器现已在 Visual Studio Code 中全面推出。通过新的配置编辑器,您可以在一个地方管理所有配置文件。此体验包括创建新配置、编辑和删除现有配置,以及导入和导出配置以与他人共享。更多信息,请参阅 配置文档。

Linux 窗口控制覆盖支持
通过新增的 window.experimentalControlOverlay 设置,即使通过 window.titleBarStyle 设置启用了自定义标题栏,原生窗口控件也能显示出来。

开箱即用,我们尚未在 Linux 上默认启用自定义标题,但我们最终计划这样做。一旦您打开自定义标题,原生窗口控制覆盖层将自动出现。欢迎您对使用此新功能时遇到的任何情况提供反馈!
评论排序
评论现在可以按其在文件中的位置或按日期进行排序。

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

资源管理器中的反向排序
我们添加了一个额外的排序选项 explorer.sortOrderReverse,它允许您反转资源管理器的各种排序配置,从而提供更灵活的排序方式。
编辑器
灯泡图标改进
在上一里程碑中,我们改进了代码操作 (Code Actions) 灯泡图标的显示位置。现在我们决定默认将 editor.lightbulb.enabled 设置为 onCode。这意味着灯泡图标仅在光标位于包含源代码的行上时才会显示,从而减少其出现频率。
操作列表的颜色主题
操作列表控件(例如代码操作菜单)的颜色可以由主题通过 editorActionList.background、editorActionList.foreground、editorActionList.focusForeground 和 editorActionList.focusBackground 键进行配置。默认情况下,操作列表控件的主题与快速选择 (Quick Pick) 和命令面板匹配。获取有关 自定义颜色主题 的更多信息。
GitHub Copilot
在本里程碑中,我们继续在编辑器、聊天视图和行内聊天中改进 GitHub Copilot 体验。我们还添加了几个实验性功能供您尝试,并期待获得您的反馈。
改进的测试生成
使用 GitHub Copilot,您可以为代码生成测试,方法是使用编辑器内容菜单中的 使用 Copilot 生成测试 操作,或在行内聊天中使用 /tests 斜杠命令。
我们改进了测试生成流程,它会查找现有的测试文件并将新生成的测试附加到文件末尾。如果尚无测试文件,Copilot 将为生成的测试创建一个新测试文件。
重命名用于生成测试和文档的代码操作
当您将光标置于标识符(例如方法名)上时,GitHub Copilot 会为您提供用于生成测试或文档的代码操作。为了更好地反映其目的,我们将这些代码操作重命名为 使用 Copilot 生成测试 和 使用 Copilot 生成文档。之前它们分别被称为 Test using Copilot 和 Document using Copilot。

改进的聊天历史记录
您可以通过聊天视图顶部的 显示聊天 按钮打开之前的聊天会话。这些会话现在有了更人性化、由 AI 生成的名称。您还可以通过选择每行上的铅笔图标手动重命名会话。
这些聊天历史记录条目现在也按最后请求的日期进行排序,并按日期分段进行了标记和分组。

注意:只有新的聊天会话会获得 AI 生成的名称,您现有的聊天会话不会被重命名。
为空窗口保存聊天会话
此前,VS Code 不会为空窗口(未打开文件夹或工作区)保存聊天会话。现在,这些会话已按预期保存,可以通过 显示聊天 按钮加载来自空窗口的之前聊天记录。
注意:您应避免在多个空窗口中同时打开和使用同一个聊天会话。
在快速聊天中附加上下文
使用快速聊天时,现在可以使用 附加上下文 操作将文件和符号等上下文添加到您的 Copilot 请求中。
踩(Thumbs down)反馈详情
如果 Copilot Chat 的回复未达到您的预期,请通过点击聊天回复工具栏上的 踩 按钮来帮助我们。现在,它会显示一个包含几个详细选项的下拉菜单,供您描述问题。您还可以从此菜单打开问题报告工具。
![]()
代码生成指令(实验性)
设置: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.
在截图中,您可以看到引用部分中使用了这些指令

聊天视图中的自动聊天参与者检测(实验性)
设置:chat.experimental.detectParticipant.enabled
GitHub Copilot 有几个内置的聊天参与者,例如 @workspace,它们也为聊天视图提供了命令。此前,您必须在聊天提示词中明确指定聊天参与者和命令。
为了更轻松地通过自然语言使用聊天参与者,在接下来的几周内,我们将尝试让 Copilot Chat 能够自动将您的问题路由到合适的参与者或聊天命令。

如果自动选择的参与者不适合您的问题,您可以选择聊天回复顶部的 不使用该参与者重试 链接,将您的问题重新发送给 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 生成调试配置 选项来访问此命令。

基于测试覆盖率生成测试(实验性)
设置:github.copilot.chat.experimental.generateTests.codeLens
如果测试覆盖率信息可用,GitHub Copilot 可以为尚未被测试覆盖的函数和方法提供 使用 Copilot 生成测试 的 CodeLens。
语言
将“SQL”重命名为“MS SQL”
SQL 文件的语言名称已从“SQL”重命名为“MS SQL”,以更好地反映该语言对 Microsoft SQL Server (T-SQL) 语法的侧重。此语言模式的文件扩展名仍为 .sql,语法高亮保持不变。
vscode.dev 上的全项目 IntelliSense 和包类型支持
在 Web 版 VS Code 上使用 JavaScript 和 TypeScript 的体验变得更好了。首先,我们实现了包 IntelliSense,因此您可以像在桌面版 VS Code 中一样,查看来自任何已导入包(如 react)的建议和文档。

在 TypeScript 文件中,我们为 package.json 中列出的包提供 IntelliSense。JavaScript 文件更灵活,使用 自动类型获取,它为导入到当前文件中的任何包提供 IntelliSense,即使该包未列在 package.json 中。
得益于包 IntelliSense,我们还为 JavaScript 和 TypeScript 项目启用了全项目 IntelliSense。这极大地改进了代码导航,让您可以正确地 转到定义 和 查找所有引用 项目中的任何符号。它还启用了类型错误报告。我们甚至现在支持在编写代码时自动导入。

包类型支持和全项目 IntelliSense 在 Chrome、Microsoft Edge 和 Firefox 中受支持。Safari 尚不支持,因为它尚未实现 ReadableByteStreamController。
源代码管理
源代码管理图视图
根据用户反馈,我们将上一里程碑中启用的历史记录图从源代码管理视图移动到了一个名为 源代码管理图 的新视图中。这减轻了主视图的信息负载,并允许您根据需要隐藏/折叠/移动新视图。这也为功能齐全的历史记录图奠定了基础。
源代码管理图视图目前显示当前分支的远程/基准。在下一个里程碑中,我们将致力于添加将图过滤到任何存储库引用的功能,并改善具有多个存储库的工作区的体验。

主题: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 主题键进行配置。
Notebook
在差异视图中显示或隐藏未更改的单元格
Notebook 差异视图现在隐藏未更改的单元格,使您可以专注于已更改的单元格。同时,所有未更改单元格的输入始终是折叠的。
在差异视图中管理空白字符
Notebook 差异视图现在遵循以下设置
diffEditor.ignoreTrimWhitespace- 在显示差异时忽略前导和尾随空白。
Notebook 执行计数的粘性滚动
当向下滚动代码单元格时,代码单元格的执行计数现在会粘在屏幕底部。这使得在长代码单元格中工作时更容易查看执行状态和更新。
任务
进程退出时保持任务终端打开
如果任务的终端进程以非零代码退出,我们现在会保持该终端打开,以便于调试。
调试
跳转到变量定义
调试扩展现在可以将变量和表达式链接到代码中的位置。具有此链接的数据可以在“变量”视图、“监视”视图和调试控制台中通过 Ctrl 选择(macOS 上为 Cmd 选择)。
内置的 JavaScript 调试器将链接在代码中定义的函数位置。其他调试扩展需要采用相应的协议更改才能启用此功能。
查找控件
您现在可以在调试控制台中打开查找控件(⌥⌘F (Windows, Linux Ctrl+Alt+F))来搜索输入中的结果。未来里程碑将研究对搜索输出结果的支持。
您还可以通过调试控制台工具栏中过滤器控件右侧的 调试控制台:聚焦查找 操作访问该控件。
启动配置输入缓存
启动配置和任务中使用的 输入变量 现在会保留其上次输入的值,以简化重新运行依赖它们的调试会话的过程。这仅在输入上没有明确定义 default 时才会执行。
JavaScript 调试器
实验性网络视图
JavaScript 调试器现在包含一个基础的、实验性的网络视图,当开启 debug.javascript.enableNetworkView 设置时可用。该视图显示有关浏览器会话发出的请求和响应的信息。
主题:Codesong (在 vscode.dev 上预览)
当进程使用 --experimental-network-inspection 参数启动时,网络视图也适用于 Node.js 22.6.0 及以上版本,例如通过在 node 启动配置中添加 "runtimeArgs": ["--experimental-network-inspection"]。
注意:Node.js 的网络实现仍处于早期阶段,有关请求和响应的大多数数据尚不可用。
测试
支持消息上的堆栈跟踪
测试扩展现在可以将堆栈跟踪与测试失败关联起来。关联后,您将在测试结果视图和错误查看中看到调用堆栈每一帧周围的代码。您可以在视图中通过 Ctrl 选择(macOS 上为 Cmd 选择)代码以转到它们的原始位置,或使用其标题上的 转到文件 操作。
主题:Codesong (在 vscode.dev 上预览)
安装程序
Debian 软件包现在会提示您确认是否要添加 packages.microsoft.com 存储库。这使您之后可以使用 apt 更新软件包。

远程开发
远程开发扩展允许您通过 SSH 或远程隧道使用开发容器、远程机器或适用于 Linux 的 Windows 子系统 (WSL) 作为功能齐全的开发环境。
亮点包括:
- 开发容器模板的可选路径
- 扩展了 SSH 远程操作系统的兼容性
您可以在 远程开发发布说明 中了解有关这些功能的更多信息。
Web 版 VS Code
现在在 https://vscode.dev 上浏览 GitHub 存储库,或者在使用 GitHub Repositories 扩展 的桌面上浏览时,git.openDiffOnClick 设置将生效。

对扩展的贡献
Python
Django 单元测试支持
我们很高兴地宣布支持我们最 受期待的功能之一:您现在可以通过测试资源管理器发现并运行 Django 单元测试!关于如何启用此功能的设置说明,请查看我们的文档。
主题:Catppuccin Macchiato (在 vscode.dev 上预览)
在您探索这一新增功能时,请在我们的 vscode-python 仓库 中提供反馈并报告任何问题,或使用 Python: 报告问题 命令。
原生 REPL 改进
我们对新的原生 REPL 体验进行了更多的改进和错误修复。我们正在实验性地将原生 REPL 推广为 智能发送 (Smart Send) 的默认目标,但如果您有兴趣尝试,可以在您的用户 settings.json 中设置 python.REPL.sendToNativeREPL 并重新加载您的 VS Code 窗口。
通过 Pylance 的内嵌提示 (Inlay Hints) 转到定义
当 启用内嵌提示 并使用 Pylance 时,您现在可以通过按住 Ctrl(macOS 上为 Cmd)并点击类型来更方便地导航到其定义。

调试测试时的重启支持
您现在可以通过调试工具栏控件在调试测试时重启调试器。
GitHub 拉取请求和议题
GitHub Pull Requests 扩展取得了更多进展,它使您能够处理、创建和管理拉取请求和问题。查看该扩展 0.96.0 版本的更新日志 以了解亮点。
扩展创作
EcmaScript 模块 (ESM) 加载对 VS Code 的影响
我们正在更改 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 以及 扩展示例。
Terminal.shellIntegrationwindow.onDidChangeTerminalShellIntegrationwindow.onDidStartTerminalShellExecutionwindow.onDidEndTerminalShellExecution
身份验证账户 API
身份验证 API 在处理多个账户时现在有了更多控制权。一直缺失的是获取所有账户并为特定账户获取 AuthenticationSession 的能力。随着 getAccounts API 的最终确定,现在可以实现了。
希望使用身份验证会话的扩展作者可以运行以下代码来获取用户已登录账户的 AuthenticationSessionAccountInformation
const accounts = vscode.authentication.getAccounts('microsoft');
从那里,您可以使用这些账户专门为它们创建会话
const session = vscode.authentication.getSession('microsoft', scopes, {
account: accounts[0]
});
注意:要使此功能生效,身份验证提供程序需要处理同时传递给
getSessions和createSession的参数。内置的 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的默认值现在设置为 ignore,这意味着 Enter 键完全不与 IntelliSense 交互。这是根据用户的反馈做出的调整,他们发现之前的行为严重干扰了肌肉记忆。- PowerShell 关键字现在可作为命令(非参数)的补全使用。
cd的第一个目录建议现在总是它本身,这使得当terminal.integrated.suggest.runOnEnter设置为启用时,操作更加顺滑。
- 现在当在命令行不同位置请求补全时,建议更加一致。
- 在向后导航目录时,提供了
<path>/../的补全。
Conpty 随产品发布
Conpty 是终端的后端,用于模拟伪终端在其他操作系统上的工作方式。此组件随 Windows 本身发布,这意味着错误修复是通过 Windows 更新发布的。用户可能需要很长时间才能等到这些修复程序到来。
在本版本中,我们有一个实验性设置,将 conpty 与 VS Code 本身捆绑在一起,类似于 Windows Terminal 的做法。这意味着用户可以在我们发布 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 包含两个主要部分
-
扩展注册 工具 的能力。工具是一种旨在供语言模型使用的功能片段。例如,读取文件的 Git 历史记录。
-
语言模型支持工具的机制,例如扩展在发出请求时传递工具、语言模型请求工具调用以及扩展传回工具调用结果。
本月增加的更改之一是用户能够手动将某些工具附加到他们的聊天请求中。例如,对于用户想要在请求中使用的、计算某些动态上下文的工具。
该提案可在 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 的进展
在本里程碑期间,我们完成了将 ESM 引入 VS Code 核心的大部分工作。我们的目标是使用 ECMAScript 模块 (ESM) 加载并完全弃用 AMD。我们将于 9 月开始发布支持 ESM 的 Insider 构建,并计划在 10 月的下一个版本中向稳定版发布 ESM。
我们发布 ESM 的计划在 https://github.com/microsoft/vscode/issues/226260 中说明。
值得注意的修复
感谢
最后但同样重要的是,向 VS Code 的贡献者们致以衷心的感谢。
问题跟踪
对我们问题跟踪的贡献
- @gjsjohnmurray (John Murray)
- @IllusionMH (Andrii Dieiev)
- @RedCMD (RedCMD)
- @albertosantini (Alberto Santini)
拉取请求
对 vscode 的贡献
- @akinomyoga (Koichi Murase): 修复 Bash 集成破坏
PROMPT_COMMAND的$?的问题 PR #226929 - @andrewbranch (Andrew Branch): [typescript-language-features] 添加 autoImportSpecifierExcludeRegexes 偏好设置 PR #226202
- @anton-matosov (Anton Matosov): #171066 的跟进,修复 zsh 和 fish shell 实现 PR #223421
- @arvid220u (Arvid Lunnemark): 永远不要运行已清除的 auxwindow 超时 PR #221296
- @BABA983 (BABA)
- 移除重复代码 PR #224091
- 拖动多个选项卡后尊重原始终端选项卡顺序 PR #224591
- 添加 registerWindowTitleVariable 命令 PR #225408
- @bsShoham (Shoham Ben Shitrit): 在单词开头触发聊天变量补全 PR #224174
- @Cecil0o0 (hj): 重构:合并相同的命名空间声明 PR #219638
- @CGNonofr (Loïc Mangeonjean): 在所有地方正确检测 node 环境 PR #221357
- @cobey (Cody Beyer): 为 python 和 js 添加 ai-inference 标签 PR #225098
- @dangerman (Anees Ahee)
- 修复命令面板中缺少“重启 TS 服务器”命令的问题 PR #223433
- 圆角通知聚焦轮廓 PR #225824
- @Flanker32 (Hanxiao Liu): 更新 java ai 库的工作区标记 PR #223677
- @gabritto (Gabriela Araujo Britto)
- [typescript-language-features] 在可用时使用 tsserver 的提交字符 PR #223541
- [typescript-language-features] 修复诊断遥测属性名称 PR #225079
- @gjsjohnmurray (John Murray)
- 在恢复(同时重置 mtime)后显示只读文件名装饰(修复 #221014) PR #221023
- 修复补全项目状态栏文本的大小写错误 (#_225429) PR #225431
- 改进
workbench.editor.enablePreview设置的描述(修复 #225453) PR #225704
- @hron (Aleksei Gusev): 修复:将
merge.toggleActiveConflict作为快捷方式 PR #225320 - @iisaduan (Isabel Duan): 将 typescript 的 organizeImports 设置添加到设置接口 PR #209293
- @jeanp413 (Jean Pierre)
- 修复将搜索视图移动到其他位置后,搜索结果在编辑器更改时不会自动更新的问题 PR #215764
- 更改终端重命名图标 PR #225444
- 修复资源管理器将任何带有“cut”字样的文件夹/项目变灰的问题 PR #225455
- @Jesscha (JessCha): 修复 extHostExtensionService.ts 中的拼写错误 PR #224111
- @m-byte (Matthias B.): 修复:仅为需要它们的开发者添加 apt 源 (#_22145) PR #221285
- @mkasenberg: 修复搜索编辑器的 focusResult PR #205914
- @mogelbrod (Victor Hallberg): 向评论面板添加“按更新时间排序”选项 PR #221665
- @NriotHrreion (Norcleeh): 修复:活动终端被杀掉时命令面板关闭的问题 PR #225500
- @r3m0t (Tomer Chachamu): 修复用户设置打开时“打开工作区设置”的问题(修复 #148709) PR #225311
- @rbuckton (Ron Buckton): 更新以支持 strictBuiltinIteratorReturn PR #222009
- @rehmsen (Ole): 使 Notebook 编辑器中 markdown 注释中的常规文本换行。 PR #224484
- @RichardLuo0 (RichardLuo): 修复:从对话框按钮中移除工具提示 PR #225772
- @stalematker (Kevin): 修复 extensionEnablementService.ts 中的拼写错误 PR #224145
- @swordensen (Michael Sorensen): 修复 #218626 PR #219148
- @thegecko (Rob Moran): 添加 viewContainer 贡献点 PR #212499
- @tisilent (xiejialong): 添加 scm.compactFolders。 PR #221459
- @troy351: 修复:multiDiffEditor 背景颜色名称错误 PR #224151
- @walter-erquinigo (Walter Erquinigo): 处理来自动态调试配置提供程序的错误 PR #202622
- @zkat (Kat Marchán): 停止 AutoInstallerFs 的无限次刷新并修复类型安装程序 PR #225648
对 vscode-css-languageservice 的贡献
- @wkillerud (William Killerud): 修复:支持 sass 包中的条件导出 PR #400
对 vscode-eslint 的贡献
- @denis-sokolov (Denis Sokolov): Readme 中的琐碎修复 PR #1903
对 vscode-flake8 的贡献
- @taesungh (Taesung Hwang): 将全局设置用于
ignorePatterns默认值 PR #327
对 vscode-generator-code 的贡献
- @spjpgrd (seán patrick john paul george ringo doran): 更新 vsc-extension-quickstart.md PR #486
对 vscode-hexeditor 的贡献
- @tomilho (Tomás Silva): HexEditor 差异 PR #522
对 vscode-isort 的贡献
- @iloveitaly (Michael Bianco): 修复:添加工具路径以便 isort 无需捆绑版本即可工作 PR #417
- @jicruz96 (J.I. Cruz): 如果文件有
skip_file注释,则不记录回溯 PR #416
对 vscode-js-profile-visualizer 的贡献
对 vscode-json-languageservice 的贡献
- @jeremyfiel (Jeremy Fiel): 更新 DocumentSymbols.test.ts 中的无效 json 实例 PR #241
- @remcohaszing (Remco Haszing): 弃用 Thenable 并将其别名为 PromiseLike PR #239
- @ttlopes (Tomás Lopes): 修复 microsoft/vscode#209655:修复区分大小写的 JSON 排序错误 PR #238
对 vscode-languageserver-node 的贡献
- @DavyLandman (Davy Landman): 显示来自 LSP 服务器的错误消息 PR #1490
- @sh-cho (Seonghyeon Cho): 修复 npm、azure pipeline 链接 PR #1544
对 vscode-loader 的贡献
- @SimonSiefke (Simon Siefke): 特性:在
this未定义的情况下将amdLoaderGlobal设置为globalThisPR #58
对 vscode-mypy 的贡献
- @hamirmahal (Hamir Mahal)
- @meghprkh (Megh Parikh): 将 mypy 更新到 1.11.0 PR #311
对 vscode-pull-request-github 的贡献
对 vscode-python-debugger 的贡献
对 vscode-vsce 的贡献
- @BlackHole1 (Kevin Cui): 修复:概率性触发 v8 崩溃 PR #1032
- @mark-wiemer (Mark Wiemer): 修复 punycode 弃用警告 PR #1037
对 language-server-protocol 的贡献
- @asukaminato0721 (Asuka Minato): 添加 egglog PR #1989
- @LPeter1997: 添加 Draco.Lsp 作为 .NET 中的 LSP SDK PR #2001
- @marcoroth (Marco Roth)
- @techee (Jiří Techet): 将 Geany 添加到支持 LSP 的编辑器列表中 PR #2008
- @XuechunHHH (Xuechun Hua): 将 PartiQL 添加到 servers.md PR #1985
对 python-environment-tools 的贡献