2025年1月(版本1.97)
更新 1.97.1:此更新解决了这些安全问题。
更新 1.97.2:此更新解决了这些问题。
下载: Windows: x64 Arm64 | Mac: 通用 英特尔 硅 | Linux: deb rpm tarball Arm snap
欢迎来到2025年1月发布的Visual Studio Code。这个版本有很多更新,我们希望你会喜欢,主要亮点包括:
- 下一个编辑建议(预览) - Copilot预测您可能进行的下一个编辑。
- 重新定位命令面板 - 拖动命令面板和快速输入到新位置。
- 自动接受编辑 - 在可配置的超时后自动接受 Copilot 的编辑。
- 扩展发布者信任 - 通过扩展发布者信任来保护您的环境安全。
- 复合日志 - 将多个日志合并为一个聚合日志视图。
- 过滤输出日志 - 过滤输出面板的内容。
- Git 责任信息 - 丰富的 Git 责任信息,并在 GitHub 上打开。
- 在调试变量中搜索值 - 过滤和在调试变量中搜索特定值。
- 笔记本内联值 - 在笔记本中查看代码单元格变量的内联值。
- Python 无配置调试 - 无需设置即可快速调试 Python 脚本或模块。
如果您想在线阅读这些发行说明,请访问 更新 页面 code.visualstudio.com。 内部用户: 想尽快尝试新功能吗?您可以下载 内部用户 每夜构建版本,并在最新更新可用时立即尝试。
GitHub Copilot
Copilot下一个编辑建议(预览)
设置:
GitHub Copilot代码补全在自动补码方面非常出色,但因为大多数编码活动是编辑现有代码,所以补全的自然进化也是帮助编辑。因此,我们很高兴发布一个新预览功能,Copilot Next Edit Suggestions (Copilot NES)。
根据您所做的编辑,Copilot NES 既预测您下一个想要编辑的位置,也预测该编辑的内容。NES 建议与您当前工作相关的未来更改,您可以简单地按Tab键快速导航并接受建议。
注意在下面的示例中,更改变量会触发文件中更下面的编辑建议。只需使用Tab键进行导航并接受建议。 gutter 标记将引导您到下一个编辑建议。

通过 VS Code 设置启用 Copilot NES
根据编辑的大小和类型,建议的呈现可能会动态变化,从并排显示变为在当前行的下面显示。配置
Copilot NES 正在迅速发展,我们迫不及待地想通过 我们仓库中的 issues 收到您的反馈。您可以阅读我们的完整 Copilot NES 文档 以获取更多信息和场景,随着我们扩展 NES 体验。
注意:如果您是 Copilot Business 或 Enterprise 用户,您的组织管理员必须选择启用 Copilot 的“编辑预览功能”,此外您还需要设置
github.copilot.nextEditSuggestions.enabled在你的编辑器中。
Copilot编辑
Copilot编辑正式发布
在我们的 VS Code 十月发布中,我们宣布了 Copilot 编辑的预览版。今天,我们宣布 Copilot 编辑正式可用! Copilot 编辑优化了代码编辑,并使您能够直接从聊天中在工作区中的多个文件中进行代码更改。
改进的编辑器控制
现在可以单独接受和拒绝编辑,从而给予您更多的控制权。此外,编辑控制选项在切换到并排视图时仍然可见。这对于理解较大的更改非常有用。
主题: GitHub 轻色色盲 (测试版) (预览于 vscode.dev)
最后,我们增加了一个新的设置,可以在配置的超时后自动接受编辑建议。该设置为
主题: GitHub 轻色色盲 (测试版) (预览于 vscode.dev)
在编辑器中应用
在Copilot聊天中,任何代码块都可以通过在代码块的工具栏中使用应用到编辑器操作应用到工作区中的文件。我们对这一体验进行了多项改进:
-
该操作的悬停现在显示代码块生成的文件。

-
如果代码块对应的是一个不存在的文件,系统会提示您在哪里创建该文件。这可以是 Copilot 建议的文件路径、一个无标题编辑器,或者当前活动的编辑器。
-
当计算和应用更改时,将使用与 Copilot 编辑相同的流程和用户界面。您可以单独查看、改进或丢弃每个更改。
时间背景
时间上下文在编辑或生成代码时很有帮助,因为它会告知语言模型您最近互动过的文件。我们正在实验和衡量其效果,但它也可以手动启用。
工作区索引状态UI
当你通过 问 Copilot 你项目中的代码相关问题时@工作区或#代码库,我们使用一个索引来快速准确地搜索你的代码库,以找到相关的代码片段作为上下文。这个索引可以是 由 GitHub 管理的远程索引、本地存储的索引或 基本索引,用于不能使用远程索引的大项目。
在这一迭代中,我们在状态栏的语言状态指示器中添加了新的工作区索引,该指示器显示 Copilot 所使用的索引类型以及相关信息,例如正在重新索引的文件数量。要查看此信息,请选择输入:{}VS Code 状态栏中的图标。

