现已发布!阅读有关 11 月的新功能和修复的更多信息。

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 提供,以跟踪我们的进展

Burn down chart of VS Code issues

在此整理里程碑期间,我们还解决了多个功能请求和社区 拉取请求。请继续阅读以了解新功能和设置。

工作台

活动栏指示器

我们为活动栏中的活动项引入了一个新的指示器,以使其更加突出并提高可读性。我们还调整了非活动前景色,以与活动元素形成更强的对比。

Active Activity Bar indicator

您可以通过新的颜色标记 activityBar.activeBorder 控制活动指示器。我们还为活动元素引入了一个可选的背景色 activityBar.activeBackground,配置后可以如下所示

Active Activity Bar indicator custom background

可主题化的窗口边框

我们引入了两个新的主题颜色 window.activeBorderwindow.inactiveBorder,用于在 VS Code 窗口周围提供边框。window.activeBorder 应用于活动(聚焦)窗口,而 window.inactiveBorder 应用于非活动(未聚焦)窗口。这些新颜色不继承任何颜色,因此它们必须由主题或 workbench.colorCustomizations 设置提供。如果仅指定一种颜色,则具有该颜色的边框将应用于活动和非活动窗口。

Animated image showing the use of the new window border colors

列表和树键盘滚动

您现在可以按 ⌘↑ (Windows, Linux Ctrl+Up)⌘↓ (Windows, Linux Ctrl+Down) 使用键盘滚动列表和树。

禅模式下更少的通知

在使用禅模式时,除非通知有关错误,否则通知吐司将不再分散您的注意力。您可以使用新的 zenMode.silentNotifications 设置来控制此行为。您始终可以通过单击右下角的通知图标从状态栏访问所有通知。

大纲和面包屑的类型过滤器

有一些新设置可配置在大纲视图和面包屑导航中显示哪些符号。这些设置称为 outline.show{符号类型}breadcrumbs.show{符号类型}。例如,outline.showVariablesoutline.showFunctions 等。

Filtered Outline view

上面的屏幕截图显示了大纲视图已配置为不显示局部变量,您可以看到变量 hidden 未显示。

请注意,由语言扩展分配符号的类型。您可以将鼠标悬停在大纲视图中的符号标签上,以查看正在使用哪种符号类型(显示在括号中)。

控制拆分编辑器时的尺寸调整行为

新的设置 workbench.editor.splitSizing 控制拆分编辑器时的编辑器布局。默认情况下,大小将在所有编辑器之间均匀分配,如下所示

splitSizing with distribute value

将此设置更改为 split,以将当前编辑器拆分为一半,而不影响其他编辑器的大小

splitSizing with split value

禁用 GPU 加速

我们已经收到用户的报告,这些报告似乎与 GPU 如何用于渲染 VS Code 的 UI 有关。当使用额外的 --disable-gpu 命令行参数运行 VS Code 时,这些用户会有更好的体验。使用此参数运行将禁用 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 或超宽显示器尤其有用。此外,小地图字体的渲染现在更加平滑和清晰。

Animated image showing the ability to resize the minimap

通过键盘进行定义预览悬停

有一个新的命令 显示定义预览悬停,以提高定义预览悬停小部件的可访问性,可以通过将鼠标悬停在符号上并按下依赖于平台和配置的修饰键来触发。以前,仅提供了 显示悬停 命令,该命令等效于将鼠标光标悬停在符号上。现在,使用 显示定义预览悬停,可以通过键盘显示详细的悬停信息。

Animated image showing the use of the new Show Definition Preview Hover command

括号匹配的改进

以前,VS Code 仅在光标位于括号字符旁边时才突出显示匹配的括号。现在,如果存在,VS Code 将始终突出显示包围括号。

Image showing highlighted enclosing brackets

我们还调整了我们的 转到括号选择到括号 操作以使用包围括号。

重复选择

我们添加了一个名为 重复选择 的新操作。执行时,将复制当前选择,并选择结果。如果没有选择,则将复制当前行,而不会写入系统剪贴板。

字体功能设置

现在可以对字体功能进行更精细的控制。在配置 "editor.fontLigatures": true 时,VS Code 将打开 ligacalt。但是,某些字体具有更多设置,例如 Fira Code 使用的样式集。

我们现在允许显式控制这些字体功能,例如

"editor.fontFamily": "Fira Code",
"editor.fontLigatures": true,
"[javascript]": {
  "editor.fontLigatures": "'ss02', 'ss19'",
},

上面的设置配置编辑器以使用 Fira Code 字体系列,为所有语言打开字体连字,并在 JavaScript 文件中启用“水平条”(“ss02”)和“点状零”(“ss19”)字体功能设置。这些使 >= 连字以水平条渲染,而 0 在 JavaScript 中以内部点渲染

Image showing font feature settings in the editor

更好地处理 Unicode 组合字符

