2021 年 7 月(1.59 版本)
更新 1.59.1:此更新解决了这些问题。
此版本还解决了 CVE-2021-26437。
下载:Windows:x64 Arm64 | Mac:通用 Intel 硅 | Linux:deb rpm tarball Arm snap
欢迎使用 Visual Studio Code 2021 年 7 月版。此版本中有许多更新,我们希望您会喜欢,其中一些主要亮点包括
- 扩展视图改进 - 丰富的扩展详细信息悬停,新的运行时状态选项卡。
- 设置编辑器验证 - 快速查找基于对象的设置的编辑错误。
- 跨窗口拖放终端 - 将终端跨窗口移动到编辑器和面板区域。
- 扩展的主题自定义 - 一次自定义多个颜色主题。
- 对 Jupyter 笔记本的内置支持 - 直接在 VS Code 中打开
.ipynb
文件。 - 笔记本 UI 改进 - 显示折叠单元格的第一行,每个单元格的撤消/重做。
- 测试 API 已最终确定 - 在 VS Code 中使用内置的测试资源管理器原生支持运行测试。
- 调试反汇编视图预览 - 在 VS Code 中显示反汇编的 C++ 代码。
- 实时预览扩展 - 在 VS Code 中进行实时 HTML 预览,并支持 JavaScript 调试。
- 开发容器 devcontainer CLI - 用于使用开发容器的命令行界面。
如果您想在线阅读这些发行说明,请访问 更新 on code.visualstudio.com。
加入我们的直播,参加 VS Code 团队的直播,时间是太平洋时间 8 月 10 日星期二上午 8 点(伦敦时间下午 4 点),观看此版本中的新功能演示,并实时向我们提问。
预览版:想尽快尝试新功能吗?您可以下载每日构建的 预览版,并在最新更新可用后立即尝试。
工作台
扩展
改进了调整大小时的扩展视图。在下面的简短视频中,具有默认宽度的“扩展”视图显示所有详细信息(以前不显示图标、评分和安装计数)。随着视图缩小,会显示较小的扩展图标,并且当其宽度进一步减小时,图标和评分会被隐藏。
扩展视图现在在扩展上显示自定义悬停。这种丰富的悬停包括扩展的完整描述和其他有用的信息,例如扩展被禁用或推荐的原因。
您现在可以在扩展窗格中的新 运行时状态选项卡中检查扩展的运行时状态。状态信息包括其激活时间、是否在启动时激活以及是否存在任何警告或错误。其中一些信息显示在“扩展”视图及其悬停中(如上图所示)。
扩展窗格的“详细信息”选项卡现在显示类别、资源链接以及其他信息,例如扩展发布和更新日期。选择一个类别将在“扩展”视图中显示该类别中的其他扩展。
设置编辑器
设置编辑器现在支持对对象进行验证。验证检查在直接编辑 JSON 文件时可能引入的类型错误。
数组设置现在在非编辑模式下支持拖放。此外,将属性 uniqueItems
设置为 true
的枚举数组设置现在只显示剩余选项,而不是下拉列表中的所有选项
设置编辑器现在还支持多行字符串设置,其中该值在多行文本区域中呈现,而不是在单行输入框中呈现
扩展的主题自定义语法
下面列出的颜色自定义设置允许用户自定义当前主题的颜色
workbench.colorCustomizations
editor.tokenColorCustomizations
editor.semanticTokenColorCustomizations
有新的语法可以一次自定义多个主题
"workbench.colorCustomizations": {
"[Abyss][Red]": {
"activityBar.background": "#ff0000"
},
"[Monokai*]": {
"activityBar.background": "#ff0000"
}
},
可以列出多个主题,并且 *
通配符可以用于名称的开头和结尾。
对 Jupyter 笔记本的支持
本月,我们将处理读取 *.ipynb
文件的代码从 Jupyter Notebook 扩展移动到一个新的内置扩展中。这意味着您现在可以在 VS Code 的全新安装中打开 Jupyter 笔记本,而无需安装完整的 Jupyter 扩展。但是,如果您想执行使用 ipywidgets 或其他复杂渲染器类型的单元格或查看输出,则必须安装 Jupyter 扩展。
笔记本布局改进
我们在本次迭代中对笔记本布局进行了一些改进
- 当单元格折叠时,现在呈现单元格输入的第一行。
- 当窗口不够宽以渲染所有主要操作时,笔记本编辑器工具栏上的操作将移动到溢出菜单 (...) 中。
notebook.undoRedoPerCell
的默认值现在更改为true
。
我们还更新了代码单元格的默认样式,现在显示背景颜色以帮助区分单元格。主题可以使用 notebook.cellEditorBackground
自定义此颜色。
最后,您现在可以使用设置 notebook.globalToolbarShowLabel
切换笔记本工具栏上的文本标签
配置“复制相对路径”的路径分隔符
新的设置 explorer.copyRelativePathSeparator
允许您在调用 复制相关路径操作时显式设置路径分隔符。
可用的分隔符选项有
auto
(默认)- 使用操作系统特定的路径分隔字符。/
- 使用斜杠作为路径分隔字符。\\
- 使用反斜杠作为路径分隔字符。
跨编辑器组共享视图状态
添加了一个新的设置 workbench.editor.sharedViewState
,以配置编辑器视图状态(例如,编辑器中的滚动位置)在编辑器组之间的共享方式。
默认情况下,禁用此设置以保留当前行为。如果您在侧面打开一个编辑器,然后稍后关闭该编辑器组,然后再次在侧面打开该编辑器,则不会恢复任何视图状态,因为您正在打开一个新的编辑器组。但是,当您启用此设置时,最新的编辑器视图状态会在所有编辑器组之间保留,并且将使用它,除非找到该编辑器组的更具体的视图状态。
在下面,当重新打开侧面的 package.json
文件时,将保留选择状态。
编辑器
在折叠区域之间导航
有新的命令可以将光标位置设置为相应的折叠
- 转到下一个折叠 (
editor.gotoNextFold
) - 转到上一个折叠 (
editor.gotoPreviousFold
) - 转到父折叠 (
editor.gotoParentFold
)
这些命令目前没有默认的键绑定,但您可以通过 首选项:打开键盘快捷方式 (⌘K ⌘S (Windows, Linux Ctrl+K Ctrl+S)) 添加您自己的键盘快捷方式。
自动折叠导入
使用设置 editor.foldingImportsByDefault
使导入语句自动折叠。一旦文件打开一次,就会存储折叠状态。此功能适用于 TypeScript、JavaScript、Java、C#、C++ 以及所有具有折叠范围提供程序的语言,这些提供程序使用 FoldingRangeKind.Imports
注释导入语句。
从选择中获取种子搜索字符串
查找控件设置 editor.find.seedSearchStringFromSelection
已扩展为仅支持从非空选择中获取种子搜索字符串。默认情况下,当显示“查找”控件时,编辑器将使用选择或空选择周围的单词作为搜索键盘。
内联建议改进
我们更改了内联建议的呈现方式。这不仅修复了很多错误,而且还使单词换行能够感知内联建议。
此外,现在支持非尾部位置的多行内联建议。
插入提示改进
我们也更改了插入提示的呈现方式。通过使用与内联建议相同的机制,单词换行现在也会考虑插入提示。此机制还可以在插入提示周围启用单独的光标停止。
终端
跨窗口拖放终端
将终端从一个窗口的选项卡列表或编辑器区域拖放到另一个窗口的选项卡列表、编辑器区域或面板中。
子进程跟踪和关闭警告
现有的 terminal.integrated.confirmOnExit
和新的 terminal.integrated.confirmOnKill
设置使用子进程跟踪,以便在尝试关闭终端时,如果该终端的 shell 进程下有子进程,则会显示警告。默认情况下,此跟踪仅影响编辑器区域中的终端,但现在可以配置为对所有终端或面板区域中的终端显示警告。
将扩展贡献的终端配置文件设置为默认
由扩展贡献的终端配置文件现在可以设置为默认配置文件。默认终端配置文件在终端下拉列表中用 默认 后缀表示。
支持下划线和删除线
集成终端现在支持下划线和删除线属性。例如,可以配置 Git 以使用这些新属性。
上面的示例在 .gitconfig
中使用以下设置
[color "status"]
added = green bold
changed = red bold strike
untracked = cyan
branch = yellow black bold ul
在编辑器区域侧边创建终端
有一个新的命令 workbench.action.createTerminalEditorSide
,可以在编辑器区域中活动编辑器的侧边创建一个终端。
活动终端选项卡指示器
主题现在可以使用主题键 terminal.tab.activeBorder
设置垂直线的颜色,以指示活动的终端选项卡。
如果未设置 terminal.tab.activeBorder
,则颜色将回退到 tab.activeBorder
。
禁用终端选项卡图标中的动画
新的设置 terminal.integrated.tabs.enableAnimation
将禁用终端选项卡图标中的动画。对于任务,将使用播放按钮,而不是微调器动画。
调试
改进的编辑器标题中的“运行/调试”按钮
在 2 月份的版本中,我们引入了一个下拉按钮,用于将编辑器标题区域的“运行”和“调试”命令分组到一个中心(且紧凑)的位置(请参阅1.54 版本说明)。根据用户反馈,我们尝试通过记住上次执行的操作来改进下拉按钮。下拉按钮现在有两个点击区域,一个用于默认操作(左侧),另一个用于下拉列表(右侧),当选择下拉列表时,它会运行该操作并将其记住为新的默认操作。
下拉行为
- 如果只有一个“运行”或“调试”操作,则会省略下拉菜单。
- 如果有多个“运行”或“调试”操作,则所有操作都会出现在下拉菜单中,并且默认操作设置为下拉菜单中的第一个操作(只要没有记住的操作)。
- 默认操作会跨 VS Code 重启为特定工作区保留;它不会为每个编辑器保留。
对扩展的贡献
实时预览
- 与用于外部预览的内置 JavaScript 调试器兼容。
- 运行 实时预览:显示调试预览 进行尝试!
- 对嵌入式浏览器的改进,例如“在页面中查找”支持和快速访问
webvivew
DevTools。 - 对自动生成的文件进行文件系统监视。
- 还有更多!🎉
要查看本月进展的更多详细信息,请参阅扩展的发布说明。
GitHub 拉取请求和问题
在 GitHub 拉取请求和问题 扩展上的工作仍在继续,该扩展允许您处理、创建和管理拉取请求和问题。本月的一个亮点是,开始处理 问题的功能已扩展为允许您处理当前存储库之外的问题。
要了解所有新功能和更新,您可以查看扩展的 0.29.0 版本的完整更改日志。
Jupyter
在 Jupyter 扩展上的工作仍在继续。要了解所有新功能和更新,您可以阅读扩展的 7 月版本的完整更改日志。
如果您想了解更多关于 VS Code 为笔记本电脑启用原生支持的路径,您可以阅读最近的笔记本电脑的成熟博客文章。
交互式窗口
Jupyter 交互式窗口提供了一种替代方法来构建和使用 Jupyter 笔记本电脑,使用文本文件而不是笔记本电脑界面。上个月,我们预览了 Jupyter 交互式窗口的升级版本,该版本具有更深入的工作台集成,包括对主题、自定义键绑定、代码片段、与扩展的兼容性等等的支持。非常感谢我们的用户通过 GitHub 问题提供有关预览体验的反馈。内置的交互式窗口现在是 1.59 中的默认界面。之前的界面将保留在设置 "jupyter.enableNativeInteractiveWindow": false
之后,并将在即将发布的版本中删除。我们期待您的反馈。
逐行运行
我们一直在努力支持 Jupyter 笔记本电脑中的“逐行运行”功能。此功能本质上是一种简化的调试模式,可让您逐行单步执行单元格的代码,而无需任何复杂的调试 UI。这仍然是实验性的,但您可以通过设置 "jupyter.experimental.debugging": true
、在选定的内核中安装 ipykernel 的版本 6,然后在单元格工具栏中选择 逐行运行 按钮来试用它。
Python
在 Python 扩展中,我们改进了 Python 解释器列表的排序。过去,虚拟环境会显示在列表底部,导致需要大量滚动和/或搜索。现在,项目根目录上的虚拟环境会先显示,然后是全局安装的环境。
Dev Containers devcontainer CLI
用于从 VS Code 中使用 Docker 容器的 Dev Containers 扩展现在包括一个 devcontainer
命令行界面,可让您在 dev 容器中打开文件夹 (devcontainer open
) 或构建 dev 容器映像 (devcontainer build
)。
您可以在远程开发发行说明中了解有关新远程开发扩展功能和错误修复的信息。
预览功能
自动检测未命名文件的语言
我们很高兴地宣布自动检测未命名文件语言的初始预览版,该预览版使用机器学习来检测您正在编写代码的语言,并自动设置未命名文件的语言模式。此功能使用开源 ML 库 Tensorflow.js 和来自 GitHub 用户 @yoeo 的 Guesslang 的 ML 模型。
在此版本中,此功能默认情况下处于关闭状态,但我们计划在下一次迭代中将其设为默认状态。要启用它,请应用以下设置
"workbench.editor.untitled.experimentalLanguageDetection": true
要查看该功能的实际效果,请打开一个未命名的文件(文件 > 新建文件)并将源代码粘贴到您的编辑器中。
这是一个自动检测 Python 代码的示例
主题:Panda Theme
此外,您可以通过打开语言选择器来查看正在检测到的语言。
主题:Panda Theme
注意:如果语言检测不够自信,那么您将保持当前语言模式,并且语言选择器中不会显示任何结果,直到语言检测更有自信为止。
该设置还允许您提供语言覆盖,以指定您不希望自动切换离开的语言模式。
这是一个不自动检测 Markdown 文件的示例
"workbench.editor.untitled.experimentalLanguageDetection": true
"[markdown]": { "workbench.editor.untitled.experimentalLanguageDetection": false }
使用上述设置,当您编辑未命名的 Markdown 文件时,自动语言检测不会运行。但是,如果您修改任何其他类型的未命名文件,自动语言检测将会使用这些文件的内容运行。
我们已将与 ML 模型交互的代码分离到自己的库中,并以 npm 包的形式发布在 vscode-languagedetection repo 中。
请告诉我们未命名文件的自动语言检测如何为您工作!
TypeScript 4.4
此版本包括对即将发布的 TypeScript 4.4 版本的支持。您可以在 TypeScript 博客上阅读有关 TypeScript 4.4 中的新语言功能和改进的更多信息。一些工具亮点
- JavaScript 和 TypeScript 文件中参数名称和类型的内嵌提示。
- 纯 JavaScript 文件中的基本拼写建议。仅当 TypeScript 语言服务对错误和修复充满信心时,才会显示这些内容。
要开始使用 TypeScript 4.4 夜间构建,请安装 TypeScript Nightly 扩展。
请分享您的反馈,并告知我们您是否在 TypeScript 4.4 中遇到任何错误。
反汇编视图
感谢 Microsoft C++ 团队的 大量贡献,我们很高兴在此里程碑中包含调试反汇编视图的预览版。
可以从编辑器的上下文菜单打开反汇编视图,以显示活动堆栈帧的反汇编源代码,并且它支持单步执行汇编指令以及在单个指令上设置断点。
反汇编视图仅在活动的调试会话中可用,并且当底层调试扩展支持它时才可用。截至今天,只有 Microsoft C++ 和 模拟调试扩展可以提供反汇编视图。
从技术角度来看,VS Code 的反汇编视图实现现在支持调试适配器协议的另外四个功能
- 用于为内存位置提供反汇编源代码的
disassembly
请求。 - 堆栈帧上的
instructionPointerReference
属性。 - 单步请求上的
granularity
属性。 - 指令断点和
setInstructionBreakpoints
请求。
扩展编写
测试 API
去年秋天,我们开始致力于在 VS Code 中添加对运行测试的原生支持,本月第一组与测试相关的 API 已最终确定。与以前在扩展中找到的内容相比,这些 API 提供了更大的灵活性、更好的性能和更丰富的 UX。请查看有关编写测试扩展的指南以深入了解。
主题:codesong
Test Explorer UI 扩展的现有用户可以通过将 testExplorer.useNativeTesting
设置为 true
来获得原生体验。但是,转换是 Test Explorer UI 扩展现有 API 的反映,因此不包括一些功能,例如丰富的差异支持。
采用测试 API 的第一个扩展之一是 Microsoft Java 测试运行器,它包含在 Java 扩展包中。
“新建文件”菜单的贡献点
现在,扩展可以通过向新的 file/newFile
菜单贡献点添加命令,来创建新的文件编辑器,例如笔记本或自定义编辑器。此菜单可以通过欢迎页面或“文件”菜单中的“新建文件...”项访问。
富状态栏悬停
状态栏项现在支持包括链接和图标的富悬停提示 StatusBarItem.tooltip: string | IMarkdownString
。
- 如果
MarkdownString.supportThemeIcons
为 true,您可以使用$(iconName)
语法使用图标。 - 如果
MarkdownString
是受信任的,您还可以添加命令链接。语法:([test](command:vscode.newWindow))
。
状态栏警告颜色
表示警告的状态栏项可以使用新添加的颜色 statusBarItem.warningBackground
和 statusBarItem.warningForeground
。
没有 additionalProperties 的对象设置
对象设置必须将 additionalProperties
设置为 false
,才能在“设置”编辑器中支持该对象。否则,“设置”编辑器会将该设置解释为可以采用任何形状的复杂设置,并引导用户进入设置 JSON 文件。
多行字符串设置
要在“设置”编辑器中添加对多行字符串设置的支持,请将 "editPresentation": "multilineText"
作为键值对添加到字符串设置中。将字符串设置更改为多行将导致“设置”编辑器在多行文本区域中而不是单行输入框中呈现设置值。
更新的 codicon
我们在 codicon 库 中添加了以下新图标
azure
compass-active
compass-active
compass-dot
compass
debug-all
debug-coverage
git-pull-request-closed
git-pull-request-draft
issue-draft
layers-active
layers-dot
layers
文本文档更改原因
当触发 workspace.onDidChangeTextDocument
事件时,事件对象上的新属性 reason
指示文本更改是由“撤消”或“重做”操作引起的。
语言服务器协议
新版本的 语言服务器协议 以及相应的 npm 模块已发布。 3.17 版本包含与 VS Code 本身的最新更改一致的补全项标签详细信息的提案。
调试适配器协议
最终确定的“writeMemory”请求和“memory”事件提案
writeMemory
请求已最终确定,现在可在 调试适配器协议 的 1.48 版本和相应的 npm 模块中使用。如果调试适配器具有 supportsWriteMemoryRequest
功能,则客户端可以使用 writeMemory
请求将字节写入给定位置的内存。
memory
事件有一个 提案,该提案将在下一个里程碑中添加到 DAP。
建议的扩展 API
每个里程碑都附带新的提议 API,扩展作者可以尝试使用它们。和往常一样,我们需要您的反馈。以下是您尝试使用提议 API 所需执行的操作
- 您必须使用 Insiders 版本,因为提议的 API 经常更改。
- 您的扩展的
package.json
文件中必须有以下行:"enableProposedApi": true
。 - 将最新版本的 vscode.proposed.d.ts 文件复制到项目的源位置。
您不能发布使用提议 API 的扩展。下一个版本中可能会出现重大更改,我们绝不希望破坏现有扩展。
TaskGroup 的 isDefault
group
属性存在于 tasks.json
文件中定义的任务中,并且也通过任务 API 公开。 group
属性具有 isDefault
属性,该属性到目前为止在 API 中不可用。此提案将 isDefault
属性作为只读属性在 TaskGroup
上公开,以便扩展可以读取哪个任务是组的默认任务,但不能通过为组设置默认任务来覆盖用户的配置。
AuthenticationGetSessionOptions 的 forceRecreate
到目前为止,用于获取身份验证会话对象的 getSession
API 从来没有要求用户登录的功能。对于使用 SAML/单点登录 (SSO) 以及当 SSO 会话过期时最终失去对资源访问权限的访问令牌的 GitHub 等身份验证服务,提示登录是必要的。此提案向 AuthenticationGetSessionOptions
添加了另一个名为 forceRecreate
的属性,该属性允许您要求用户再次登录。此时将向用户显示与指定 createIfNone
时类似的模式体验。
工程
基于 iframe 的 Webview 现在在桌面上到处使用
本月,我们完成了从 Electron 的 webview 标签元素到基于普通 <iframe>
元素的 Webview 的过渡。这更好地对齐了 VS Code 在桌面和 Web 上的 Webview 实现,也让我们删除了很多现在多余的代码。
Electron 13 更新
在本里程碑中,我们完成了将 Electron 13 打包到 VS Code 中的探索,我们要感谢所有参与在 Insiders 版本上进行测试和自托管的每个人。这是一个主要的 Electron 版本,并且附带 Chromium 91.0.4472.124。此版本中 Node.js 版本没有变化,仍将为 v14.16.0。
Electron 沙箱支持的进展
随着我们不断使 VS Code 工作台准备好启用 Electron 的 沙箱,我们希望在 Linux 上启用混合沙箱模式,并且不再在我们的分布式包 deb、rpm、snap 和 tar 存档中捆绑 CLI 参数 --no-sandbox
。 Chromium 在 Linux 上具有 多层沙箱模型。如果 Chromium 无法为第 1 层使用命名空间沙箱,它将尝试通过与应用程序二进制文件一起提供的帮助程序二进制文件 chrome-sandbox
来使用 setuid 沙箱。为了使 setuid 二进制文件起作用,它需要满足以下条件
- 沙箱二进制文件必须可由 Chromium 进程执行。
- 它必须是 SUID 并且可由其他人执行。
我们能够为 deb 和 rpm 包保留这些条件。当前无法为 snap 实现这些权限,并且我们正在跟踪 问题 #127140 以解决 snap 包的未来发展。
至于使用 tar 存档,如果应用程序无法使用命名空间沙箱(在容器内运行时可能会出现这种情况),则它将失败并显示以下错误
FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that chrome-sandbox is owned by root and has mode 4755.
如果发生这种情况,您可以使用以下两个选项中的任何一个来使其工作
-
修复 setuid 帮助程序的权限
sudo chown root <path-to-vscode>/chrome-sandbox sudo chmod 4755 <path-to-vscode>/chrome-sandbox
-
使用
--no-sandbox
标志运行
冒烟测试改进
我们运行一组冒烟测试,这些测试在每次构建时触发,启动 VS Code(包括桌面版和 Web 版)并测试各种 UI 元素以确保功能正常。本里程碑中,我们在此基础设施上进行了投资,以便我们能够从发布清单中删除手动冒烟测试。
冒烟测试现在在所有平台(macOS、Linux 和 Windows)上运行。最重要的是,我们更复杂的冒烟测试套件之一,专门检查 VS Code 的上一个稳定版本和新版本之间的回归,已自动化为在每次提交时运行。
最后,感谢我们用于自动 Web 冒烟测试的出色的 Playwright 库,我们启用了他们的跟踪功能,以允许我们使用他们的 跟踪查看器 工具重播失败的冒烟测试。
值得注意的修复
- 26425:当不存在更改时,“打开更改”按钮不应显示
- 100815:连接到远程 WSL 时,外部终端中断
- 106981:当窗口缩放设置为 -1 时,终端光标重影
- 127959:当调试器暂停时,“调试”窗格打开
- 129059:“设置”编辑器中的对象小组件不呈现描述
- 129070:仅按“确定”按钮无法更正下拉设置值
- 129415:用户任务无法在单文件模式下运行
感谢
最后但同样重要的是,非常感谢以下人员本月为 VS Code 做出的贡献
对我们的问题跟踪的贡献
- John Murray (@gjsjohnmurray)
- Andrii Dieiev (@IllusionMH)
- @CodeCrazy-ywt
- ArturoDent (@ArturoDent)
- Alexander (@usernamehw)
对 vscode
的贡献
- @71 (Grégoire Geis): platform/configuration: 修复配置分析器忽略空键的问题 PR #128909
- @adaex (Aex): 添加对 eslintrc.json seti-ui 图标的支持 PR #123404
- @alanrenmsft (Alan Ren)
- 修复达到最大调用堆栈大小的问题 PR #119929
- 使下拉箭头更大以满足可访问性要求 PR #127839
- @alielbashir (Ali Elbashir): 修复 github spaces 链接中的拼写错误 PR #128120
- @andrewbranch (Andrew Branch): [typescript-language-features] 添加 suggest.allowIncompleteCompletions 并将触发类型传递给 TS 服务器 PR #127673
- @door-bell (Tim): 添加编辑器和终端外部的列表滚动灵敏度设置 PR #110059
- @galexite (George White): 添加
.ixx
作为可能的 C++ 扩展名 PR #127962 - @headerjson: 向 TaskGroup API 添加 isDefault 属性 PR #128596
- @jeanp413 (Jean Pierre)
- 修复在“打开的编辑器”和“源代码管理”视图中键盘多选不起作用的问题 PR #128284
- 修复将文件夹从资源管理器树拖到终端不再复制文件夹路径的问题 PR #128419
- 修复“在终端中运行 Python 文件”即使使用终端编辑器也会打开面板的问题 PR #128866
- @joshspicer (Josh Spicer): 修复 welcomePage.contribution.ts 中的拼写错误 PR #127893
- @karolz-ms (Karol Zadora-Przylecki): 改进 dockercompose 语言的默认值 PR #128550
- @kieranlblack (Kieran Black): 添加修改复制分隔符的设置 PR #101197
- @kilbouri (Isaac Kilbourne): 提交信息 PR #127849
- @Kingwl (Wenlu Wang)
- 添加 TypeScript 内联提示 PR #113412
- 为 monaco 公开内嵌提示 API PR #127391
- 内嵌提示默认使用 editor.fontFamily PR #128181
- 为导入范围添加自动折叠 PR #128978
- @movermeyer (Michael Overmeyer)
- 使用相同的时间解析所有基于时间的片段变量 PR #128571
- 从构造函数中删除私有字段 PR #128857
- @nickdelja (Nick Delja): 修复了小的拼写错误 PR #129439
- @NSExceptional (Tanner Bennett): 在 macOS 上提供更具体的文件类型描述 PR #117713
- @shantaram3013 (Siddharth Singh): 演练:更新已弃用的属性名称 PR #129041
- @SNDST00M (SNDST00M: M.U.N.I.N): 扩展主题自定义语法 PR #122969
- @ssigwart (Stephen Sigwart): 添加折叠跳转(父级和同一级别的下一个/上一个) PR #128450
- @suema0331: 修复#122454:截断长的终端标题 PR #122620
- @timfenney (Tim Fenney): 将复制命令标签添加到键盘快捷键。 PR #125563
- @usjpin (Utkarsh Singh): 在键入时隐藏活动栏悬停 PR #128362
- @xisui-MSFT
- 反汇编视图 PR #125737
- 修复反汇编视图中的焦点问题 PR #129616
- 反汇编视图中更大的初始视图大小 PR #129651
- “打开反汇编视图”应存在但禁用 PR #129726
对 vscode-extension-samples
的贡献
- @gjsjohnmurray (John Murray): 修复 #400 tree-view-sample:更新 package.json,package-lock.json PR #401
- @jabbera (Mike): 将 --enable-proposed-api 添加到 launch.json PR #346
- @james1293: 删除多余的 parseTree PR #406
对 vscode-languageserver-node
的贡献
- @perrinjerome (Jérome Perrin): 修复无法关闭的“请求失败”对话框 PR #787
对 vscode-pull-request-github
的贡献
- @binsee: 修复检查 fork 详细信息 PR #2806
- @iChenLei (ChenLei): chore: 将已弃用的 vscode-test 替换为 @vscode/test-electron PR #2842
对 vscode-vsce
的贡献
- @legomushroom (Oleg Solomka): 更新
azure-devops-node-api
版本 PR #589
对 debug-adapter-protocol
的贡献
- @NipunaRanasinghe (Nipuna Ransinghe ): 更新 Ballerina 调试适配器信息 PR #201
对 language-server-protocol
的贡献
- @leegbestand: 更新 jsonrpcReservedErrorRangeEnd 的注释 PR #1315
对 monaco-editor
的贡献
- @Surm4 (Marcin): 在 playground 中公开了颜色示例更新。 PR #2561
对 monaco-languages
的贡献
- @alefragnani (Alessandro Fragnani): 向 Pascal 语言添加
strict
关键字 PR #153 - @jonatanklosko (Jonatan Kłosko): 正确标记 GitHub 样式代码块中的围栏关闭 PR #149
- @lofcz (Matěj Štágl): 修复带破折号符号的标签的 razor + liquid 渲染 PR #150