查看 Copilot 工作区文档 以获取有关工作区索引类型及如何在它们之间切换的更多信息。
建立远程工作空间索引
远程工作区索引由GitHub管理。远程索引可以快速提供高质量的结果,即使对于大型项目也是如此。它们只需为每个GitHub项目构建一次,而不是为每个用户构建一次。
鉴于所有这些优势,我们增加了几种新的方法将项目升级到远程索引:
-
运行新的GitHub Copilot: 构建远程索引命令。
-
在工作区索引状态界面中选择“构建索引”按钮。只有当您的项目符合远程索引条件时,才会显示此按钮。
-
选择第一个中的“构建索引”按钮
@工作区您所看到的回复。这仅在您的项目符合资格时显示,并且每个工作区只会显示一次。
请记住,目前只有具有 GitHub 远程的项目才能使用远程索引。构建远程索引可能需要一些时间,特别是如果您的项目很大。请检查工作区索引状态界面以查看远程索引是否已完成。
工作区搜索改进
我们还继续优化代码搜索@工作区和#代码库亮点包括:
Git更改上下文变量
在为 Chat 或 Edits 编写查询时,您现在可以使用以下方式引用在 Git 源代码控制中修改的文件。#更改上下文变量。例如,您可以提示总结我在工作区的#更改输入:.

型号可用性
现在在使用 Copilot 时,您可以从更多的模型中进行选择。以下模型现在可以在 Visual Studio Code 和 github.com chat 的模型选择器中使用:
-
OpenAI的o3-mini:OpenAI最新的推理模型将逐渐推出,供GitHub Copilot Pro、Business和Enterprise用户使用。了解更多关于o3-mini模型可用性的信息,请参阅GitHub博客文章。
-
Gemini 2.0 Flash:Google 最新型号在代码建议、文档和代码解释方面表现出高效能。现在,所有 GitHub Copilot 客户都可以使用该模型,包括免费的 Copilot。了解更多关于 Gemini 2.0 Flash 模型可用性的信息,请参阅 GitHub 博客文章。
无障碍
增强无障碍音效
我们根据用户反馈改进了几个无障碍声音,以提高清晰度和区分度。以下声音已更新:
- 无障碍信号保存
- 可访问性.信号.线条是否有折叠区域
- 可访问性.信号.终端快速修复
- 可访问性.信号.行有内联建议
您可以通过在命令面板中运行命令 Help: List Signal Sounds 来预览这些更新。
Copilot编辑无障碍帮助对话框
屏幕阅读器用户现在可以通过调用获得与Copilot编辑互动的指导: ⌥F1(Windows Alt+F1,Linux Shift+Alt+F1)在输入框内。
此外,当编辑器包含待处理的 Copilot 编辑时,现在会在编辑器帮助对话框中显示此状态。我们还引入了键盘快捷键以导航到下一个⌥F5(Windows, Linux Alt+F5) / 上一个⇧⌥F5(Windows, Linux Shift+Alt+F5),接受⌘Y(Windows, Linux Ctrl+Y),丢弃⌘N(Windows, Linux Ctrl+N),并切换差异视图输入:.
源代码控制无障碍帮助对话框
如果你在源代码控制视图聚焦时调用显示无障碍帮助命令,它会打开源代码控制无障碍帮助对话框,为屏幕阅读器用户提供重要信息。对话框包含当前源代码控制状态的摘要以及有关视图和如何导航的常规信息。
改进的屏幕阅读器通知
当检测到屏幕阅读器时,相关的通知现在包括一个链接以了解更多信息,提供额外的上下文和资源。
在文本转语音中忽略代码块
之前,当你使用文本转语音读取Copilot响应时,代码块也会被读出来。你可以通过使用 来忽略文本转语音会话中的代码块。
工作台
移动命令面板和快速输入
现在您可以将命令面板和其他快速输入移动到Windows的新位置,而不是将其固定在Windows顶部。
特点:
- 拖动并放下命令面板或任何其他快速输入,对齐到中心和顶部
- 持久化位置,允许您为快速输入设置一个新的永久位置
- 预设位置可在自定义布局选择器中找到
信任扩展出版商
当您首次从发布者处安装扩展时,您现在将看到一个对话框,帮助您评估扩展发布者的可信度。此功能有助于确保您仅从受信任的来源安装扩展,从而增强您的开发环境的安全性。

