2019 年 6 月(版本 1.36)
更新 1.36.1: 此更新解决了这些 问题。
下载:Windows: x64 | Mac: Intel | Linux: deb rpm tarball snap
欢迎使用 Visual Studio Code 2019 年 6 月版。此版本包含许多更新,我们希望您会喜欢,其中一些主要亮点包括
- 隐藏/显示状态栏项目 - 仅显示您偏好的状态栏项目。
- 资源管理器中的缩进参考线 - 清晰地突出显示您的项目文件夹结构。
- 更好的默认 Shell 选择器 - 轻松选择要在集成终端中使用的默认 Shell。
- 顺序任务执行 - 控制任务和子任务执行的顺序。
- 跳转到光标调试 - 当您跳转到新位置时,跳过代码执行。
- 禁用调试控制台自动换行 - 让您的调试输出保持在一行。
- JavaScript/TypeScript 每夜构建扩展 - 新扩展集成了 JS/TS 每夜构建。
- 新的 Java 安装程序 - 安装 VS Code、Java 扩展包和所需的 Java 依赖项。
- 远程开发(预览)改进 - 保存到本地文件系统,将文件拖放到远程,以及更多。
如果您想在线阅读这些发行说明,请访问 更新,网址为 code.visualstudio.com。
Insiders: 想尽快看到新功能吗?您可以下载每夜 Insiders 构建版本,并在最新更新可用时立即试用。有关最新的 Visual Studio Code 新闻、更新和内容,请在 Twitter 上关注我们 @code!
工作台
隐藏单个状态栏项目
现在状态栏有一个上下文菜单,可以隐藏和显示单个条目。
配置在全球范围内跨所有工作区持久保存。
注意: 设置 workbench.statusBar.feedback.visible
已被删除,取而代之的是这种新方法。您可以使用状态栏上下文菜单隐藏反馈笑脸。
树缩进参考线
树形小部件现在支持缩进参考线。这意味着缩进参考线现在在文件资源管理器、搜索视图、调试视图等中可用。
与之前一样,您可以使用 workbench.tree.indent
设置控制树的缩进级别,现在您还可以使用 workbench.tree.renderIndentGuides
设置控制缩进参考线的行为。
workbench.tree.renderIndentGuides
的可能值是
onHover
- 当悬停在树上时显示缩进参考线。默认行为。always
- 始终在树中显示缩进参考线。none
- 不显示缩进参考线。
拖放文件夹以复制
现在可以将 VS Code 外部的文件夹拖放到文件资源管理器中以复制它。以前,当将文件夹拖放到 VS Code 资源管理器中时,我们总是会打开一个包含该文件夹的工作区。现在可以仅复制文件夹内容。
复制粘贴文件名增量器更改
当复制粘贴 VS Code 资源管理器内部的重复文件和文件夹时,VS Code 会递增粘贴文件的名称。我们进行增量命名的方式有时会导致意外的结果。
为了简化命名,我们现在按以下方式递增文件名
"hello.txt" -> "hello copy.txt" -> "hello copy 2.txt" -> "hello copy 3.txt"
禁用 Alt 键聚焦自定义菜单栏
许多用户要求禁用按下 Alt 键时聚焦自定义菜单栏的行为。要阻止此行为,请将新设置 window.customMenuBarAltFocus
设置为 false
。
小地图搜索装饰
在文件中搜索时,结果匹配项现在将在文件和小地图中同时突出显示
更新的警告颜色
我们更新了 list.warningForeground
和 editorWarning.foreground
,以更好地匹配编辑器警告颜色的其余部分。您将在文件资源管理器、Peek 错误视图和编辑器波浪线中看到此更新的颜色
我们还更新了 editorOverviewRuler.findMatchForeground
,以便在标尺中更好地突出显示更新的警告颜色
在线服务设置
VS Code 使用在线服务进行各种用途,例如下载产品更新、查找、安装和更新扩展,或在设置编辑器中提供自然语言搜索。您可以选择通过用户设置来启用/禁用使用这些服务的功能,您可以使用标签 @tag:usesOnlineServices
过滤这些设置。现在有一个命令 文件 > 首选项 > 在线服务设置,它在设置编辑器中应用该标签。
有关更多信息,请参阅我们的 遥测文档。
集成终端
更好的默认 Shell 选择器
Windows 已经有一段时间有 选择默认 Shell 命令,并且在上个版本中已将其添加到集成终端下拉菜单中。此命令现在也可在 macOS 和 Linux 上使用,并通过读取 /etc/shells
文件来公开系统上注册的 Shell。
使用干净的环境启动终端
VS Code 中的集成终端的行为一直与普通终端略有不同,尤其是在 Linux 和 macOS 上。原因是环境始终从 VS Code 的窗口(实例)继承,并且 VS Code/Electron 相关的环境变量被删除,而普通终端通常会从 Dock/开始菜单启动并使用系统环境。这可能会在某些情况下导致问题,例如,Python 虚拟环境因其使用 $PATH
变量的方式而被破坏。
有一个新的预览选项 terminal.integrated.inheritEnv
,当设置为 false
时,会导致终端不使用 VS Code 的环境。
相反,根据平台,它将执行以下操作
- Linux: 获取并使用 VS Code “主进程”的父进程的环境。
- macOS: 从当前环境中提取少量重要的环境变量,并且仅包含它们。最终,我们希望 macOS 的行为与 Linux 相同,但目前在获取环境方面存在问题。
- Windows: 当前此设置不影响 Windows。
将 inheritEnv
设置为 false
的主要可见结果是 $SHLVL
(shell 级别)现在应为 1,并且 $PATH
不应包含重复路径,前提是您的启动脚本没有故意包含它们。
terminal.integrated.inheritEnv
的默认值为 true
,这是之前的行为,但我们可能会在将来将该值切换为 false
。
更改为 Ctrl+\\
以前,Ctrl+\\
映射到在 Linux 和 Windows 上拆分终端的命令,但这已更改为将 SIGQUIT
传递到 shell,因为大多数人会期望终端这样做。如果您想要旧的行为,可以将此键盘快捷键添加到您的 keybindings.json
文件中。
{
"key": "ctrl+\\",
"command": "workbench.action.terminal.split",
"when": "terminalFocus"
}
任务
顺序依赖项执行
dependsOn
任务属性仍然默认为并行运行所有依赖项,但现在您可以指定 "dependsOrder": "sequence"
,并让您的任务依赖项按照它们在 dependsOn
中列出的顺序执行。dependsOn
中使用的任何后台/监视任务都必须有一个问题匹配器,用于跟踪它们何时“完成”。
下面的示例任务运行任务 Two、任务 Three,然后运行任务 One。
{
"label": "One",
"type": "shell",
"command": "echo Hello ",
"dependsOrder": "sequence",
"dependsOn": ["Two", "Three"]
}
问题匹配器路径检测
当扫描任务输出以查找问题时,有关路径的信息使用 fileLocation
问题匹配器属性提供。除了现有的 relative
和 absolute
选项之外,您现在可以指定 autoDetect
。当使用 autoDetect
时,任务系统将自动尝试确定问题中的路径是相对路径还是绝对路径。
语言
TypeScript 3.5.2
此版本包含 TypeScript 3.5.2,这是一个小型更新,修复了一些重要的错误。
更快地使用 JavaScript 和 TypeScript 的仅语法功能
VS Code 的 JavaScript 和 TypeScript 语言功能由 TypeScript 服务器 提供支持。此服务器为复杂的功能(如 IntelliSense 和错误报告)以及更简单的功能(如代码折叠和文档大纲)提供支持。
诸如 IntelliSense 之类的功能要求 TypeScript 服务器评估整个 JavaScript 或 TypeScript 项目,然后才能返回任何结果,这对于较大的项目可能需要一些时间。在处理过程中,服务器无法处理任何其他请求,包括对仅需要对当前文件进行基本语义理解的简单功能(如代码折叠)的请求。如果您曾经注意到代码折叠或文档大纲在可用之前存在延迟,您可能已经看到过此问题。
为了让您更快地开始使用代码,我们添加了一个新的实验性选项,VS Code 由此使用两个 TypeScript 服务器:一个仅处理基于简单语法的操作,另一个完整的服务器处理项目处理、IntelliSense、错误报告和其他高级语言功能。要启用此行为,请设置 "typescript.experimental.useSeparateSyntaxServer": true
。此设置要求在您的工作区中使用 TypeScript 3.4 或更高版本。
调试
跳转到光标
我们添加了一个新的调试命令 跳转到光标,它允许您将程序执行移动到新位置,而无需执行其间的任何代码。如果调试器支持 跳转到光标,则新命令将出现在调试时编辑器上下文菜单和命令面板中。目前,此命令仅在 C# 扩展中可用,但其他调试扩展应该很快也会跟进。
禁用控制台自动换行
新的设置 debug.console.wordWrap
控制是否在调试控制台中启用自动换行。默认情况下,所有行都换行。如果关闭此设置,则行将不再在调试控制台中断开,并且会出现水平滚动条。
Node.js 调试配置属性 useWSL 已弃用
借助 WSL 扩展,通用的 Windows Subsystem for Linux (WSL) 支持已在 VS Code 中实现。现在,所有扩展都可以在 WSL 中无缝使用。
因此,我们计划删除两年前添加到 VS Code 的 Node.js 调试器的现已过时的 WSL 支持。作为实现此目标的第一步,我们正在弃用 useWSL
调试配置属性。从此里程碑开始,当在编辑器中打开 launch.json
文件时,该属性将显示波浪线。此外,当启动包含 useWSL
的调试会话时,会出现通知。
以下是将使用 useWSL
标志的现有项目迁移到使用 WSL 扩展进行调试的步骤
- 确保您已安装 WSL 扩展。
- 在 VS Code 中打开您的项目文件夹。
- 使用 WSL: 在 WSL 中重新打开文件夹 命令在 WSL 中重新打开项目。
- 按 F5。
- 从调试配置中删除
useWSL
标志。
有关更多信息,请参阅我们的 在 WSL 中开发 文档。
扩展贡献
JavaScript 和 TypeScript 每夜构建扩展
新的 JavaScript 和 TypeScript 每夜构建扩展 将 TypeScript 的每夜构建版本 (typescript@next) 用于 VS Code 的内置 TypeScript 版本,该版本为 JavaScript 和 TypeScript IntelliSense 提供支持。这使得测试最新的 TypeScript 功能并提供有关它们的反馈变得容易!
TSLint 1.2
我们发布了新版本的 TSLint 扩展,其中修复了一些重要的错误。此版本还在 VS Code 状态栏中添加了警告指示器,如果工作区中存在 tslint.json
文件,但 TSLint 本身未正确安装,则会显示此指示器。
Java 开发人员的安装程序
有一个新的 Visual Studio Code Java 安装程序,以帮助首次开发人员设置他们的 Java 环境。当您 运行 Java 包安装程序 时,它会自动检测是否已安装 JDK(Java 开发工具包)、Visual Studio Code 和所需的扩展。如果未安装,安装程序可以为您下载和配置缺少的依赖项。您还可以使用安装程序将 Java 相关组件添加到您现有的 Visual Studio Code 安装中。
安装 Java 扩展后,Visual Studio Code 提供全面的 Java 开发功能,例如智能代码完成、重构、调试和测试,以及项目管理和应用程序服务器集成。
远程开发(预览)
在 远程开发 扩展上继续进行了工作,这些扩展允许您使用容器、远程计算机或 Windows Subsystem for Linux (WSL) 作为功能齐全的开发环境。您可以在 远程开发发行说明 中了解新的扩展功能和错误修复。
要了解有关在 Windows 上开发 Linux 应用程序的更多信息,请参阅 Windows 开发人员平台团队的这篇 使用 WSL 和 Visual Studio Code Remote 将您的 Windows Linux 开发体验提升到一个新的水平 博客文章。
用于 Chrome 的调试器作为远程 UI 扩展
如果您在远程窗口中处理 Web 项目,则可以使用 用于 Chrome 扩展的调试器 在本地 Chrome 窗口中对其进行调试。只需安装扩展,在远程启动您的开发服务器,转发服务器的端口,然后启动您的启动配置。有关详细信息,请参阅 扩展 README。
扩展创作
将 vscode 包拆分为 @types/vscode 和 vscode-test
在去年的 event-stream 事件 期间,我们发现 vscode
包受到了影响,因为它的 223 个传递依赖项包括 event-stream
。这些依赖项还时不时地为许多 VS Code 扩展引起 GitHub 安全警报。为了解决依赖项复杂性问题,我们开始精简 vscode
包。
vscode
包有两个用途
- 拉取
vscode.d.ts
以进行扩展开发。 - 通过下载和启动 VS Code 的本地副本运行集成测试。
现在我们将 vscode
拆分为 @types/vscode
和 vscode-test
,这两个包具有更集中的功能。
@types/vscode
包含每个版本的vscode.d.ts
。例如,npm i @types/vscode@1.34.0
安装 VS Code 1.34 扩展 API。与通过postinstall
脚本拉取vscode.d.ts
的vscode
不同,此包可以由包管理器完全缓存。vscode-test
提供了一组 API,用于使用 VS Code 运行集成测试。旧的vscode
包将继续工作,但新功能将仅转到vscode-test
。我们建议您切换到vscode-test
,它具有更精简的依赖项图和更灵活、显式记录的 API。您可以在 测试扩展 文章中了解有关使用vscode-test
的更多信息。
此外
vscode-dts
允许您通过 CLI 快速下载任何版本的 VS Code API。vsce
现在检查@types/vscode
版本是否与engines.vscode
匹配,以防止您使用与旧版本 VS Code 不兼容的新 API。helloworld-test-sample
、测试扩展 页面和 持续集成 页面已更新为使用vscode-test
。- 测试扩展 页面包含一个 迁移指南,以帮助您从
vscode
过渡到@types/vscode
和vscode-test
。 - 所有 VS Code 示例扩展 现在都使用
@types/vscode
。 - VS Code 扩展生成器 使用
@types/vscode
和vscode-test
包构建扩展框架。
Node.js 更新
VS Code 运行所基于的 Electron 版本已更新,并随之带来了 Node.js 从 10.2.0
到 10.11.0
的更新。所有扩展现在都将在更新版本的 Node.js 上运行。
远程 API
有一个新的属性 vscode.env.remoteName
,每当远程扩展主机运行时都会定义该属性。其值由引导远程扩展主机的扩展定义,该值在本地和远程扩展主机上都可用。
需要知道它们是在远程扩展主机还是本地扩展主机上运行的扩展可以使用 Extension#extensionKind
,它是 ExtensionKind.UI
或 ExtensionKind.Workspace
。该值表示扩展的 package.json
文件中定义的内容或用户覆盖的内容。当不存在远程扩展主机时,该值始终为 ExtensionKind.UI
。
DocumentLink.tooltip
新的 DocumentLink.tooltip
属性允许 DocumentLinkProvider
自定义用户将鼠标悬停在文档链接上时显示的文本
VS Code 包括有关如何激活链接(上例中为 cmd + click
)以及 tooltip
文本的说明。
端口转发和端口映射现在除了“localhost”之外,还支持“127.0.0.1”
vscode.env.openExternal
API 使用默认的外部应用程序打开 URI。当远程扩展在本地 URI(例如 https://127.0.0.1:8080
)上调用 openExternal
时,VS Code 会自动打开一个隧道,将本地计算机上的端口连接到远程计算机上打开的端口。此自动隧道先前仅对“localhost” URI 启用,但现在也对“127.0.0.1”启用。
此外,webview 端口映射 API 现在除了“localhost” URI 之外,还处理“127.0.0.1” URI。
更多属性标记为 readonly 或 ReadonlyArray
VS Code API 中的更多属性现在在 vscode.d.ts
中标记为 readonly,以更好地表达它们对扩展的意图。
值得注意的更改包括
- 事件接口上的所有字段现在都是只读的。事件对象永远不应被改变,因为同一对象可以分派给多个侦听器。
DiagnosticCollection
上的方法现在采用只读数组。进行此更改是因为您只能通过其方法更新DiagnosticCollection
,而不是通过改变先前传递给它的数组。Extensions.all
现在是一个只读数组,因为它无法改变。TextEditor.insertSnippet
现在采用只读数组,因为它不会改变其参数。
这些新的 readonly
修饰符可能会为显式键入 VS Code API 以前使用的非只读类型的扩展代码引起编译错误
vscode.window.onDidChangeTextEditorSelection(e => {
// Error: `e.selections` is now a readonly array but
// our `updateForSelections` function takes a mutable array
updateForSelections(e.selections);
});
function updateForSelections(selections: vscode.Selection[]) {
...
}
要修复此问题,请将 readonly
修饰符也传播到您的扩展源代码中
vscode.window.onDidChangeTextEditorSelection(e => {
updateForSelections(e.selections);
});
function updateForSelections(selections: readonly vscode.Selection[]) {
...
}
TerminalOptions.hideFromUser
runInBackground
终端 hideFromUser
选项现在位于稳定 API 中。使用此选项可以完全隐藏终端,直到调用 Terminal.show()
const term = window.createTerminal({ hideFromUser: true });
term.sendText('do something');
与 sendText
和 onDidWriteData
API 结合使用,扩展可以与交互式终端交互,例如,建立连接,并且仅在出现问题时才调用 Terminal.show()
。
评论反应
Comments API 现在支持在评论上显示和管理用户反应。当 Comment.reactions
存在时,反应将呈现在评论正文下方。
如果扩展程序使用 CommentController.reactionHandler
注册了反应处理程序,则用户将能够响应现有反应或使用反应选择器创建新反应。
建议的扩展 API
每个里程碑都带有新的建议 API,扩展作者可以试用它们。与往常一样,我们渴望您的反馈。这是您试用建议 API 必须执行的操作
- 您必须使用 Insiders 版本,因为建议 API 经常更改。
- 您必须在扩展程序的
package.json
文件中包含以下行:"enableProposedApi": true
。 - 将最新版本的 vscode.proposed.d.ts 文件复制到您的项目中。
请注意,您不能发布使用建议 API 的扩展程序。我们可能会在下一个版本中进行重大更改,并且我们永远不想破坏现有扩展程序。
vscode.workspace.fs
有一个建议的 API,允许扩展程序与 文件系统提供程序 交互。该 API 允许扩展程序从任意文件系统中创建、读取、写入和删除文件和文件夹。例如,语言扩展程序现在可以加载从 ftp 服务器或其他远程源提供的源文件。
该 API 通过工作区对象上的新属性访问:vscode.workspace.fs
。试用一下,并随时在 issue #48034 上留下反馈。
代码内嵌的更新 API
我们已经重构并简化了代码内嵌建议。它现在更像文本装饰 API,而不是使用提供程序模式。
export function createWebviewTextEditorInset(
editor: TextEditor,
line: number,
height: number,
options?: WebviewOptions
): WebviewEditorInset;
给定一个编辑器、一行和一个高度,您可以创建内嵌。然后,内嵌使用 Webview,它是从 WebviewPanel
中已知的。与装饰一样,一旦包含它们的编辑器关闭,内嵌就会被处理掉。
Webview.resourceRoot
webview 上建议的 resourceRoot
常量公开了在 webview 中加载本地资源的根目录。
const panel = vscode.window.createWebviewPanel(
CatCodingPanel.viewType,
'Cat Coding',
vscode.ViewColumn.One,
{
// Restrict the webview to only loading local content from our extension's `media` directory.
localResourceRoots: [vscode.Uri.file(path.join(extensionPath, 'media'))]
}
);
const resourceRoot = await panel.resourceRoot;
panel.html = `<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src ${resourceRoot} https:;">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Cat Coding</title>
</head>
<body>
<img src="${resourceRoot}/${path.join(extensionPath, 'media')}/cat.gif" width="300" />
</body>
</html>`;
当 VS Code 在桌面上运行时,resourceRoot
将为 vscode-resource:
。但是,当 VS Code 在其他环境(如浏览器)中运行时,该值可能会有所不同。
获取默认 Shell 的 API
由于 terminal.integrated.shell.<platform>
设置现在默认为 null
,因此扩展程序无法再使用该设置来检测默认 Shell。现在有一个建议的 API vscode.env.shell
,它将返回终端的默认 Shell
const shell = vscode.env.shell;
if (shell.search(/(powershell|pwsh)/i) !== -1) {
// Do something special that PowerShell needs
}
语言服务器协议
已经实现了用于 TypeScript 的新版本 语言服务器索引格式 工具。新版本改进了格式,以便更轻松地将大型转储导入数据库,而无需使其特定于数据库。有关运行这些工具的详细信息,请参阅 lsif-node 存储库中的说明。
工程
Electron 4.0 更新和 Electron 6.0 探索
在此里程碑中,我们完成了将 Electron 4 捆绑到 VS Code 中的探索,使其成为此 Electron 版本首次随稳定版一起发布。这是一个主要的 Electron 版本,附带了 Chrome 69 和 Node.js 10.11.0(从我们当前带有 Chrome 66 和 Node.js 10.2.0 的版本向前迈进了一大步)。
不幸的是,由于 issue #75054,我们不得不为一个版本禁用 macOS 简单全屏支持 ("window.nativeFullScreen": false
)。我们希望在下个月初将修复程序包含在我们的 Insiders 构建版本中。
我们已经开始探索更新到 Electron 6,我们希望很快将其推送到 Insiders 版本。
更好的代码加载
Electron 4 使我们能够访问新的脚本缓存 API。借助新的缓存 API,可以在不影响首次启动的情况下创建 缓存数据,并且可以重复创建以覆盖延迟解析的函数。这以及我们加载器中的改进导致代码加载速度提高了约 15%。
Linux 32 位支持结束
VS Code 正在使用 Electron 框架 在多个平台上运行。在此版本中,我们迁移到 Electron 4.x 版本,这意味着 VS Code 将不再在 Linux 32 位上运行。请更新到 64 位版本的 VS Code。您的所有设置和扩展程序都将像以前一样工作,而无需迁移任何内容。您可以阅读 Electron 的相关 博客文章 以获取更多信息。
基于 iframe 的 webview 探索
在此迭代中,我们探索了使用普通 iframe 而不是 Electron 的 <webview>
标签来实现 VS Code 的 webview。这项工作主要是为了支持在浏览器中运行 VS Code 而完成的,但 <webview>
也相当复杂,并且过去曾给我们带来问题。我们希望我们最终能够用普通 iframe 替换我们对 <webview>
的使用。
我们在基于 iframe 的 webview 上取得了重大进展,现在可以成功地在浏览器中运行来自扩展程序的许多 webview,但仍有许多工作要做。我们将在 7 月继续进行此探索。
值得注意的修复
- 41356: 移动到下一个/上一个错误的热键不应将 NVDA 的焦点移到编辑器外部
- 45515: Uri#parse 可能会破坏路径组件
- 54084: 步进时不要更改调试触摸栏按钮位置
- 70248: cls 命令无法清除终端(Windows 10 1903,ConPTY)
- 74710: 图像预览应仅为图像大小绘制“透明”方格背景
- 75359: 通过调试控制台更改值后,变量窗格不会更新
- 41085: Git:如果 .git 在打开的文件夹外部,则文件事件不起作用
感谢
最后但同样重要的是,非常感谢!以下人员,他们帮助使 VS Code 变得更好
对 vscode
的贡献
- Abby (@abbychau):添加一个选项,允许在 git 初始化或克隆后在新窗口中打开 PR #69763
- Andrius (@andrius-pra):同步 Typescript 插件提供的语言 PR #75371
- Aurélien Pupier (@apupier):向 package.jsons 添加 License 字段 #68423 PR #68771
- Jakub Čábera (@Ash258):shellscript:添加折叠标记 PR #75828
- Lee Houghton (@asztal):处理具有 /tmp/vscode-typescript 的多个用户 PR #75547
- Babak K. Shandiz (@babakks):向 SCM 面板添加了
cachedScrollTop
PR #74723 - Patrick Burke (@burknator):使状态缩放按钮成为 IStatusbarEntry #74454 PR #75618
- Chase Adams (@chaseadamsio):支持快速输入/快速打开的主题化 PR #74041
- Christian Oliff (@coliff):建议用户安装 EditorConfig 扩展 PR #75391
- Hung-Wei Hung (@hwhung0111):修复注释中的一些错别字 PR #75565
- Jean Pierre (@jeanp413)
- Jonas Kemper (@jk21):Package json 信息 PR #72763
- @malingyan2017:修复停靠栏中的“最近”列表不显示最近的文件/文件夹的问题 #74788 PR #75108
- Denis Stepanov (@meduzik):启动命令中的空参数现在已正确转义 PR #25098
- Micah Smith (@Olovan):修复问题 #35245 PR #75357
- @orange4glace
- Jesse Mazzella (@ozyx):从 baseFolderName 的 repo url 中删除尾部的 '/' PR #75822
- Alasdair McLeay (@penx):用于 CSS 导入的 Node 模块解析 PR #70693
- Raul Piraces Alastuey (@piraces):当向导在静默模式下运行时,禁止显示 MsgBox PR #76215
- Remco Haszing (@remcohaszing)
- Evgeny Zakharov (@risenforces):添加 window.disableMenuBarAltBehavior 选项 PR #73258
- Samuel Bronson (@SamB):修复错别字:timemout -> timeout PR #75162
- TBK (@TBK):添加对 APKBUILD 的支持 PR #75706
- Tomáš Chaloupka (@tchaloupka):修复捷克语的 LANG 环境变量 PR #75519
- Tony Xia (@tony-xia)
- Waldir Pimenta (@waldyrious):修复示例缩写 (e.g.) 的拼写 PR #74785
对我们的问题跟踪的贡献
- John Murray (@gjsjohnmurray)
- Alexander (@usernamehw)
- Eric Amodio (@eamodio)
- Jean Pierre (@jeanp413)
- Danny Tuppeny (@DanTup)
如果您想帮助我们管理收到的问题,请参阅我们的 社区问题跟踪 页面。
对 vscode-css-languageservice
的贡献
- Dmitry Parzhitsky (@parzh):修复伪元素特异性 PR #154
对 vscode-html-languageservice
的贡献
- Liam Newman (@bitwiseman):将 js-beautify 更新到 1.10.0 PR #61
- Javey (@Javey):使其可以被 uglify-js 压缩 PR #64
对 language-server-protocol
的贡献
- Danny Tuppeny (@DanTup):修复错别字 "must not sent" -> "must not send" PR #747
对 debug-adapter-protocol
的贡献
- Joel Day (@joelday):添加 Papyrus 实现 PR #59
对 vscode-azurecli
的贡献
- Matthew Burleigh (@mburleigh):在新编辑器中打开结果 PR #55
- Matthew Burleigh (@mburleigh):添加状态栏项目以指示进度 PR #56
对 vscode-vsce
的贡献
- @atsutton:将日志级别更改为 info。 PR #369
- James George (@jamesgeorge007)
- Jonathan Nagy (@nagytech):允许指定提交消息 PR #365
对 vscode-recipes
的贡献
- Mladen Mihajlović (@mika76):Vue - 使用从问题中收集的信息更新了 readme PR #213
- Ephraim Khantsis (@doom777):更新 ng-test 启动配置 PR #212
对 localization
的贡献
有超过 800 名 Cloud + AI 本地化 社区成员使用 Microsoft 本地化社区平台 (MLCP),其中约有 100 名活跃贡献者为 Visual Studio Code 做出贡献。我们感谢您的贡献,无论是提供新的翻译、为翻译投票还是建议流程改进。
这是 贡献者的快照。有关包括贡献者姓名列表在内的项目详细信息,请访问项目站点 https://aka.ms/vscodeloc。
- 波斯尼亚语: Ismar Bašanović, Ernad Husremovic。
- 保加利亚语: Иван Иванов, Gheorghi Penkov。
- 捷克语: Tadeáš Cvrček, Michal Franc, Jan Kos, Radim Hampl。
- 丹麦语: René Pape, Lars Vange Jørgensen, Martin Liversage, Lasse Stilvang, Anders Lund, Allan Kimmer Jensen, Anton Ariens。
- 荷兰语: Leroy Witteveen, Luc Sieben, Maxim Janssens, Damien van Gageldonk, Tom Meulemans。
- 英语(英国): Martin Littlecott, Alexander Ogilvie, Fabio Zuin, Mohit Nain, Sulkhan Ninidze, alshyab wa3ed, Tejas kale。
- 芬兰语: Lasse Leppänen, Petri Niinimäki, Sebastian de Mel。
- 法语: Antoine Griffard, Thierry DEMAN-BARCELÒ。
- 德语: Julian Pritzi, Patrick Burke, Ettore Atalan, Meghana Garise。
- 希腊语: Θοδωρής Τσιρπάνης, Charalampos Fanoulis, Vassilis Vouvonikos。
- 希伯来语: חיים לבוב, Eyal Ellenbogen。
- 印地语: Sanyam Jain, Kishan K.
- 匈牙利语: Boldi Kemény。
- 简体中文: 斌 项, paul cheung, 张锐, Yizhi Gu, Yiting Zhu, Justin Liu, Shi Liu, Pluwen, Joel Yang, Jieting Xu, Chen Yang, 涛 罗, 立飞 李, 雨齐 刘, cuibty wong, 建 周, XIANG ZUO。
- 繁体中文: LikKee 沥祺 Richie, Winnie Lin, Jeremy。
- 印尼语: Jakka Prihatna, Arif Fahmi, Septian Adi, Heston Sinuraya, Hendra Widjaja, Don Nisnoni, Eriawan Kusumawardhono, Bervianto Leo Pratama, Laurensius Dede Suhardiman, Rifani, rsyad, Christian Elbrianno。
- 意大利语: andrea falco, Aldo Donetti。
- 日语: Michihito Kumamoto, Yoshihisa Ozaki, Aya Tokura, TENMYO Masakazu, 太郎 西岡。
- 韩语: Hongju, 우현 조, Hoyeon Han, Hong Kwon。
- 拉脱维亚语: Kaspars Bergs, Andris Vilde。
- 立陶宛语: Andrius Svylas, Tautvydas Derzinskas, Karolis Kundrotas, Martynas J..
- 挪威语: Dag H. Baardsen, Ole Kristian Losvik。
- 波兰语: Rafał Całka, Marcin Weksznejder, Jakub Żmidziński, Rafał Wolak, Szymon Seliga, Grzegorz Miros。
- 葡萄牙语(巴西): Alessandro Trovato, Thiago Dupin Ugeda, Weslei A. de T. Marinho, Rafael Lima Teixeira, Gerardo Magela Machado da Silva, Marcos Albuquerque, Loiane Groner, Alessandro Fragnani, Judson Santiago, Andrei Bosco, Fábio Corrêa, Roberto Fonseca, Fabio Lux, Emmanuel Gomes Brandão, Guilherme Pais, Rodrigo Vieira, André Gama。
- 葡萄牙语(葡萄牙): Nuno Carapito, Pedro Daniel, José Rodrigues, Diogo Barros。
- 罗马尼亚语: Stefan Gabos。
- 俄语: Дмитрий Кирьянов, Анатолий Калужин。
- 西班牙语: David Fernández Aldana, Ricardo Rubio, Thierry DEMAN, José María Aguilar。
- 瑞典语: Johan Spånberg, Notetur Nomen。
- 泰米尔语: Merbin J Anselm, Jeyanthinath Muthuram, Boopesh Kumar, Nithun Harikrishnan, Vignesh Rajendran。
- 土耳其语: Meryem Aytek, Fıratcan Sucu, Ahmetcan Aksu, Mehmet Yönügül, Ömer Sert, Anıl MISIRLIOĞLU, Misir Jafarov, Bruh Moment。
- 乌克兰语: Arthur Murauskas, Alexander Varchenko, Вадим Шашков, Евгений Коростылёв。
- 越南语: Van-Tien Hoang, Vuong Bui, Chủ Tất。