我们已经围绕处理 Unicode 组合字符 进行了改进,并且我们将此类序列视为原子字符(在光标移动,编辑操作或在块光标渲染中)。最好使用块光标样式和之前/之后的动画来演示这一点

之前
Animation showing cursor movement before

之后
Animation showing cursor movement after

在相关的更改中,状态栏现在在 Col 部分中显示 Unicode 代码点计数。

光标重做

软撤消 命令已重命名为 光标撤消。此操作很有用,例如,当使用 ⌘D (Windows, Linux Ctrl+D) 选择下一个匹配项并超出一次时,因为它仅撤消上次光标状态更改。此外,我们现在添加了 光标重做,它可以重做以前撤消的光标状态更改。

差异编辑器改进

内置的差异计算过去有一个硬编码的 5 秒超时,之后它将放弃并返回非最小差异。您现在可以使用 "diffEditor.maxComputationTime" 配置此超时,并将超时设置为 0 将始终计算最小差异,无论需要多长时间。此外,当计算时间超过一秒钟时,差异编辑器现在会呈现进度条。

使用差异编辑器时,当比较仅具有前导或尾随空格差异的文件时,并且差异编辑器配置为忽略修剪空格时,会产生混淆。这将导致源代码管理将文件显示为已修改,而差异编辑器将不呈现任何差异。当检测到这种情况时,VS Code 现在会显示一个 显示空格差异 按钮,以帮助您快速显示空格中的差异。可以使用差异编辑器顶部的 显示/忽略修剪尾随空格差异 命令切换此设置

Animation for button that shows when comparing two files that contain only whitespace diffs but the diff editor is configured to ignore trim whitespace

集成终端

默认情况下现在支持和弦

新的设置 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"

双击选择单词时使用更多分隔符字符

现在,在终端中双击以选择单词时,字符 ,:; 被视为单词分隔符。

如果终端的初始工作目录设置为符号链接,则该符号链接现在将在终端中保留。

命令导航现在从滚动位置开始工作

命令导航允许在终端中运行的命令之间导航或选择。现在,它会考虑终端的滚动位置,因此你可以滚动、找到上一个命令,并且终端将从终端的视口向上滚动(以前是从底部滚动)。

Command navigation jumps to nearest command after scrolling

默认情况下,命令导航仅在 macOS 上绑定为 Cmd+向上/向下,命令选择绑定为 Cmd+Shift+向上/向下

以下是一些示例快捷键,如果你想在 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 来禁用所有任务的警告。

Slow task provider warning

禁用任务自动检测

如果你关心的所有任务都在 tasks.json 文件中定义,那么你可能希望禁用所有扩展任务提供程序,以提高运行任务时的性能。对于各个扩展来说,提供一个设置来禁用其任务提供程序是很好的做法,但是你现在可以通过将 task.autoDetect 设置为 off 来禁用所有任务提供程序。

问题匹配器提示

过去,任何没有问题匹配器的任务都需要在 tasks.json 中设置一个空的问题匹配器,以跳过问题匹配器提示。现在,你可以使用 task.problemMatchers.neverPrompt 为所有任务或特定任务类型禁用问题匹配器提示。问题匹配器提示中还有一个新选项可以禁用提示。

Problem matcher prompt dropdown

源代码管理

在活动编辑器更改时突出显示文件

源代码管理视图现在会自动在其树/列表视图中突出显示活动编辑器文件。

SCM view highlighting the active file

Git:改进的未跟踪文件管理

现在,你可以使用 Git:未跟踪的更改 设置单独管理未跟踪的文件。如果你想在源代码管理视图中看到一个单独组中的未跟踪文件,请选择 separate 选项。如果你想永远不看到它们,请选择 hidden。默认的提交操作将根据此设置进行调整,并且仅在使用 mixed 设置值时才会将未跟踪的更改包含在提交中。

Git untracked files

Git:合并提交时的自动提交消息

每当 VS Code 检测到你正在进行 Git 合并提交时,它会自动在提交输入框中填充 Git 的默认提交消息。

Git merge commit message

Git:在资源管理器中显示

现在有一个上下文菜单操作在资源管理器中显示,用于从源代码管理视图中的 Git 存储库在文件资源管理器中显示文件。

Git Reveal in Explorer

Git:克隆进度

克隆操作现在支持在右下角的通知中显示进度。

Git clone progress

调试

可以在概览标尺中显示断点

为了在使用大型文件中的断点时更容易,你现在可以通过启用新设置 debug.showBreakpointsInOverviewRuler 在编辑器的概览标尺中显示断点。

breakpoints in overview ruler

复合调试配置的预启动任务

如今,每个调试配置都可以通过 preLaunchTask 属性指定在启动调试会话之前运行的任务。当调试单个程序时,这效果很好,但是在使用涉及多个程序的复合配置时,它会变得笨拙。

在此里程碑中,我们为每个复合调试配置添加了 preLaunchTask 的支持。通过此添加,单个任务可以在启动各个调试会话之前构建所有调试目标。如果发生构建错误,则不会启动任何会话。