如果您安装扩展包或具有依赖关系的扩展,信任发布者也将隐式信任一起安装的扩展的发布者。
当您更新到 VS Code 1.97 版本时,当前已安装扩展的出版商将自动信任。您可以使用 扩展:管理受信任的扩展出版商 命令来管理受信任的扩展出版商。此命令允许您重置或撤销您之前信任的出版商的信任。

注意:当没有打开 VS Code Windows,并且您从 CLI 安装扩展时 (code-insiders --install-extension pub.name),扩展已安装,但发布者未添加到信任列表中。
欲了解更多信息,您可以访问了解更多链接。
输出面板过滤
您现在可以过滤输出面板的内容,这可以大大改善日志的管理和分析,特别是在您需要处理大量日志数据时。

- 按日志级别筛选: 根据日志的严重程度筛选(例如,错误、警告、信息)。这有助于你首先关注最严重的问题。
- 按类别筛选: 通过特定类别缩小日志范围,使您可以隔离来自特定来源或组件的日志。类别是自动从日志数据中提取的。
- 按文本筛选: 在日志中搜索特定文本,以快速找到相关条目。
复合日志
有时你会发现信息分散在多个日志中,你需要一起查看这些日志才能得到一个完整的图景。现在你可以在一个复合日志视图中查看多个日志。结合新的过滤功能,分析日志变得更加方便!
要创建自定义复合日志,请使用创建复合日志...操作在输出面板的溢出菜单中。
您还可以在编辑器或新的 VS Code Windows中打开复合日志,以灵活地进行监控和分析。此功能通过提供相关日志的综合视图来增强您诊断问题的能力。
注意: 复合日志视图目前在 VS Code 重启时不会持久化。
导出和导入日志
您现在可以使用输出视图的溢出菜单中的操作导出和导入日志。此功能通过轻松共享和审查日志来增强协作和日志管理。
在输出面板的溢出菜单中选择相应的导出日志或导入日志操作以导出或导入日志。
设置编辑器搜索修复
在这一版本中,我们修复了一个回归问题,即搜索查询中缺少字母时未显示预期结果。例如,设置编辑器无法找到
我们还修复了一个问题,即使在窄编辑组中,设置编辑器也会在搜索时显示目录。

主题: 浅粉色 (预览于 vscode.dev)
扩展过滤器增强功能
为了帮助您跟踪有可用更新的扩展以及查找最近更新的扩展,您现在可以在扩展视图中使用两个新的过滤选项:@过时和@最近更新输入:.

SVG图像预览支持
内置的图像预览现在对预览SVG文件有了基本支持。

查看Visual Studio 市场以获取更高级的 SVG 预览扩展。
从命令行界面移除工作区中的根文件夹
之前,你已经可以将根文件夹添加到多根工作区中,使用--添加 命令行 选项。
我们还添加了从多根工作区中删除根文件夹的功能,新功能--移除命令行选项。
代码 --移除 /路径/到/根文件夹
编辑器
持久化查找和替换历史记录
最后一个里程碑,我们在编辑器的查找控制中引入了历史持久化。在这个里程碑中,我们将此进一步扩展到替换输入控制,这样您可以在多个会话中分别维护两者。替换历史记录按工作区存储,并且可以通过以下方式禁用
评论
关闭未提交评论的确认信息
当您...时,将显示确认对话框输入: esc或以其他方式关闭包含未提交评论的评论控制。您可以使用设置禁用此确认。
评论编辑器中的快速操作
快速操作可以在评论编辑器中使用。

源代码管理
Git 责任信息
这个里程碑,我们继续优化功能,以便在编辑器和状态栏中显示git blame信息。我们还改进了当你悬停在编辑器装饰或状态栏项目上时显示的信息。

git blame 状态栏项目现在默认启用,您可以使用以下方法禁用它
我们还添加了命令,以便通过命令面板或使用快捷键轻松切换git blame信息:Git:切换Git Blame编辑器装饰和Git:切换Git Blame状态栏项目。
GitHub 仓库
对于托管在GitHub上的仓库,我们已在时间轴上下文菜单和悬停菜单、源代码控制图上下文菜单和悬停菜单、git blame编辑器装饰和状态栏项目悬停中添加了一个新命令在GitHub上打开。

