2019 年 10 月 (版本 1.40)
更新 1.40.1: 此更新解决了这些问题。
更新 1.40.2: 此更新解决了这些问题。
下载: Windows: x64 | Mac: Intel | Linux: deb rpm tarball snap
欢迎来到 Visual Studio Code 2019 年 10 月版本。正如10 月迭代计划中宣布的那样,我们专注于清理 GitHub 问题和拉取请求,这在我们的问题清理指南中有所记录。在所有 VS Code 仓库中,我们关闭(分类或修复)了 4622 个问题,甚至比我们上次 2018 年 9 月的清理迭代中关闭的 3918 个问题还要多。在我们关闭旧问题的同时,你们创建了 2195 个新问题。这使得问题数量净减少了 2427 个。主要的 vscode 仓库现在有 2162 个未解决的功能请求和 725 个未解决的错误。此外,我们关闭了 287 个拉取请求。作为这项工作的一部分,我们还调整了流程并更新了问题分类工作流。
与去年一样,我们使用 Benjamin Lannon 的实时跟踪器来跟踪我们的进度。
在此次清理里程碑期间,我们还解决了多个功能请求和社区拉取请求。继续阅读以了解新功能和设置。
工作台
活动栏指示器
我们为活动栏中的活动项引入了一个新的指示器,使其更突出并提高可读性。我们还调整了非活动前景色,使其与活动元素形成更强的对比。
您可以通过新的颜色标记 activityBar.activeBorder
控制活动指示器。我们还为活动元素引入了一个可选的背景色 activityBar.activeBackground
,配置后效果如下:
可主题化窗口边框
我们引入了两个新的主题颜色 window.activeBorder
和 window.inactiveBorder
,用于在 VS Code 窗口周围提供边框。window.activeBorder
适用于活动(聚焦)窗口,而 window.inactiveBorder
适用于非活动(未聚焦)窗口。这些新颜色不继承自任何颜色,因此必须由主题或 workbench.colorCustomizations
设置提供。如果只指定一种颜色,则该颜色边框将应用于活动和非活动窗口。
列表和树键盘滚动
您现在可以按 ⌘↑ (Windows, Linux Ctrl+Up) 和 ⌘↓ (Windows, Linux Ctrl+Down) 来使用键盘滚动列表和树。
Zen 模式下更少的通知
在使用 Zen 模式时,除非通知是关于错误的信息,否则通知浮窗将不再分散您的注意力。您可以通过新的 zenMode.silentNotifications
设置控制此行为。您始终可以通过单击右下角的通知图标从状态栏访问所有通知。
大纲和面包屑的类型过滤器
有新的设置可以配置大纲视图和面包屑导航中显示的符号。这些设置名为 outline.show{symbol type}
和 breadcrumbs.show{symbol type}
。例如,outline.showVariables
、outline.showFunctions
等。
上面的截图显示了大纲视图配置为不显示局部变量,您可以看到变量 hidden
没有显示。
请注意,符号的类型由语言扩展来指定。您可以将鼠标悬停在大纲视图中的符号标签上,以查看正在使用的符号类型(括号中显示)。
控制拆分编辑器时的大小调整行为
新的设置 workbench.editor.splitSizing
控制拆分编辑器时的布局。默认情况下,大小将均匀分布在所有编辑器之间,如下所示:
将此设置更改为 split
,以便当前编辑器被分割成两半,而不影响其他编辑器的大小。
禁用 GPU 加速
我们收到了一些用户的问题报告,这些问题似乎与 GPU 如何用于渲染 VS Code 的 UI 有关。这些用户在运行 VS Code 时使用附加的 --disable-gpu
命令行参数,体验会好得多。使用此参数运行将禁用 GPU 硬件加速并回退到软件渲染器。
为了方便起见,您可以将此标志添加为设置,这样就不必每次都在命令行中传递它。
添加此标志
- 打开命令面板 (⇧⌘P (Windows, Linux Ctrl+Shift+P))。
- 运行**首选项:配置运行时参数**命令。
- 此命令将打开一个
argv.json
文件来配置运行时参数。您可能已经看到了一些默认参数。 - 添加
"disable-hardware-acceleration": true
。 - 重启 VS Code。
注意: 除非您遇到问题,否则不要使用此设置!
编辑器
files.eol 按语言设置
files.eol
设置现在可以按语言设置。例如,您可以定义所有“mylanguage”语言标识符的文件都使用 \n
作为所有新文件的默认行尾序列。
"[mylanguage]": {
"files.eol": "\n"
}
行尾序列用于新文件。对于现有文件,当前行尾序列始终保留。要更改现有文件的行尾序列,请使用更改行尾序列命令。
使用 files.eol
语言设置,现在将“shellscript”的默认行尾序列定义为 \n
。
缩略图缩放和改进的字体渲染
一个新的设置 editor.minimap.scale
将缩略图的大小配置为几个常量值之一,这对于高 DPI 或超宽显示器特别有用。此外,缩略图字体的渲染现在更平滑、更清晰。
键盘定义预览悬停
新增了一个命令显示定义预览悬停,以提高定义预览悬停小部件的可访问性,该小部件可以通过鼠标悬停在符号上并按下取决于平台和配置的修改键来触发。以前,只提供了显示悬停命令,这等同于将鼠标光标悬停在符号上。现在,通过显示定义预览悬停,可以通过键盘显示详细的悬停信息。
括号匹配改进
以前,VS Code 只会在光标靠近括号字符时突出显示匹配的括号。现在,VS Code 将始终突出显示存在的封闭括号。
我们还调整了跳转到括号和选择到括号操作,以使用封闭括号。
复制选区
我们添加了一个名为复制选区的新操作。执行时,当前选区将被复制,并且结果将被选中。如果没有选区,则当前行将被复制,所有这些操作都不会写入系统剪贴板。
字体特征设置
现在可以更精细地控制字体功能。当配置 "editor.fontLigatures": true
时,VS Code 会启用 liga
和 calt
。但是有些字体有更多的设置,例如 Fira Code 使用的样式集。
我们现在允许显式控制这些字体功能,例如:
"editor.fontFamily": "Fira Code",
"editor.fontLigatures": true,
"[javascript]": {
"editor.fontLigatures": "'ss02', 'ss19'",
},
上述设置将编辑器配置为使用 Fira Code 字体系列,为所有语言启用字体连字,并在 JavaScript 文件中启用“水平条”('ss02') 和“点零”('ss19') 字体功能设置。这使得 >=
连字在 JavaScript 中呈现为水平条,并且 0
呈现为内部有一个点的形式。
更好地处理 Unicode 组合字符
我们改进了对Unicode 组合字符的处理,我们将此类序列视为原子字符(在光标移动、编辑操作或块光标渲染中)。这最好通过块光标样式和前后动画来演示。
之前
之后
在一个相关的更改中,状态栏现在在 Col
部分显示 Unicode 码点计数。
光标重做
软撤销命令已重命名为光标撤销。此操作很有用,例如在使用 ⌘D (Windows, Linux Ctrl+D) 选择下一个匹配项时,如果一次性前进得太远,因为它只撤销上次光标状态更改。此外,我们现在添加了光标重做,它会重做之前撤销的光标状态更改。
差异编辑器改进
内置的差异计算以前有一个 5 秒的硬编码超时,之后它会放弃并返回一个非最小差异。您现在可以使用 "diffEditor.maxComputationTime"
配置此超时,并将超时设置为 0
将始终计算最小差异,无论这需要多长时间。此外,当计算时间超过一秒时,差异编辑器现在会渲染一个进度条。
在使用差异编辑器时,当比较的文件只有前导或尾随空白差异,并且差异编辑器配置为忽略修剪空白时,会产生混淆。这会导致源代码管理显示文件已修改,而差异编辑器不显示任何差异。VS Code 现在在这种情况下会显示一个显示空白差异按钮,以帮助您快速显示空白中的差异。这可以通过差异编辑器顶部的显示/忽略尾随空白差异命令进行切换。
集成终端
默认支持组合键
新的设置 terminal.integrated.allowChords
(默认 true
) 允许属于组合键的快捷键跳过终端的评估,转而由 VS Code 处理 (绕过 terminal.integrated.commandsToSkipShell
允许列表)。
请注意,终端中的快捷键仍然存在相同的限制;在进行此评估时,将考虑优先级最高的组合键。
例如,如果一个扩展贡献了快捷键 Ctrl+M A 并且您在 keybindings.json
文件中定义了以下内容:
[
{ "key": "ctrl+m a", "command": "workbench.action.terminal.toggleTerminal" },
{ "key": "ctrl+m a", "command": "workbench.action.focusLastEditorGroup" }
]
Ctrl+M A 将导致执行 workbench.action.focusLastEditorGroup
命令,因为它是最终的快捷键,并且用户快捷键的优先级高于扩展贡献的快捷键。
快速滚动支持
终端现在支持 Alt 键配合鼠标滚轮,根据 editor.fastScrollSensitivity
设置中定义的多重值,实现更快的滚动。
右键行为的新“粘贴”选项
rightClickBehavior
设置中添加了一个新选项,用于在终端中右键单击时始终粘贴。
"terminal.integrated.rightClickBehavior": "paste"
双击选择单词使用更多分隔符
在终端中双击选择单词时,字符 ,
、:
和 ;
现在被视为单词分隔符。
符号链接当前工作目录不再被解析
如果终端的初始工作目录设置为符号链接,则符号链接现在将保留在终端中。
命令导航现在从滚动位置开始工作
命令导航允许在终端中运行的命令之间进行导航或选择。这现在会将终端的滚动位置考虑在内,因此您可以滚动、找到上一个命令,并且终端将从终端的视图端口向上滚动(以前它会从底部滚动)。
默认情况下,命令导航仅在 macOS 上绑定为 Cmd+Up/Down
,命令选择绑定为 Cmd+Shift+Up/Down
。
如果您想在 Windows 或 Linux 上使用此功能,这里有一些示例快捷键:
{
// Terminal command tracking on Windows and Linux
{ "key": "ctrl+up", "command": "workbench.action.terminal.scrollToPreviousCommand", "when": "terminalFocus" },
{ "key": "ctrl+down", "command": "workbench.action.terminal.scrollToNextCommand", "when": "terminalFocus" },
{ "key": "ctrl+shift+up", "command": "workbench.action.terminal.selectToPreviousCommand", "when": "terminalFocus" },
{ "key": "ctrl+shift+down", "command": "workbench.action.terminal.selectToNextCommand", "when": "terminalFocus" },
}
任务
任务快速选择列表
如果只定义了一个任务,则任务:配置任务命令现在会始终跳过任务的快速选择列表。要将此行为扩展到任务:运行任务和其他任务快速选择,可以将 task.quickOpen.skip
设置为 true
。
新设置 task.quickOpen.history
控制在任务快速选择中显示多少个任务作为最近使用的任务。将 task.quickOpen.history
设置为 0
可禁用任务快速选择的最近任务部分。
具有 detail
属性的任务现在将在某些任务列表中显示其详细信息。您可以通过将 task.quickOpen.detail
设置为 false
来关闭任务快速选择中的详细信息。
为文件夹运行 NPM 脚本的选项
当启用 npm.enableRunFromFolder
设置时,当选择一个文件夹时,文件资源管理器的上下文菜单会显示命令在文件夹中运行 NPM 脚本...。该命令会显示一个包含该文件夹中 NPM 脚本的快速选择列表,您可以选择要作为任务执行的脚本。
慢速任务提供程序警告
当任务提供程序运行缓慢时,我们现在会显示一个警告,提供如何避免减速的建议。可以为单个任务类型禁用此警告,或者通过将 task.slowProviderWarning
设置为 false
来禁用所有任务的警告。
禁用任务自动检测
如果您关心的所有任务都定义在 tasks.json
文件中,那么您可能希望禁用所有扩展任务提供程序,以在运行任务时提高性能。对于单个扩展来说,提供一个设置来禁用其任务提供程序是一个好习惯,但您现在可以通过将 task.autoDetect
设置为 off
来禁用所有任务提供程序。
问题匹配器提示
过去,任何没有问题匹配器的任务都需要在 tasks.json
中设置一个空的问题匹配器以跳过问题匹配器提示。现在,您可以使用 task.problemMatchers.neverPrompt
为所有任务或特定任务类型禁用问题匹配器提示。问题匹配器提示中还有一个新选项可以禁用提示。
源代码管理
活动编辑器更改时高亮文件
源代码管理视图现在会自动在其树/列表视图中高亮显示活动编辑器文件。
Git: 改进的未跟踪文件管理
您现在可以使用 Git: Untracked Changes 设置单独管理未跟踪文件。如果您希望在源代码管理视图中将未跟踪文件显示在一个单独的组中,请选择 separate
选项。如果您希望从不看到它们,请选择 hidden
。默认的提交操作将根据此设置进行调整,并且仅在使用 mixed
设置值时在提交中包含未跟踪的更改。
Git: 合并提交时的自动提交消息
每当 VS Code 检测到您正在进行 Git 合并提交时,它会自动用 Git 的默认提交消息填充提交输入框。
Git: 在资源管理器中显示
现在有一个上下文菜单操作在资源管理器中显示,用于在文件资源管理器中显示文件,从源代码管理视图中的 Git 仓库。
Git: 克隆进度
克隆操作现在支持在右下角通知中显示进度。
调试
断点可在概览标尺中显示
为了方便在大文件中使用断点,您现在可以通过启用新设置 debug.showBreakpointsInOverviewRuler
在编辑器的概览标尺中显示断点。
复合调试配置的预启动任务
目前,每个调试配置都可以通过 preLaunchTask
属性指定一个在调试会话开始前运行的任务。这在调试单个程序时运行良好,但在涉及多个程序的复合配置中则变得笨拙。
在此里程碑中,我们为每个复合调试配置添加了对 preLaunchTask
的支持。通过此添加,单个任务可以在启动各个调试会话之前构建所有调试目标。如果发生构建错误,则不启动任何会话。
语言
CSS 媒体查询符号
在 CSS/SCSS/Less 文件中,媒体查询符号现在显示在大纲视图、面包屑路径和转到文件中的符号列表中。
typescript.tsserver.maxTsServerMemory
如果您正在处理一个包含数千个文件的大型 TypeScript 项目,新的 typescript.tsserver.maxTsServerMemory
设置允许您增加为 IntelliSense 提供支持的 TypeScript 服务器的最大内存使用量。
扩展创作
vscode.env.uiKind
新增了一个 API vscode.env.uiKind
,以便扩展可以知道它正在哪种 UI 中运行。为了支持在浏览器中运行 VS Code,可能的值是 UIKind.Web
和 UIKind.Desktop
。
调用层级提供者 API
我们已经最终确定了调用层级提供者 API:CallHierarchyProvider。它支持窥视调用层级功能,该功能可以查找函数、方法等的调用者和被调用者。
任务 CustomExecution
CustomExecution
任务类型 API 已经最终确定。如果 Shell 或进程任务不适合您的任务,您可以使用 CustomExecution
任务在您的扩展中执行回调。在任务提供程序扩展指南中了解更多信息。
调试 API: “startDebugging”请求的“consoleMode”选项
在上一个里程碑中,我们引入了一个新的提议 API,用于控制调试会话的层次结构是共享一个调试控制台还是使用单独的控制台。此 API 现已正式发布,因此您可以在 Marketplace 上发布的扩展中使用它。
图标颜色标记
我们很高兴终于为我们的图标引入了新的颜色标记。我们正在慢慢为某些区域添加这些标记,下面是第一批。
符号
这些图标出现在大纲视图、面包屑导航和建议小部件中。
symbolIcon.arrayForeground
symbolIcon.booleanForeground
symbolIcon.classForeground
symbolIcon.colorForeground
symbolIcon.constructorForeground
symbolIcon.constantForeground
symbolIcon.enumeratorForeground
symbolIcon.enumeratorMemberForeground
symbolIcon.eventForeground
symbolIcon.fieldForeground
symbolIcon.fileForeground
symbolIcon.folderForeground
symbolIcon.functionForeground
symbolIcon.interfaceForeground
symbolIcon.keyForeground
symbolIcon.keywordForeground
symbolIcon.methodForeground
symbolIcon.moduleForeground
symbolIcon.namespaceForeground
symbolIcon.nullForeground
symbolIcon.numberForeground
symbolIcon.objectForeground
symbolIcon.operatorForeground
symbolIcon.packageForeground
symbolIcon.propertyForeground
symbolIcon.referenceForeground
symbolIcon.snippetForeground
symbolIcon.stringForeground
symbolIcon.structForeground
symbolIcon.textForeground
symbolIcon.typeParameterForeground
symbolIcon.unitForeground
symbolIcon.variableForeground
问题和通知
我们将问题和通知图标的默认颜色设置为继承自编辑器前景色,因此如果您更改这些颜色,它将继承到其他区域。
您还可以显式设置问题面板和通知的图标颜色。
problemsErrorIcon.foreground
problemsWarningIcon.foreground
problemsInfoIcon.foreground
notificationsErrorIcon.foreground
notificationsInfoIcon.foreground
notificationsWarningIcon.foreground
灯泡
灯泡图标也是可主题化的。
editorLightBulb.foreground
editorLightBulbAutoFix.foreground
vscode.env.asExternalUri
vscode.env.asExternalUri
API 允许扩展将外部 URI(例如 http:
或 https:
URI)从扩展运行的地方解析为客户端机器上相同资源的 URI。这是 vscode.env.openExternal
API 的配套,不同之处在于它不是使用外部程序打开解析后的 URI,而是将结果返回给扩展。
import * as vscode from 'vscode';
import * as http from 'http';
const PORT = 3000;
export function activate(context: vscode.ExtensionContext) {
startLocalServer(PORT);
context.subscriptions.push(
vscode.commands.registerCommand('example.command', async () => {
const resolved = vscode.env.asExternalUri(
vscode.Uri.parse(`https://:${PORT}`)
);
vscode.window.showInformationMessage(
`Resolved to: ${resolved} on client and copied to clipboard`
);
vscode.env.clipboard.writeText(resolved.toString());
})
);
}
function startLocalServer(port: number) {
const server = http.createServer((req, res) => {
res.end('Hello world!');
});
server.on('clientError', (err, socket) => {
socket.end('HTTP/1.1 400 Bad Request\r\n\r\n');
});
server.listen(port);
vscode.window.showInformationMessage(`Started local server on port: ${port}`);
}
对于 http:
和 https:
URI,如果扩展在客户端机器上运行,asExternalUri
是一个空操作。但是,如果扩展在远程运行,vscode.env.asExternalUri
会自动建立从本地机器到远程 target
的端口转发隧道,并返回一个指向隧道的本地 URI。
如果使用 vscode.env.uriScheme
URI 调用 asExternalUri
,则它会返回一个 URI,如果该 URI 在浏览器中打开(例如通过 openExternal
),则会触发注册的 URI 处理程序。
移除实验性 Custom Data 设置和贡献点
[html/css].experimental.customData
设置和 contributes.[html/css].experimental.customData
贡献点在 1.38 中已弃用,现已移除。您可以改用稳定的 Custom Data 设置和贡献点。要了解有关 Custom Data 格式的更多信息,请参阅 microsoft/vscode-custom-data 仓库。
extensionKind 可以是数组
在 package.json
中,extensionKind
属性可以取值为 "ui"
或 "workspace"
,以指示扩展在远程情况下应该在哪里运行。在此版本中,extensionKind
现在可以是数组。例如,["ui", "workspace"]
将表示扩展既可以在 "ui"
侧运行,也可以在 "workspace"
侧运行,如果安装在 "ui"
侧,则优先在该侧运行。
建议的扩展 API
每个里程碑都会带来新的提议 API,扩展作者可以进行尝试。一如既往,我们渴望您的反馈。以下是试用提议 API 的方法:
- 您必须使用 Insiders 版本,因为提议的 API 经常更改。
- 您的扩展的
package.json
文件中必须包含以下行:"enableProposedApi": true
。 - 将最新版本的 vscode.proposed.d.ts 文件复制到您项目的源位置。
请注意,您不能发布使用提议 API 的扩展。下一个版本中可能会有重大更改,我们绝不希望破坏现有扩展。
支持 IntelliSense 替换模式
我们正在开发一个功能,允许用户决定建议应该替换现有文本还是仅插入。例如,在 con|st
中接受 console
可以导致 console
(替换)或 consolest
(插入)。两种模式都有其优点,最终取决于当前上下文和用户偏好。为了使此功能发挥最佳效果,我们需要扩展告诉我们该怎么做。因此,我们建议向 CompletionItem#range
属性添加一个新类型,将其更改如下:
interface CompletionItem {
range?: Range | { insert: Range; replace: Range };
}
该范围仍然是可选的,或者是一个简单的范围,但它也可以是两个范围:一个用于插入,一个用于替换。有关更多详细信息,请参阅问题 #10266。
任务详情
Task
上有一个新属性,任务提供程序可以使用它在 UI 中显示任务时为其添加 detail
。您也可以在 tasks.json
中使用 detail 属性。内置的 npm 扩展使用任务详细信息来显示将运行哪个 npm 脚本。
支持将 WebviewPanelOptions 传递给自定义编辑器
在此迭代中,我们继续致力于自定义编辑器 API 提案。现在,建议的 registerWebviewEditorProvider
函数接受一组 options
,允许您在自定义编辑器 webview 中启用retainContextWhenHidden
和其他功能。
export function registerWebviewEditorProvider(
viewType: string,
provider: WebviewEditorProvider,
options?: WebviewPanelOptions
): Disposable;
工程
在浏览器中测试 VS Code 运行
现在有一个最小设置,VS Code 可以在浏览器中运行,可用于开发和测试。浏览器实例仍然缺少一些功能,并且正在积极开发中。
在您的 vscode 仓库的本地分支中,从命令行执行 yarn web
并访问 https://:8080/
。有关克隆和构建 vscode 仓库的更多详细信息,请参阅设置说明。
注意: 请勿将此设置用于任何严肃的开发。其目的是允许社区将更改贡献回 VS Code,以改善浏览器中的整体体验。
使用 TypeScript 3.7 构建 VS Code
VS Code 现在使用 TypeScript 3.7 构建。这是一个令人兴奋的更新,因为它允许我们在代码库中使用可选链 (?.
)(以及带来许多其他改进)。
您现在可以通过安装JavaScript and TypeScript Nightly 扩展来开始在 VS Code 中使用 TypeScript 3.7 功能。
Electron 6.0 更新
在此里程碑中,我们完成了将 Electron 6 打包到 VS Code 中的探索,使其成为此 Electron 版本首次随稳定版发布。这是一个主要的 Electron 版本,它附带 Chromium 76.0.3809.146 和 Node.js 12.4.0(与我们目前使用 Chromium 69 和 Node.js 10.11.0 的版本相比,这是一个巨大的飞跃)。
我们已开始探索更新到 Electron 7,希望很快将其推送到 Insiders 版本。
值得注意的修复
- 78634: 调整大小时终端内容消失 (powershell/conpty)
- 25854: 无法拖动 Markdown 预览以启动新的编辑器组
- 81824: Webview 编辑器未出现在“从历史记录打开上一个编辑器”命令中
感谢
最后但同样重要的是,衷心感谢!以下帮助使 VS Code 变得更好的各位:
对我们问题跟踪的贡献
如果您想帮助我们管理传入问题,请参阅我们的社区问题跟踪页面。
对 vscode
的贡献
- Adam Burgess (@adamburgess): 为终端右键添加粘贴选项 PR #81448
- André Casal (@andrecasal): 澄清 git.confirmEmptyCommits 描述 PR #83257
- Anirudh Rayabharam (@anirudhrb)
- Anthony Dresser (@anthonydresser): 更新 sql 语言语法 PR #77601
- Brian Malehorn (@bmalehorn): 搜索: 移除未使用的配置设置 PR #82019
- Callum Mellor-Reed (@callummr): 恢复编辑器时聚焦正确的 SCM 仓库 PR #79566
- Dave Alongi (@dalongi): 在 product.json 中禁用问题报告器时隐藏“帮助 > 报告问题”菜单项 PR #83561
- Dhairya Nadapara (@dhairyanadapara): 添加了拆分窗格选项到设置 PR #82888
- DiamondYuan (@DiamondYuan): 支持从命令面板更新 VS Code PR #77515
- Drew Cross (@drew212): 为问题 76195 添加 git stash drop PR #76342
- Edward Thomson (@ethomson)
- Alexandr Fadeev (@fadeevab): Makefile 测试用例,用于更新的方案以支持以下内容: var:=$(val:.c=.o) PR #83121
- Andrew Wong (@featherbear): 更改对存在命令行参数的检查 PR #83311
- Freddy Robinson (@frobinsonj)
- @gawicks: 解决合并冲突时允许接受默认消息 PR #66522
- John Murray (@gjsjohnmurray): 移除格式化相关消息中的连字符 PR #83538
- @HonkingGoose: 将 Emmet 速查表的链接改为 HTTPS。 PR #82754
- Hung-Wei Hung (@hunghw): 修复 #79428 - 为代码片段添加 "$WORKSPACE_FOLDER" PR #79764
- Andrew Liu (@hypercubestart): 修复 30419 和 80649 - 允许设置最近任务的数量 PR #82757
- Andrii Dieiev (@IllusionMH): 如果与 regexp 一起使用匹配整个单词,则回退到 PCRE2 PR #82072
- @Jakobeha: 配置选项,用于分离或隐藏未跟踪文件(解决 #35480) PR #80083
- Jean Pierre (@jeanp413)
- Jakob Fahr (@jfhr): 修复 #82199,浅色主题 Markdown 预览中数字难以阅读 PR #82450
- Liming Jin (@jinliming2): 修复: 使用 IPv6 格式填写 HTTP 代理地址时出错 PR #77260
- Jon Bockhorst (@jmbockhorst)
- Jonas Platte (@jplatte): linux/bin/code.sh: 使用 command -v 而不是 which PR #82097
- JavaScript Joe (@jsjoeio): 修复: 从 ExtensionSuggestions 中移除 TypeScript PR #82125
- Jesús Alonso Abad (@Kencho): Perl5 支持折叠 POD 块 PR #71448
- Nikolay Kondratyev (@kondratyev-nv)
- Kryštof Řeháček (@Krystofee): 添加了 RANDOM, RANDOM_HEX 代码片段变量 PR #82529
- Kumar Harsh (@kumarharsh): fix(workbench): 添加禁用最近使用任务的首选项 PR #61994
- Lio李欧 (@lionello): StartFindWithSelectionAction 不应聚焦查找小部件 PR #63176
- @MartinBrathen: 修复: 图片预览在未聚焦时第一次点击不应缩放 PR #82074
- Per Persson (@md2perpe): 添加缺失的介词 PR #82613
- Niklas Mollenhauer (@nikeee): 从不可执行文件中移除可执行位 PR #82103
- @NotWearingPants
- Nate Rauh (@NRauh): Feature/pin close others PR #82545
- Oxirt (@oxirt): 允许
Git: fetch
命令显示密码提示 PR #72615 - @simaosilva: 支持 editorHoverWidget.foreground PR #65170
- Prabhanjan S Koushik (@skprabhanjan)
- saif (@sksaifuddin): 修复 #78014 添加了除了 & 和 ^ 之外转义 |、< 和 > 的能力 PR #82704
- @smilegodly: 为设置编辑器搜索栏添加清除按钮 PR #82904
- Sohail Rajdev (@sohailrajdev97): 在 grunt 任务运行器中添加对命令行参数的支持 PR #82819
- Konstantin Solomatov (@solomatov)
- Charles Milette (@sylveon): 当只有一个任务可供选择时跳过快速选择器 PR #47853
- U-ways (@U-ways): 修复图像预览以显示正确的画布大小 PR #82027
- Alexander (@usernamehw)
- Jeremy Shore (@w9jds)
- Ԝеѕ (@wesinator): 为 JSON 语言添加 .har 扩展名 PR #77300
- Xhulio Hasani (@xuhas): 添加 deleteTag PR #74345
- Yusuke Yamada (@yamachu): 修复建议中字符过多覆盖的问题 PR #82349
- Keyon You (@youngyou): 在禁用按钮上按
space
键不应触发点击事件。 PR #81975 - Helen3141 (@helen3141): 启用在包含文件夹中运行单个 npm 脚本 PR #79960
对 language-server-protocol
的贡献
- Adedayo Adetoye (aka Dayo) (@adedayo): 删除了 ServerCapabilities 中重复的 foldingRangeProvider 字段 PR 848
对 vscode-eslint
的贡献
- Christian Batchelor (@CSBatchelor): README.md 错字 PR #777
对 vscode-json-languageservice
的贡献
- Ben Hutton (@Relequestual): 更新了草稿 2019-09 的错误消息 PR #45
对 vscode-css-languageservice
的贡献
- Sergey Zolotarev (@sryze): 将 URI.parse() 调用包装在 try ... catch 中 PR #180
对 node-jsonc-parser
的贡献
- KoyamaSohei (@KoyamaSohei): 修复 README 中的错字 PR #25
- Jakub Rożek (@P0lip): 解析函数应包含以空字符串作为键的属性 PR #24
对 debug-adapter-protocol
的贡献
- Peter Thomas (@ptrthomas): 将 karate 添加为 dap 实现 PR #78
对 vscode-vsce
的贡献
- Ritwick Dey (@ritwickdey): [添加] README.md 中
标签的相对源未重写为绝对 URL PR #208
- Theo Tzaferis (@tzfrs): 改进打包未更改的 README.md 扩展时的错误消息 PR #392
对 inno-updater
的贡献
- Adam Coyne (@bhank): 增加控件宽度以避免截断文本 PR #13
对 localization
的贡献
Microsoft Localization Community Platform (MLCP) 拥有超过 800 名 云+AI 本地化社区成员,其中约有 100 名活跃贡献者参与 Visual Studio Code 的本地化工作。我们感谢您的贡献,无论是提供新翻译、对翻译进行投票,还是提出流程改进建议。
以下是贡献者的快照。有关项目(包括贡献者名单)的详细信息,请访问项目网站:https://aka.ms/vscodeloc。
- 波斯尼亚语 (拉丁语, 波斯尼亚和黑塞哥维那): Adnan Rizvan。
- 捷克语: Michal Franc, Jan Hruby。
- 丹麦语: Lasse Stilvang, Frederik bruun。
- 荷兰语: Laurens Kwanten, Lemuel Gomez, Niels ter Haar。
- 英语 (英国): Graham Smith, Martin Littlecott, Alexander McLean。
- 法语: Antoine Griffard, Rodolphe NOEL, Bruno Lewin, Maxime Bouveron, DJ Dakta。
- 德语: Simon Haag, Adrian Bähr, Julian Tomsik。
- 希伯来语:Ariel Bachar。
- 印地语: Kishan K, Rohit Raj。
- 简体中文: 顾亦知, paul cheung, 项斌, 谭顺, 一斤瓜子, Charles Lee, 曾鹏, Charles Dong, 姜楠, yungkei fan, ztluo, David Huang, 普鲁文, 刘真祺, zhichen zhao, Phil Wang。
- 繁体中文: Jimmy Hu, 船長, E L, Winnie Lin。
- 印尼语: Jakka Prihatna, Eriawan Kusumawardhono, Nicko Satria Utama, Christian Elbrianno, Septian Adi。
- 意大利语:Alessandro Alpi, Luigi Bruno。
- 日语: Yuta Ojima, Michihito Kumamoto, Aya Tokura, TENMYO Masakazu, Takayuki Fuwa, Koichi Makino。
- 韩语: Hongju, Sungjin Jeong。
- 波兰语: Andrzej Poblocki, Kacper Łakomski。
- 葡萄牙语 (巴西): Marcelo Fernandes, Marcondes Alexandre, Roberto Fonseca, Alessandro Fragnani, Arthur Renato, Jota Freitas Jr, Caio Felippe Curitiba Marcellos。
- 葡萄牙语 (葡萄牙): Pedro Filipe。
- 罗马尼亚语: Andrei Tudor, Bogdan Mateescu, Stefan Gabos。
- 俄语: Kazakov Lex, Vadim Svitkin, TJS。
- 西班牙语: Aleks M, José María Aguilar, Jerónimo Milea, Ricardo Estrada Rdez, Abdón Rodríguez P。
- 瑞典语: Sven Axelsson, Patric Högman。
- 泰米尔语: Pradeep Krishnan。
- 土耳其语: Ahmetcan Aksu, Cansu Gürler, Mehmet Yönügül, Umut Can Alparslan。
- 乌克兰语: Arthur Murauskas, Oleh Hatsenko, Oleksandr Krasnokutskyi, Did Kokos。
- 越南语: huy dk, Việt Anh Nguyễn, Ha Xuan Anh Nguyen, Quoc Han Dinh。