3 分钟
VSCode 1.91 (2024-06) 更新日志
本次更新看点速览
新增 传入/传出更改图 的预览功能,通过
scm.experimental.showHistoryGraph
配置项可开启。
无障碍 (Accessibility)
略,详见:原文。
工作台 (Workbench)
- 搜索新增
search.ripgrep.maxThreads
配置项,用于设置搜索线程数,默认为 0,引擎将自动确认该值。 - 通过
files.candidateGuessEncodings
,配置一组在启用files.autoGuessEncoding
时应考虑的编码。配置顺序决定优先级。通过该功能,可以将可能检测到的编码限制在较小的范围内,并可以决定哪些编码检测优先级更高。 Profile 编辑器,目前处于实验性功能,可通过
workbench.experimental.enableNewProfilesUI
开启。开启后 Profile 的所有操作将在一个独立的窗口中操作。菜单栏新增菜单: 文件 -> 新增使用 Profile 新建窗口。
扩展列表上下文菜单(右键),添加更多选择项。
- 安装扩展而不同步。
- 安装扩展的特定版本。以前,必须先安装扩展的最新版本,然后才能选择特定版本。
在自定义标签中访问文件扩展名(文件后缀),如
${extname(N)}
、${extname}
。合并多个扩展中的自定义标签默认配置,详见:原文。
如果主题设置了不喜欢的颜色或边框,现在可以使用默认值将其设置回原始值:
"workbench.colorCustomizations": { "diffEditor.removedTextBorder": "default" }
折叠的省略号颜色可以通过
editor.foldPlaceholderForeground
设置。
编辑器 (Editor)
- 为保存时的代码操作配置项
editor.codeActionsOnSave
提供智能提示,会根据安装的扩展情况进行可选项的提示。该功能,详见:Code Actions on Save。 如果通过
files.readonlyInclude
设置将文件配置为只读。现在可通过编辑器消息快速切换文件的只读状态。
源代码版本控制 (Source Control)
新增 传入/传出更改图 的预览功能,通过
scm.experimental.showHistoryGraph
配置项可开启。
笔记本 (Notebooks)
略,详见:原文。
终端 (Terminal)
- 现在支持操作系统命令 (OSC) 52 转义序列。终端中运行的任何程序都可以使用该命令,但主要用途是 tmux 的剪贴板访问。
新增 分支、行号、锁定 Powerline 自定义字形,开启 GPU 加速后即可正常展示。
调试 (Debug)
JavaScript 调试器现在可以根据程序的作用域,在 Hover 时以及内联值位置(通过
debug.inlineValues
设置启用)显示 shadowed 变量的正确值。
语言 (Languages)
- 支持 TypeScript 5.5 ,详见 TypeScript 5.5 blog post。
支持对 JavaScript 和 TypeScript 的正则表达式的语法检查。
贡献到扩展 (Contributions to extensions)
GitHub Copilot
添加实验性(
inlineChat.experimental.textButtons
)的紧凑内敛聊天 UI。终端内联提示。
聊天视图中代码块上的 “在编辑器中应用” 命令使用语言模型来确定将更改应用到当前编辑器的最佳方法。
Python
- 使用 python-environment-tools 发现 python 环境。
- 智能发送到原生 REPL,详见:原文。
Pylance 现在支持在悬停时渲染 reStructuredText 文档字符串(docstrings)(实验性
python.analysis.supportRestructuredText
)。
GitHub Pull Requests and Issues,略,详见:原文。
ESLint,略,详见:原文。
扩展制作 (Extension authoring)
- Chat and Language Model API,了解更多信息,详见:announcement 博客文章,扩展示例,Chat extensibility documentation。
- 当多个扩展为同一对象设置提供默认值时,这些默认值现在会合并在一起。这样可以防止扩展程序之间发生冲突。
- 最终完成 DebugSessionOptions.testRun API。
调试适配器协议 (Debug Adapter Protocol)
- 详见:原文。
API 提案 (Proposed APIs)
工程 (Engineering)
- 将 NLS 与 AMD 加载器分离,在这个里程碑上,我们开始在 VSCode 中使用异步模块定义(AMD)加载器来移除对核心本地语言支持(NLS)的依赖。我们未来的目标是使用 ECMAScript 模块 (ESM) 加载,并完全放弃 AMD。为了向这个方向迈进,我们删除了 AMD 加载器插件的依赖关系。您应该不会注意到行为上的任何差异,而且我们以前支持的所有翻译在网页和桌面版中都仍然支持。