GitHub 问题和拉取请求引用在时间轴、源代码控制图、git 责任编辑装饰和状态栏项目悬停中显示为链接,以便可以轻松在浏览器中打开。
最后但同样重要的是,我们在时间轴、源代码控制图和git blame编辑器装饰以及状态栏项目悬停中添加了GitHub头像。通过使用
源代码控制图操作
我们通过向上下文菜单中添加针对历史项引用(例如,分支标签)的作用,扩展了源代码控制图视图的功能。我们添加的第一个操作是检出,删除分支,和删除标签,这些操作允许您直接从源代码控制图视图中轻松检出分支/标签、删除分支和删除标签。
我们计划在即将到来的里程碑中增加更多的操作。
笔记本电脑
单元格执行时的内联值
笔记本编辑器现在支持在单元格执行后显示内联值,可以通过设置来启用
内联值提供程序输入:.
如果没有提供程序,回退方法会通过简单的正则表达式匹配将内核中找到的值与单元文档进行匹配。建议使用语言扩展中的提供程序以确保结果更准确。

自定义Markdown单元格的字体族
笔记本编辑器现在支持为渲染的Markdown单元格设置自定义字体系列。这可以通过

终端
支持捆绑
此功能现在被认为已经稳定。以下是自上一版本以来的更改总结:
- 启用设置已更改从
终端.集成.字体连字到终端.集成.字体组合启用输入:. - 当光标或选择在字形内时,字形现在暂时禁用。
- 使用终端.集成.字体组合.特征设置设置连字集和变体。这会被传递给
字体特征设置CSS 属性幕后揭秘。 - 使用终端.集成.字体连字.备用连字当使用的解析库不受支持时,手动设置连字序列。
支持 ConEmu 的进度逃逸序列
该ESC ] 9 ; 4ConEmu 采用的报告终端进度的 escape sequence 现在已得到支持。一些 CLI 工具(如 )使用了这一功能。翼装报告进度。要在终端标签中查看进度,请添加${进度}到任何一方
粘性滚动用于截断命令
终端中的粘性滚动 (

配置最后一个终端关闭时的行为
新的
任务
列数变量
新的${列号}变量可以在任务.json和launch.json 指光标位置的列号。查看 VS Code 文档中的 变量 全列表。
调试
筛选和搜索数值
现在您可以在变量和观察视图中搜索(⌥⌘F(Windows, Linux Ctrl+Alt+F))以根据变量和表达式的值进行过滤,而不仅仅是名称。

在调试控制台中选择
调试控制台现在支持更长和更可靠的内客选择,使复制和粘贴更加容易。
JavaScript 调试器
脚本现在可以格式化打印,通过在命令面板或编辑器操作中使用调试:格式化打印用于调试命令,即使它们不是调试器当前暂停的源文件。
语言
TypeScript 5.7.3
此版本包括 TypeScript 5.7.3 恢复版本。此小更新修复了一些导入错误和回归问题。
右键单击以从Markdown预览中打开图像
现在,您可以在Markdown预览中右键点击一个工作区图像,并选择打开图像以在新的编辑器中打开它。

这支持当前工作区中的任何图像。
Markdown 链接验证状态项目
VS Code 内置的 Markdown 功能支持自动 验证本地文件和图像链接。这是捕捉常见错误的好方法,例如链接到已重命名的标题或已不存在于磁盘上的文件。
为了帮助您发现此功能,我们为链接验证添加了一个新的语言状态项目:

打开一个Markdown文件,选择输入:{}在状态栏中查看链接验证状态。您还可以使用状态项快速切换链接验证的开启和关闭。
新的Ruby语法高亮语法文件
我们已经离开了旧的、未维护的Ruby语法。textmate/ruby.tmbundle现在获取我们的Ruby语法Shopify/ruby-lsp输入:.
远程开发
远程开发扩展允许您通过SSH或远程隧道使用开发容器、远程机器或Windows子系统 for Linux(WSL)作为功能齐全的开发环境。
亮点包括:
- 连接到 Linux 传统服务器的迁移路径
- SSH 聊天参与者改进
- SSH 配置改进
- 默认的 SSH 远程扩展
您可以在 远程开发发布说明 中了解更多关于这些功能的信息。
对扩展的贡献
微软账户
Microsoft Account 现在使用 MSAL(在 Windows 上支持 WAM)
注意:由于一个严重错误,上个月基于MSAL的Microsoft身份验证的推出不得不被回滚。这个错误已经被修复,我们正在继续进行推出。
为了确保 Microsoft 认证的强安全基线,我们在 Microsoft 帐户扩展中采用了 Microsoft 认证库。
这项工作的突出特点之一是WAM(Web Account Manager... 也称为Broker)集成。简单来说,不再需要通过浏览器进行Microsoft身份验证流程,我们现在可以直接与操作系统通信,这是获取Microsoft身份验证会话的推荐方式。此外,它更快,因为我们能够利用您已经在操作系统上登录的账户。

如果您发现此新流程有任何问题,请告知我们。如果您确实发现重大问题并需要恢复到旧的 Microsoft 认证行为,您可以这样做。
经典,重启 VS Code) 但请记住,这个设置不会持续太久。所以,如果你在 MSAL 流方面遇到问题,请提交一个 issue。
Python
从终端启动原生REPL
现在您可以在终端中从REPL启动VS Code原生REPL。设置
真应该在终端中的Python REPL中显示一个可点击的链接,允许您直接从终端中打开VS Code Native REPL。
无配置调试
现在,您可以在终端中直接调试Python脚本或模块,无需任何设置,这是全新的无需配置的调试功能的一部分!查看维基页面了解该功能的所有详细信息和故障排除技巧。
测试发现取消
当从测试资源管理器界面触发测试发现时,您现在可以取消正在进行的测试发现调用。使用取消按钮,该按钮在发现期间取代刷新按钮出现。