prelaunch task for compound debug configurations

语言

CSS 媒体查询符号

在 CSS/SCSS/Less 文件中,媒体查询符号现在显示在大纲视图、面包屑路径和转到文件中的符号列表中。

CSS media query symbols

typescript.tsserver.maxTsServerMemory

如果你正在处理一个包含数千个文件的大型 TypeScript 项目,则新的 typescript.tsserver.maxTsServerMemory 设置可让你增加为 IntelliSense 提供支持的 TypeScript 服务器的最大内存使用量。

扩展编写

vscode.env.uiKind

添加了一个新的 API vscode.env.uiKind,以便扩展可以知道它在哪种 UI 中运行。为了支持在浏览器中运行 VS Code,可能的值为 UIKind.WebUIKind.Desktop

调用层次结构提供程序 API

我们已经完成了调用层次结构提供程序 API:CallHierarchyProvider。它支持 查看调用层次结构 功能,该功能查找函数、方法等的调用者和被调用者。

任务自定义执行

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

Symbol icon colors

问题和通知

我们已将问题和通知图标的默认颜色设置为从编辑器前景色继承,因此如果你更改这些颜色,它将继承到其他区域。

Problem icon colors

你还可以显式设置“问题”面板和“通知”的图标颜色

  • problemsErrorIcon.foreground
  • problemsWarningIcon.foreground
  • problemsInfoIcon.foreground
  • notificationsErrorIcon.foreground
  • notificationsInfoIcon.foreground
  • notificationsWarningIcon.foreground

灯泡

灯泡图标也是可主题化的

  • editorLightBulb.foreground
  • editorLightBulbAutoFix.foreground

Lightbulb icon colors

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://127.0.0.1:${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,如果(例如通过 openExternal)在浏览器中打开该 URI,将导致触发已注册的 URI 处理程序。

删除实验性自定义数据设置和贡献点

[html/css].experimental.customData 设置和 contributes.[html/css].experimental.customData 贡献点在 1.38 中已弃用,现在已删除。你可以改用稳定的自定义数据设置和贡献点。要阅读有关自定义数据格式的更多信息,请参阅 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 };
}

range 仍然是可选的或是一个简单的 range,但它也可以是两个 range:一个用于插入,另一个用于替换。有关详细信息,请参阅 Issue #10266

任务详情

Task 上有一个新属性,任务提供程序可以使用它在 UI 中显示任务时向任务添加 detail。您还可以在 tasks.json 中使用 detail 属性。内置的 npm 扩展使用任务详情来显示将运行哪个 npm 脚本。

tasks with detail

支持将 WebviewPanelOptions 传递给自定义编辑器

我们继续在本迭代中开发 自定义编辑器 API 提案。现在,建议的 registerWebviewEditorProvider 函数接受一组 options,允许您在自定义编辑器 webview 中启用 retainContextWhenHidden 和其他功能。

export function registerWebviewEditorProvider(
  viewType: string,
  provider: WebviewEditorProvider,
  options?: WebviewPanelOptions
): Disposable;

工程

在浏览器中测试 VS Code 运行

现在有一个最小的设置,VS Code 可以在浏览器中运行,可用于开发和测试。浏览器实例仍然缺少一些功能,并且正在积极开发中。

在您本地的 vscode 存储库分支中,从命令行执行 yarn web 并访问 https://127.0.0.1:8080/。有关克隆和构建 vscode 存储库的更多详细信息,请参阅 设置说明

VS Code running in a browser

注意:请勿将此设置用于任何严肃的开发。目的是允许社区将更改贡献回 VS Code,以改善浏览器中的整体体验。

使用 TypeScript 3.7 构建 VS Code

VS Code 现在使用 TypeScript 3.7 构建。这是一个令人兴奋的更新,因为它允许我们在我们的代码库中使用可选链 (?.)(以及带来许多其他改进)。

您可以通过安装 JavaScript 和 TypeScript Nightly 扩展,立即开始在 VS Code 中使用 TypeScript 3.7 功能。

Electron 6.0 更新

在此里程碑中,我们完成了将 Electron 6 捆绑到 VS Code 中的探索,使其成为第一个与 stable 一起发布的 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 的贡献

language-server-protocol 的贡献

vscode-eslint 的贡献

vscode-json-languageservice 的贡献

vscode-css-languageservice 的贡献

node-jsonc-parser 的贡献

debug-adapter-protocol 的贡献

vscode-vsce 的贡献

inno-updater 的贡献

localization 的贡献

有超过 800 位 Cloud + AI 本地化 社区成员使用 Microsoft 本地化社区平台 (MLCP),其中大约有 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。
  • 简体中文:Yizhi Gu, paul cheung, 斌 项, 顺 谭, 一斤瓜子, Charles Lee, Peng Zeng, Charles Dong, 楠 姜, yungkei fan, ztluo, David Huang, 普鲁文, Zhen-Qi Liu, 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。