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 网站上。
内部人员:想要尽快看到新功能?您可以下载夜间 内部人员 版本,并在新功能发布后立即尝试最新的更新。有关最新的 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
,以更好地匹配编辑器的其他警告颜色。您将在文件资源管理器、查看错误视图和编辑器波浪线中看到此更新的颜色
我们还更新了 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 子系统 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 Pack 安装程序 时,它会自动检测 JDK(Java 开发工具包)、Visual Studio Code 和必需的扩展是否已安装。如果没有,安装程序可以为您下载和配置缺少的依赖项。您还可以使用安装程序将 Java 相关组件添加到您现有的 Visual Studio Code 安装中。
安装 Java 扩展后,Visual Studio Code 提供了全面的 Java 开发功能,例如智能代码补全、重构、调试和测试,以及项目管理和应用程序服务器集成。
远程开发(预览版)
我们一直在改进 远程开发 扩展,这些扩展允许您使用容器、远程计算机或 Windows 子系统 Linux (WSL) 作为功能齐全的开发环境。您可以在 远程开发发布说明 中了解有关新扩展功能和错误修复的信息。
要了解有关在 Windows 上开发 Linux 应用程序的更多信息,请参阅 Windows 开发者平台团队的这篇 使用 WSL 和 Visual Studio Code 远程进行 Linux 开发 博客文章。
用于 Chrome 的调试器作为远程 UI 扩展
如果您在远程窗口中处理 Web 项目,可以使用 用于 Chrome 的调试器扩展 在本地 Chrome 窗口中对其进行调试。只需安装扩展、在远程启动您的开发服务器、转发服务器的端口并启动您的启动配置即可。有关详细信息,请参阅 扩展自述文件。
扩展编写
将 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/[email protected]
将安装 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。当openExternal
由远程扩展在本地 URI(例如https://127.0.0.1:8080
)上调用时,VS Code 会自动打开一个隧道,将本地机器上的端口连接到远程机器上的打开端口。这种自动隧道以前只对 'localhost' URI 启用,但现在也对 '127.0.0.1' 启用。
此外,webview 端口映射 API 现在除了处理 'localhost' URI 外,还处理 '127.0.0.1'。
更多属性标记为 readonly 或 ReadonlyArray
VS Code API 中的更多属性现在在vscode.d.ts
中标记为 readonly,以更好地表达它们对扩展的意图。
值得注意的变化包括
- 事件接口上的所有字段现在都是 readonly。永远不应该修改事件对象,因为同一个对象可以分发给多个侦听器。
DiagnosticCollection
上的方法现在接受 readonly 数组。之所以进行此更改,是因为你只能通过其方法更新DiagnosticCollection
,而不能通过修改之前传递给它的数组来更新。Extensions.all
现在是一个 readonly 数组,因为它不能被修改。TextEditor.insertSnippet
现在接受 readonly 数组,因为它不会修改其参数。
这些新的readonly
修饰符可能会导致扩展代码出现编译错误,这些代码明确地将 VS Code API 之前使用的非 readonly 类型进行了类型化。
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()
。
评论反应
评论 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。现在有一个提议的 APIvscode.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 添加许可证字段 #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):包 json 信息 PR #72763
- @malingyan2017:修复码头中的最近列表不显示最近的文件/文件夹 #74788 PR #75108
- Denis Stepanov (@meduzik):启动命令中的空参数现在已正确转义 PR #25098
- Micah Smith (@Olovan):解决 issue #35245 的问题 PR #75357
- @orange4glace
- Jesse Mazzella (@ozyx): 从仓库 URL 中删除末尾的 '/' 以用于 baseFolderName 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: 将日志级别更改为信息。 PR #369
- James George (@jamesgeorge007)
- Jonathan Nagy (@nagytech): 允许指定提交消息 PR #365
对 vscode-recipes
的贡献
- Mladen Mihajlović (@mika76): Vue - 使用从问题中收集的信息更新自述文件 PR #213
- Ephraim Khantsis (@doom777): 更新 ng-test 启动配置 PR #212
对 localization
的贡献
有超过 800 名 云 + 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.