转到实现
Pylance 现在支持 跳转到实现,允许您更快速地从函数或方法的使用直接导航到其实现。这在处理继承类时特别有用。

AI 代码操作:生成符号(实验性)
有一个新的实验性 AI 代码操作,用于与 Pylance 和 Copilot 生成符号。要尝试它,请启用以下设置:
"python.analysis.aiCodeActions": {
"generateSymbol": true
}
然后一旦你定义了一个新的符号,例如,一个类或一个函数,你可以选择生成符号与 Copilot 代码操作,并让 Copilot 处理其实现!如果你愿意,你还可以利用 Pylance 的移动符号 代码操作将其移动到不同的文件。
GitHub 拉取请求和问题
在GitHub Pull Requests扩展上取得了更多进展,该扩展使您能够处理、创建和管理拉取请求和问题。新功能包括:
- 全局拉取请求查询,带有指定相对于今天的某个时间范围的变量
${今天-7天})。 :😌:评论中现在支持表情符号。- 当您打开未合并的拉取请求描述时,所有非过时的评论都会显示在评论面板中。
查看0.104.0版本的更新日志,了解其他亮点。
预览功能
代理模式(实验性)
我们一直在开发一种新的代理模式,用于 Copilot 编辑。在代理模式下,Copilot 可以自动搜索您的工作区以找到相关上下文,编辑文件,检查文件是否有错误,并在您同意的情况下运行终端命令,以完成整个任务。

您可以在“Copilot Edits”视图中通过下拉菜单在我们已经使用了几个月的当前编辑模式和代理模式之间切换。要看到下拉菜单,请启用

在代理模式下,Copilot 自主运行,但它只能编辑您当前的工作区中的文件。当它需要运行终端命令时,会向您显示该命令,并等待您进行审核并选择继续再执行。
注意:Copilot编辑可能会在代理模式下使用许多聊天请求,因此它将定期暂停并询问您是否继续。您可以使用
chat.agent.maxRequests这默认为 Copilot 付费用户为 15, Copilot 免费用户为 5。
了解更多关于 代理模式在 Copilot 编辑中的 信息,请参阅 VS Code 文档。
代理代码库搜索(预览)
你可以添加#代码库对您的查询, Copilot Edits 将会发现与您的任务相关的文件。我们已经添加了使用文件和文本搜索、Git 仓库状态和目录读取等附加工具来发现相关文件的实验性支持。之前,#代码库仅进行了语义搜索。
您可以启用它
VS Code Insiders 中的 Copilot 视图(预览)
我们将在GitHub Copilot Chat的预发布版本中引入端到端的视觉支持,在VS Code Insiders中。这使您能够在Copilot Chat提示中附加图像并与其互动。例如,如果您在调试时遇到错误,可以快速附加VS Code的屏幕截图并让Copilot帮助您解决该问题。

您现在可以使用几种方法上传图片:
- 从您的操作系统或资源管理器视图中拖放图像
- 从剪贴板粘贴一张图片
- 附加 VS Code Windows的截图(选择附加 > Windows截图)
如果所选模型目前没有处理图像的能力,将显示警告。目前唯一支持的模型将是GPT 4o目前,支持的图像类型有JPEG/JPG,图像文件格式,动图,和网络图像格式输入:.
可重复使用的提示(实验性)
此功能允许您构建、存储和共享可重复使用的提示。提示文件是一个提示.mdMarkdown文件遵循与Copilot Chat中编写提示相同的形式,可以链接到其他文件或甚至是其他提示。您可以附加提示文件以提供特定任务的指导,帮助代码生成,或保存完整的提示以供以后使用。
要启用提示文件,请设置
真,或使用{ "/路径/到/文件夹": 布尔值 }使用不同的路径。.github/提示文件夹默认用于定位提示文件*.提示.md),如果未指定其他路径。
了解更多关于提示文件的信息,请参阅VS Code文档。
Linux 上的自定义标题栏(实验性)
这个里程碑,我们开始了一个实验,旨在为一部分 Linux 用户启用自定义标题栏。

如果你不是实验的一部分,你可以手动配置
定制去试试看。
您可以随时恢复到原生标题装饰,无论是从自定义标题上下文菜单还是通过配置
本地输入:.

TypeScript 5.8 测试版支持
此版本包括对 TypeScript 5.8 测试版的支持。请查看 TypeScript 5.8 博客文章 以了解此版本包含的内容。
要开始使用TypeScript 5.8的预览版本,请安装TypeScript Nightly扩展。分享您的反馈,并告知我们您在使用TypeScript 5.8时遇到的任何问题。
更多 shell 的终端补全
我们已经对通用终端完成进行了迭代,这些是在上一版本中引入的,并基于我们新提议的API构建。一旦启用
以下是此版本的主要更新:
- 增强小部件的样式和配置,以符合编辑器建议的小部件。
- 一个可配置的状态栏终端.集成.建议.显示状态栏) 提供上下文操作和信息。
- 改进了命令的参数意识,包括:
代码,代码内幕,光盘,ls,删除,回声,创建目录,移除目录,触摸输入:. - 显示命令或资源路径作为附加详细信息。
- 添加了对目录导航快捷键的支持,如
输入:.,请输入具体的网页文本内容,以便我进行翻译。,和../../输入:. - 启用屏幕阅读器使用。
- 从...中提取的条目
$PATH现在只显示可执行文件。由于 Windows 文件元数据中没有可执行位的概念,因此可以配置扩展列表终端.集成.建议.Windows可执行文件扩展名这些现在也可以在可用时使用实际的 shell 环境,通过即将推出的 API 提议。 - 增强的键盘支持以切换详细信息,⌃Space(Windows, Linux Ctrl+Space)并切换建议详细信息焦点⌃⌥Space(Windows, Linux Ctrl+Alt+Space)。
- 建议现在将始终应用于每种类型,更接近于在编辑器中快速建议的工作方式。
- PowerShell特定的全局完成,例如
获取子项,Write-Host,等等。现在将建议。
基于 Tree-Sitter 的 TypeScript 语法高亮
由于我们许多 Textmate 语法不再维护,我们一直在研究使用 Tree-Sitter 来进行语法高亮。我们从 TypeScript 开始,这样团队就可以自我托管并提供反馈。你可以尝试早期预览版本的
扩展编写
文档粘贴API
文档粘贴 API 允许扩展在文本文档中的复制/粘贴操作中进行钩子操作。使用此 API,您的扩展可以:
-
在复制时,将数据写入剪贴板。这包括可以粘贴时拾取的元数据。
-
在粘贴时,生成一个应用粘贴的自定义编辑。这可以更改被粘贴的文本内容或进行更复杂的编辑,例如创建新文件。
-
提供多种方式将内容粘贴。用户可以选择使用粘贴控件或通过快捷键来决定如何粘贴内容。
编辑器粘贴偏好设置设置。
VS Code 使用文档粘贴 API 来实现诸如 在粘贴时更新 JavaScript 和 TypeScript 的导入 以及 在粘贴网址时自动创建 Markdown 链接 等功能。
要开始使用文档粘贴 API,请查看 文档粘贴扩展示例。对于一个更复杂的示例,请查看内置的 Markdown 扩展如何 实现粘贴图像文件 以将图像插入到 Markdown 文档中。
文件打开标签显示在简单文件选择器中
该打开标签物业在打开对话框选项 现在在 简单文件选择器 中支持(除了系统文件选择器,之前它在那里是独家支持的)。这允许您为文件选择器中的按钮提供自定义标签。
文件级注释 API
评论 API 支持创建和显示文件级别的评论。文件级别的评论显示在文件的顶部,即在第一行之前。它们不附属于文件中的特定行或范围。要显示文件级别的评论,请设置范围评论的未定义为了支持来自你的评论范围提供商的文件级评论,请设置启用文件评论你的财产评论范围提供者到真输入:.
提议的API
终端完成提供程序
你现在可以注册一个终端完成提供者并告诉我们你的想法在这个 GitHub 问题中.
一个例子可以在我们的终端建议扩展中找到,当通过启用时,它会提供补全。
终端外壳类型
扩展将能够访问当前活动的外壳类型信息。
壳类型该领域将成为终端状态输入:.
使用此外壳类型信息执行您需要的特定外壳操作。
工程
清洁工作
作为我们每年十二月进行的日常维护工作的一部分,我们重点清理了所有仓库的GitHub问题和拉取请求。今年,我们实现了减少3821个问题和拉取请求的净目标,确保我们的积压工作保持相关性和可管理性。
通过遵循我们的问题清理指南,我们审查和分类了过时、重复和不再相关的问题。这有助于我们保持高效的开发流程,并专注于改进Visual Studio Code以供用户使用。
我们感谢社区的持续参与和反馈——您的贡献使 VS Code 每天都变得更好!🚀

TypeScript工作区中文件监控的资源优化
对大型 TypeScript 工作区(数千个 TypeScript 文件或项目)进行了几处优化,以减少文件监视的开销。具体来说,当打开此类工作区并初始化监视器时,您不再会看到 CPU 峰值,或者 CPU 使用率会迅速稳定下来。
请参阅此 VS Code 问题 以获取更多详细信息。
重要修复
- 160325 按下 ctrl+D 后抑制终端启动失败
- 230438 对代码页的支持
1125又名cp866u - 238577 增加默认Windows大小
- 197377 在 launch.json 或 tasks.json 中,workspaceFolder 变量替换应使用 URI 用于虚拟文件系统
- 229857 运行后a11y视图是空白的
聚焦在线评论
谢谢
最后但同样重要的,向VS Code的贡献者们致以深深的谢意。
问题跟踪
对我们的问题跟踪的贡献:
拉取请求
贡献于Visual Studio Code输入:
- @Abrifq (阿尔达·艾丁):更改
创建新终端根据终端位置进行相应调整 PR #237404 - @adrianstephens:自定义编辑器预览PR #235533
- @andrewsuzuki (安德鲁·铃木):修复 editorBracketHighlight.unexpectedBracket.foreground 的 'new Color' 字符串拼写错误PR #237236
- @aslezar (希瓦姆·加尔)
- 修复不正确的GLIBC版本解析PR #236082
- 功能:支持自定义js switch-case缩进PR #237069
- @atreids (Aaron Donaldson):chore: 修复 VSIX 进度通知中的拼写错误PR #238845
- @BABA983 (BABA):使用规范资源解析自定义编辑器PR #226614
- @congyuandong (scott):修复:移除重复项
!**/*.mk依赖源中的条目 PR #236683 - @DetachHead:移除
javascript.inlayHints.enumMemberValues.enabled因为 javascript 没有 enums PR #236297 - @devm33 (Devraj Mehta):使用Electron fetch或Node fetch进行github认证以支持代理PR #238149
- @dmitrysonder (德米特里·索恩德):重写:为事件使用EventType常量PR #236941
- @fa0311 (ふぁ):修复 ${unixTime} 占位符以在 markdown.copyFiles.destination 中使用完整的毫秒时间戳PR #239061
- @g122622:文件菜单的滚动条显示在“打开最近”之上PR #236998
- @gjsjohnmurray (约翰·默里):在“打开编辑器”视图的溢出菜单中添加配置选项PR #237678
- @goodmind (andretshurotshka):修复 #44237:在任务中添加列号 PR #65264
- @HD787 (亨利)
- 为 markdown.copyFiles.destination 选项添加 ${unixTime} 占位符 PR #238027
- 在只打开配置文件时启用 typescript 命令PR #238630
- @iamdereky (Derek Yang):修复使用 HTML 转义引号时的 CSS 错误PR #235367
- @jakebailey (Jake Bailey):从 tsconfig.base.json 中移除路径 PR #238475
- @janajar (Jawad Najar):修复:在搜索编辑器中没有结果时会抛出错误PR #235031
- @jaymroy:问题:#214481 在文本转语音中添加忽略代码块的选项PR #235697
- @jogibear9988 (Jochen Kühner):支持图像预览中的 svgPR #237217
- @Jules-Bertholet (Jules Bertholet):支持默认快捷键中的前进和后退键PR #237701
- @Legend-Master (Tony):Reland修复自定义任务壳不工作,除非手动传递“运行命令”参数/标志PR #236058
- @LemmusLemmus:在 markdown 中为周围的成对添加 $ PR #233981
- @leopardracer (leopardracer):修复:文档文件中的拼写错误PR #235968
- @misode (Misode):修复加载json schema时缺少的uri到文件路径转换PR #237275
- @mohankumarelec (mohanram):修复 #236973PR #236974
- @notoriousmango (朴成敏):在 markdown 预览中添加“打开图像”上下文PR #234649
- @numbermaniac:修正 InlayHintKind 文档中的拼写错误 PR #238032
- @oltolm (oltolm):调试:停止进程时忽略错误PR #236009
- @oxcened (阿伦·阿贾姆)
- 修复:在控件失去焦点时将_lastFocusedWidget设置为未定义PR #234610
- 修复:检查在赋值时lastFocusedList是否有效PR #238765
- @pankajk07 (Pankaj Khandelwal):修复:从扩展的Web Workers同步脚本加载PR #233175
- @Parasaran-Python (帕拉萨兰)
- 修复 227150:添加了一个递归的 git 克隆按钮PR #232497
- 修复 235221:通过关闭未闭合的标签来清理 HTML 内容PR #236145
- @r3m0t (Tomer Chachamu):修复了从调试器停止并显示活动语句时暴露出笔记本单元格的问题(修复 #225290)PR #225292
- @rcjsuen (Remy Suen):修正图标扩展点帮助文本中的拼写错误PR #238393
- @RedCMD (红命令)
- 修复扩展预览代码块语言获取器PR #235880
- 添加
过时的和最近更新扩展过滤器的建议 PR #235884
- @remcohaszing (雷姆科·哈兹ing)
- 将 bun.lock 标记为 jsonc PR #235917
- 允许为jsonl语言使用.ndjson扩展名PR #235921
- @RiskyMH (Michael H):
bun.lock作为包管理器锁定文件 PR #236012 - @sunnylost (sunnylost):修复(settings-editor):确保键名的宽度不会缩小PR #229919
- @tcostew:允许在快速访问中显示 Github Copilot 聊天PR #210805
- @tmm1 (阿曼·卡姆尼)
- 构建:更新以包含更多的 tsc 模板PR #238422
- 构建:开关
构建/tsconfig.json到模块:nодenextPR #238426
- @tobil4sk:合并不同的findExecutable函数PR #228373
- @zWingz (zWing):修复(git-ext):修复 limitWarning 阻塞 git 状态进度的问题PR #226577
贡献于vscode-eslint输入:
- @ShahinSorkh (Shahin Sorkh):澄清在哪里设置
eslint.运行时和eslin exec参数选项 PR #1973
贡献于vscode扩展示例输入:
贡献于vscode-js调试输入:
- @mdh1418 (Mitchell Hwang):更新 BlazorDebugger 诊断报告事件 PR #2158
贡献于vscode-jupyter输入:
- @gy-mate (Máté Gyöngyösi):将“URL”首字母大写PR #16340
- @pwang347 (保罗):添加
等待直到为onDidStart事件 PR #16375
贡献于vscode-loc输入:
- @NicoWeio (Nicolai Weitkemper):改进README中的语法PR #1367
贡献于vscode-prompt-tsx输入:
贡献于vscode-拉取请求-GitHub输入:
- @mikeseese (Mike Seese):添加选项,以便在创建问题时始终提示选择仓库,并在问题文件中添加评论以指定仓库PR #6115
- @NellyWhads (Nelly Whads):移除Python语言用户提及例外 PR #6525
- @Ronny-zzl (张):在jsx和tsx文件中的JSDocs中不要显示@提及用户的悬停卡PR #6531
贡献于vscode-pylint输入:
- @DetachHead:解决 pylint 错误导致的内存泄漏的变通方法PR #585
贡献于vscode- Python调试器输入:
贡献于vscode-ripgrep输入:
- @fiji-flo (Florian Dieminger):修复长时间下载PR #62
- @tmm1 (Aman Karmani):arm64 windows 的修复PR #63
贡献于vscode测试输入:
- @kamaal111 (Kamaal Farah): 文档:更新 Github Actions 链接到指向示例PR #297
贡献于语言服务器协议输入:
- @asukaminato0721 (Asuka Minato): cython-lsp PR #2064
- @catwell (Pierre Chapuis):添加 Teal LSP PR #2078
- @Enaium (Enaium)
- @g-plane (Pig Fang):新的语言服务器:wasm-language-tools PR #2065
- @jcs090218 (Jen-Chieh Shen): chore(_implementors/servers.md): 更新 Ellsp 链接 PR #2073
- @kbwo (Kodai Kabasawa):在servers.md中添加测试语言服务器PR #2076
- @kylebonnici (Kyle Micallef Bonnici)将设备树 LSP 添加到列表中PR #2085
- @ribru17 (Riley Bruins):添加 ts_query_ls(Tree-sitter 查询语言服务器)PR #2068