尝试以扩展 VS Code 中的代理模式!

2019 年 8 月 (版本 1.38)

更新 1.38.1:此更新解决了这些问题

下载:Windows:x64 | Mac:Intel | Linux:deb rpm tarball snap


欢迎使用 2019 年 8 月发布的 Visual Studio Code。此版本中包含许多我们希望您会喜欢的更新,其中一些主要亮点包括:

如果您想在线阅读这些发行说明,请访问 code.visualstudio.com 上的更新页面。

内部版本:想要尽快体验新功能?您可以下载每晚的内部版本,并在最新更新发布后立即尝试。如需获取最新的 Visual Studio Code 新闻、更新和内容,请在 Twitter 上关注我们:@code

工作台

在搜索和替换中保留大小写

在 1.37 版本中,我们为编辑器的“查找/替换”控件添加了“保留大小写”选项。现在,在全局搜索和替换中,该选项以 AB 图标的形式提供。

连字符分隔的单词也新增了大小写保留模式。

Preserve Case button in search

更新了取消搜索图标

在运行长时间搜索时,我们更新了用于取消搜索的图标,以更好地表示该操作。

Cancel search icon

字符串数组设置的验证

如果当前值不满足指定的 minItemsmaxItemsitem.enumitem.pattern 架构,设置编辑器现在会为字符串数组项显示错误。

String of array error validation

VS Code 现在会在打开出站链接之前显示提示。

Link protection prompt

您可以直接打开链接,也可以信任特定域以绕过此提示。通过“配置受信任域”按钮或命令,您可以为特定域或所有出站链接启用/禁用链接保护。

资源管理器改进

顶级资源创建

我们改进了在资源管理器中创建顶级文件和文件夹的过程。现在,在文件资源管理器根目录中创建文件或文件夹有三种方法:

  • 滚动到最后一个元素之外,以便在空白区域调用上下文菜单。
  • 按下 Escape 键可清除资源管理器中的焦点和选择,从而使标题区域操作在资源管理器根目录上执行。
  • 在滚动条上使用上下文菜单。

打开文件并保留焦点

现在可以在资源管理器中以预览模式打开文件,同时保持焦点在资源管理器中。新命令是 filesExplorer.openFilePreserveFocus,默认情况下,它可以通过 Space 键触发。

资源管理器文件命名

有一个新设置 explorer.incrementalNaming,用于控制重复文件命名,其值可以是 simplesmart

  • simple - 在复制的名称末尾附加单词“copy”,后面可能会跟一个数字。这是当前 VS Code 稳定版本的行为。
  • smart - 在复制的名称末尾添加一个数字。如果名称中已经包含数字,则递增该数字。

最大化编辑器切换命令

新命令“切换编辑器组大小”(workbench.action.toggleEditorWidths)将在最大化活动编辑器组和均衡编辑器组宽度之间切换。

工作台的网格布局

工作台的布局引擎已重写,以使用与编辑器区域本身相同的网格小部件。这项工作已经进行了一段时间,内部版本在过去几次迭代中默认启用了此功能。该设置是 workbench.useExperimentalGridLayout,现在将默认启用。

切换编辑器区域/最大化面板

新引擎为未来的工作台布局提供了更大的灵活性。目前,这体现在能够隐藏编辑器区域。使用网格布局有一个新命令“切换编辑器区域”,它将隐藏编辑器区域,并允许面板(例如“输出”或“调试控制台”)填充布局。“切换最大化面板”命令也具有相同的效果。这意味着最大化面板现在是真正最大化的,而不再是以前编辑器左侧的微小间隙。

您可以在下面看到最大化的集成终端

Maximized panel

如果您尝试从面板或侧边栏等任何地方打开文件,编辑器将自动重新出现。

隐藏单个 macOS 触控栏条目

新设置 keyboard.touchbar.ignored 可以有选择地从 macOS 触控栏中移除 VS Code 命令。VS Code 默认添加以下命令:

  • workbench.action.navigateBack
  • workbench.action.navigateForward
  • workbench.action.debug.start
  • workbench.action.debug.run
  • workbench.action.debug.continue
  • workbench.action.debug.pause
  • workbench.action.debug.stepOver
  • workbench.action.debug.stepInto
  • workbench.action.debug.stepOut
  • workbench.action.debug.restart
  • workbench.action.debug.stop

新的编辑器组上下文键

有两个新的 when 子句上下文用于有条件地绑定键盘快捷方式:

  • activeEditorGroupIndex - 一个从 1 开始的数字,反映编辑器网格中编辑器组的位置。索引为 1 的组将位于左上角。
  • activeEditorGroupLast - 如果是编辑器网格中的最后一个编辑器组,则为 true

注意:有关 when 子句上下文的完整列表,请参阅when 子句上下文参考

辅助功能改进

在此里程碑中,我们继续修复可访问性问题。亮点包括:

  • 单词导航现在遵循 NVDA 和 VoiceOver 的预期。在编辑器中使用单词导航时,单词会正确播报。
  • Windows 放大镜工具现在可以在编辑器中跟随光标。

屏幕录制模式

屏幕录制模式(开发人员:切换屏幕录制模式)已进行多项改进:

  • 现在,屏幕录制快捷键标签的长度受到限制。
  • 快捷键标签的垂直位置可以通过 screencastMode.verticalOffset 设置进行调整。
  • 快捷键标签可以配置为仅通过 screencastMode.onlyKeyboardShortcuts 设置渲染实际键盘快捷键。
  • 键盘快捷键渲染样式得到改进。

编辑器

光标周围的行数 (scrollOff)

现在,您可以通过设置 editor.cursorSurroundingLines 来自定义在光标移向文件开头或结尾时,光标周围显示的可见行数。在 Vim 编辑器中,此功能称为 scrollOff

Cursor surrounding lines

查找中的多行搜索

编辑器查找控件现在支持多行文本搜索和替换。通过按 Ctrl+Enter,您可以在输入框中插入新行。

Multi-line search in the editor

内联差异编辑器中的复制和还原

在使用内联差异编辑器时,新增了复制或还原已删除内容的动作。将鼠标悬停在内联差异编辑器中已删除的内容上,您现在可以:

  • 复制整个已删除内容
  • 复制特定行
  • 还原更改

Diff actions

跳转到行支持负行号

您现在可以在“跳转到行”选择器中输入负行号,以从文件末尾导航。例如,输入 -1 将显示文件的最后一行。

全局搜索小地图装饰

小地图(代码概览)现在显示文件内搜索和全局搜索的搜索结果。

集成终端

在使用 terminal.integrated.cwd 中的变量时改进了回退行为

当在 cwd 设置中使用变量时,例如

"terminal.integrated.cwd": "${fileDirname}"

现在终端不会在变量无法解析时抛出错误,而是会将错误记录到控制台并回退到工作区目录。

自动化 shell 设置

除了为集成终端设置 shell 之外,您现在还可以为自动化(例如任务)指定 shell。如果您使用 tmux 作为 shell,这将特别有用,因为 tmux 不适用于所有自动化。

"terminal.integrated.shell.osx": "/Users/user/bin/tmux_script"
"terminal.integrated.automationShell.osx": "bash",

语言

HTML 和 CSS 的 MDN 参考

VS Code 现在在 HTML 和 CSS 实体的完成和悬停中显示指向相关 MDN 参考的 URL

HTML & CSS MDN Reference

我们感谢 MDN 文档团队在整理 mdn-data / mdn-browser-compat-data 并使 VS Code 易于访问 MDN 资源方面所做的努力。

改进了 Less 支持

VS Code 现在支持许多新的 Less.js 功能,包括根函数、映射查找和匿名混合。

非标准和过时 CSS 属性的弃用标记

CSS 语言服务器采用了 弃用标记 实验性 API,并在自动完成中为标记为 nonstandardobsolete 的 CSS 属性显示弃用标记。

CSS deprecated properties

TypeScript 3.6

VS Code 现在随附 TypeScript 3.6.2。此重大更新带来了一些 TypeScript 语言改进,包括更严格的生成器import.meta 的支持,以及 JavaScript 和 TypeScript 的一些新工具功能。一如既往,此版本还包括一些重要的错误修复。

您可以在 TS 3.6 博客文章中阅读有关 TypeScript 3.6 功能的更多信息。

添加缺失的 await 快速修复

您的代码是否有点超前了?新的“添加 'await'”快速修复可帮助您 await 在异步代码中可能忽略的值

Detect missing calls to await in JavaScript using @ts-check and Quick Fix them

此快速修复适用于已启用类型检查的 TypeScript 和 JavaScript 源代码。

JavaScript 和 TypeScript 的分号感知编辑

当您在 JavaScript 或 TypeScript 源代码中添加导入或应用重构时,VS Code 现在会尝试从文件中现有代码推断是否包含分号

No semicolons

您可以在添加此功能的拉取请求中找到此分号检测工作原理的详细信息。有些快速修复和重构仍然不具备分号感知功能,但我们将在未来的更新中努力解决此问题。

JSDoc 注释不再合并到 IntelliSense

以前,我们的 JavaScript 和 TypeScript IntelliSense 会将多个 JSDoc 注释合并起来,如果它们出现在定义之前。在下面的示例中,请注意 User 类型的文档如何与 getUser 函数的文档合并

Older TS versions merged multiple JSDoc comments

使用 TypeScript 3.6,我们的 IntelliSense 现在仅使用紧邻的 JSDoc 注释作为文档和类型信息

TS 3.6 only uses the immediately preceding JSDoc comment

源代码管理

Git:提交输入框中的分支名称

当前 Git 分支名称现在显示在提交输入框中,以避免在错误的分支上提交

Git branch name in input box

Git:按字母顺序排序分支列表

新增了 git.branchSortOrder 设置,用于在使用“Git:切换到...”命令切换分支时更改分支的顺序。

Git:支持拉取取消

启用 git.supportCancellation 设置后,您将有机会取消正在进行的 Git Pull 请求,这在从慢速远程拉取时很有用。

调试

值更改时中断(数据断点)

在“变量”视图中,现在可以创建数据断点,当基础变量的值发生更改时,这些断点将被命中。与其它断点一样,数据断点可以在“断点”视图中禁用/启用和删除。

Data breakpoints

请注意,数据断点需要底层运行时或调试器的特定支持,我们预计将来只有少数调试扩展(如 C++ 和 C#,而不是 Node.js)会选择此功能。在此版本中,只有我们的示例调试器Mock Debug“模拟”数据断点。

调用堆栈视图改进

我们对“调用堆栈”视图进行了一些改进,最值得注意的是:

  • 当调试会话只有一个线程时,我们将始终隐藏线程并直接显示调用堆栈。
  • 在“调用堆栈”视图中单击线程和调试会话不再展开/折叠它们。只有显式单击折叠图标才会进行展开。此更改的原因是,在不进行不必要的展开的情况下更改焦点会话是很繁琐的。在我们的“大纲”视图中可以看到相同的行为。
  • 以前,当有新的调试会话时,“调试”视图会获得焦点。现在,“调试”视图只有在会话实际中断时才会获得焦点。
  • 调试会话元素仅在实际有该会话的线程时才显示折叠图标。

用于启动调试目标的新 shell 设置

在集成终端中启动调试目标时,VS Code 现在会遵守新的“自动化 shell”设置 (terminal.integrated.automationShell...)。如果您对集成终端使用特定的默认 shell(例如 tmux),但该 shell 在启动调试目标时无法与自动化配合使用,则此设置很有用。

"terminal.integrated.shell.osx": "/Users/user/bin/tmux_script"
"terminal.integrated.automationShell.osx": "bash",

对扩展的贡献

帮助 Webview 扩展添加内容安全策略

我们发现许多扩展创建的Webview 没有内容安全策略。虽然这目前不会引起直接关注,但所有 Webview 都应将内容安全策略作为良好的安全最佳实践。本次迭代中,我们开始针对这些扩展提出问题,以使它们了解此建议。

如果您有兴趣使您日常使用的一些扩展更安全一些,请查看 VS Code 问题 #79340 并提交 PR 以帮助它们。

GitHub 拉取请求

在本次里程碑中,我们继续改进 GitHub Pull Requests 扩展,包括错误修复和诸如“合并拉取请求后删除分支和远程”等功能。有关更多详细信息,请参阅我们的 8 月里程碑计划

远程开发(预览版)

我们继续开发 远程开发 扩展,这些扩展允许您使用容器、远程计算机或 适用于 Linux 的 Windows 子系统 (WSL) 作为功能齐全的开发环境。

为了帮助您开始使用远程开发扩展,有三个入门教程:

您还可以阅读最近的博客文章,其中描述了使用 WSL 和 Visual Studio Code 进行 Linux 开发的提示和技巧

1.38 版的功能亮点包括:

  • VS Code 稳定版支持 Alpine Linux 容器、Alpine WSL 发行版以及 ARMv7l / AArch32 SSH 主机。
  • VS Code Insiders 实验性支持 ARMv8l / AArch64 SSH 主机。
  • Dev Containers 的改进,包括新的容器资源管理器!

您可以在远程开发发行说明中了解新的扩展功能和错误修复。

扩展创作

VS Code 图标库

我们发布了一个包含所有 VS Code 图标 的存储库,供扩展作者使用。每个图标都有深色/浅色版本,我们还链接到我们的 Figma 设计文件

VS Code icons

Webview.asWebviewUri 和 Webview.cspSource

Webview 上有两个新属性:

  • Webview.asWebviewUri - 将本地文件系统的 URI 转换为可在 Webview 内部使用的 URI。

    对于桌面版 VS Code,这会将 file: URI 转换为 vscode-resource: URI。

  • Webview.cspSource - Webview 资源的内容安全策略源。

    对于桌面版 VS Code,这将是字符串 vscode-resource:

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 imagePath = vscode.Uri.file(path.join(extensionPath, 'media'));

panel.html = `<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src ${
      panel.webview.cspSource
    } https:;">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Cat Coding</title>
</head>
<body>
    <img src="${panel.webview.asWebviewUri(imagePath)}/cat.gif" width="300" />
</body>
</html>`;

创建不带内容安全策略的 Webview 时发出警告

在使用 Webview API 开发扩展时,如果您创建的 Webview 未设置 内容安全策略,我们现在会记录警告。

Debug warning for a webview that lacks a CSP

所有 Webview(即使是非常简单的 Webview)都应设置内容安全策略。这有助于限制内容注入的潜在影响,并且通常是深度防御的良好措施。我们已在Webview 扩展指南中记录了如何向 VS Code Webview 添加内容安全策略。

机器特定可覆盖设置

您现在可以使用 machine-overridable 作用域定义一个机器特定设置,该设置可在工作区和文件夹级别进行覆盖。

"configuration": {
  "title": "My Extension Settings",
  "properties": {
   "myextension.libPath": {
      "type": [
        "string",
        "null"
      ],
      "markdownDescription": "Specify the path to the library.",
      "default": null,
      "scope": "machine-overridable"
    }
  }
}

自定义树视图中的多选

通过 createTreeView 贡献的树现在可以将 canSelectMany 选项添加到 TreeViewOptions。这会在贡献的树视图中启用多选,并使在树元素上运行的命令接收所有选定的树元素作为第二个命令参数的数组。

markdown.api.render

VS Code 内置 Markdown 扩展中的新命令 markdown.api.render 接受 Markdown stringvscode.TextDocument,并返回渲染后的 Markdown 作为 HTML

import * as vscode from 'vscode';

export function activate(context: vscode.ExtensionContext) {
  vscode.commands.executeCommand('markdown.api.render', '# Hello Markdown').then(result => {
    console.log(`rendered markdown: ${result}`);
  });
}

日志

rendered markdown: <h1 id="hello-markdown" data-line="0" class="code-line">Hello Markdown</h1>

自定义数据标记为稳定

2019 年 1 月 1.31 版本中作为实验性功能引入的自定义数据格式现在被标记为稳定。

  • html.experimental.customData - 此设置已弃用,并由 html.customData 取代。
  • css.experimental.customData - 此设置已弃用,并由 css.customData 取代。
  • contributes.html.experimental.customData - 此贡献点已弃用,并由 contributes.html.customData 取代。
  • contributes.css.experimental.customData - 此贡献点已弃用,并由 contributes.css.customData 取代。

您可以在 microsoft/vscode-custom-data 的文档和示例中了解如何使用自定义数据格式来增强 VS Code 的 HTML/CSS 语言支持。

已弃用的 workspace.rootPath

当我们添加对多根工作区的支持时,我们弃用了 API workspace.rootPath,转而支持 workspace.workspaceFoldersworkspace.getWorkspaceFolder。我们注意到许多扩展仍然使用此 API,即使它在多根工作区中无法正常工作。如果您拥有使用此 API 的扩展,请更新它,因为我们将来可能会移除此 API。您可以在 Adopting-Multi-Root-Workspace-APIs wiki 页面上找到有关从 rootPath 迁移的更多详细信息。

调试适配器协议

完成建议的改进

调试适配器现在可以使用新的功能 completionTriggerCharacters 来 anunciar 字符,前端 UI 应该使用这些字符在 REPL 或调试控制台中触发完成建议 UI。如果未指定,前端 UI 应该使用“.”字符来触发建议 UI。

此外,我们已向 CompletionItem 类型添加了一个可选的 sortText 属性。借助此属性,调试适配器可以控制前端 UI 如何对适配器返回的完成建议进行排序。如果缺少该属性,前端可能会根据 label 属性对项目进行排序。

修复了 DAP JSON 架构中的类型问题

调试适配器协议 JSON 架构中,我们已将类型说明符 number 更改为 integer,在浮点类型没有意义的地方(例如 ID)。

建议的扩展 API

每个里程碑都附带新的提议 API,扩展作者可以试用它们。一如既往,我们渴望您的反馈。以下是试用提议 API 所需的操作:

  • 您必须使用 Insiders 版本,因为提议的 API 经常更改。
  • 您的扩展的 package.json 文件中必须包含以下行:"enableProposedApi": true
  • 将最新版本的 vscode.proposed.d.ts 文件复制到您的项目中。

请注意,您不能发布使用提议 API 的扩展。我们很可能会在下一个版本中进行破坏性更改,我们绝不希望破坏现有扩展。

符号和完成的弃用标签

用于完成和文档/工作区符号的 API 现在支持将项目标记为已弃用。完成和符号有一个新的可选属性 tags,它是一组 CompletionItemTags 或 SymbolTags。目前,仅支持弃用,但计划添加更多标签,例如用于访问修饰符和其他修饰符的标签。

下面的代码片段显示了一个最小的完成项提供程序,它呈现一个标记为已弃用的项。

vscode.languages.registerCompletionItemProvider('plaintext', {
  provideCompletionItems() {
    const item = new vscode.CompletionItem('deprecated_completion');
    item.tags = [vscode.CompletionItemTag.Deprecated];
    return [item];
  }
});

当显示已弃用的完成或符号时,名称上会显示删除线,项目会稍微变暗,并且不会显示高亮显示

Deprecated items in smart completions

Pseudoterminal.onDidClose 现在接受一个数字

提议的 Pseudoterminal.onDidClose 已从 Event 更改为 Event,允许扩展作者指示终端或 CustomExecution2 任务失败。

已移除已弃用的拟议终端 API

已移除已弃用的 TerminalOptions.runInBackgroundcreateTerminalRenderer API。如果您需要从这些 API 迁移,应分别使用 TerminalOptions.hideFromUser(稳定版)和 ExtensionTerminalOptions(拟议版)。

新命令

我们现在公开了用于在编辑器、集成终端、扩展详细信息视图和 Webview 中的“查找”控件中导航搜索结果的命令。

命令 命令 ID
输入 在编辑器中查找下一个结果 editor.action.nextMatchFindAction
⇧Enter (Windows, Linux Shift+Enter) 在编辑器中查找上一个结果 editor.action.previousMatchFindAction
⇧Enter (Windows, Linux Shift+Enter) 在集成终端中查找下一个结果 workbench.action.terminal.findNext
输入 在集成终端中查找上一个结果 workbench.action.terminal.findPrevious
输入 在扩展详细信息视图中查找下一个结果 editor.action.extensioneditor.findNext
⇧Enter (Windows, Linux Shift+Enter) 在扩展详细信息视图中查找上一个结果 editor.action.extensioneditor.findPrevious
输入 在 Webview 中查找下一个结果 editor.action.webvieweditor.findNext
⇧Enter (Windows, Linux Shift+Enter) 在 Webview 中查找上一个结果 editor.action.webvieweditor.findPrevious

值得注意的修复

  • 26012: 括号自动插入与自动补全配合不佳,导致字符重复
  • 47292: 任务创建的诊断信息对扩展不可访问
  • 73884: Linux:从 FTP 连接打开文件时显示为空
  • 75054: macOS 简易全屏再次可用
  • 77293: 在 provideDebugConfigurations 和 resolveDebugConfigurations 中尊重 Cancellation Token 以取消调试
  • 77735: workspace.applyEdit 会在稍后有 RenameFile 时丢弃 TextEdit
  • 77747: 带有 $(xx) 的文件名在文件夹视图中显示不正确
  • 77990: 启动 TS/JS 文件比打开其他文件慢得多
  • 77996: 文件 > 另存为将光标移到文件开头
  • 78147: 配置任务操作应显示新添加的任务并将光标定位在那里
  • 78179: 使用类型过滤器调用“tasks.fetchTask()”会获取所有任务
  • 79478: 在 Markdown 文件中突出显示自定义 html 标签
  • 79704: JSDoc 中支持 @example
  • 79763: 编辑器:可以关闭所有编辑器,即使是脏的
  • 79798: 编辑器:组未激活,即使 workbench.editor.revealIfOpen: true
  • 78046: SCM:支持对文件也进行所选更改的暂存,感谢 Darrien Singleton (@OneThatWalks)PR #78562
  • 79625: 为“preLaunchTask”结构提供代码补全

感谢

最后但同样重要的是,衷心感谢!以下帮助使 VS Code 变得更好的各位:

vscode 的贡献

对我们问题跟踪的贡献

如果您想帮助我们管理传入问题,请参阅我们的社区问题跟踪页面。

vscode-css-languageservice 的贡献

vscode-html-languageservice 的贡献

vscode-eslint 的贡献

  • @salvofid: 修复 https://github.com/microsoft/vscode-eslint/issues/682 PR #698

language-server-protocol 的贡献

debug-adapter-protocol 的贡献

vscode-loader 的贡献

vscode-recipes 的贡献

localization 的贡献

通过 Microsoft 本地化社区平台 (MLCP),有 800 多名 Cloud + AI 本地化 社区成员,其中约有 100 人是 Visual Studio Code 的活跃贡献者。我们感谢您的贡献,无论是提供新翻译、对翻译投票还是提出流程改进建议。

以下是贡献者的快照。有关项目的详细信息,包括贡献者姓名列表,请访问项目网站:https://aka.ms/vscodeloc

  • 波斯尼亚语:Ismar Bašanović, Ernad Husremovic。
  • 保加利亚语: Hristiya Hristov, Ivan Ivanov, Lyubomir Vasilev, Gheorghi Penkov。
  • 捷克语: Tadeáš Cvrček, Daniel Padrta, David Jareš, Jan Hajek, Jakub Stibůrek, Michal Franc, Jan Kos, Radim Hampl, Jiří Hofman, Samuel Tulach, Jan Brudný。
  • 丹麦语: René Pape, Lasse Stilvang, Allan Kimmer Jensen, Lars Vange Jørgensen, Alexander Matzen, Martin Liversage, Johan Fagerberg, Thomas Larsen, Anders Lund, Anton Ariens。
  • 荷兰语: Leroy Witteveen, Laurens Kwanten, Pieterjan De Clippel, Maxim Janssens, Luc Sieben, Hans Zoons, Jos Verlinde, Eric Algera, Damien van Gageldonk, Maxim Van Damme, Sven Klaasen, Tom Meulemans, Sujith Quintelier。
  • 英语(英国): Martin Littlecott, Alexander Ogilvie, Tobias Collier, William Wood, Cloud Sky, Fabio Zuin, Mohit Nain, sonali Dixit, Dan Jacobs, Giorgi Jambazishvili, Sulkhan Ninidze, alshyab wa3ed, YASHU MITTAL, Tejas kale, Mohammad Idrees, Chris Dias。
  • 芬兰语: Petri Niinimäki, Kiti Suupohja, Lasse Leppänen, Sebastian de Mel, Riku Riikonen, Valtteri Vatanen。
  • 法语: Griffard, Thierry DEMAN-BARCELÒ, Corwin D'Ambre, Mohamed Sahbi, Rodolphe NOEL, Maxime Coquerel, Steven Dugois, Cédric M., Michael VAUDIN, Bastien Boussouf, Alicia lic, francois-joseph du fou, franto, DJ Dakta。
  • 德语: Julian Pritzi, Joscha Mathis, Jan Widmer, Jakob von der Haar, Frank Lindecke, Dejan Dinic, Florian Erbs, Patrick Burke, Mario Koschischek, Florian Berger, Christof Opresnik, Hans Meiser, Carsten Kneip, Ettore Atalan, Thorsten Hans, Meghana Garise, Sebastian Seidl。
  • 希腊语: Δημήτρης Παπαϊωάννου, Sotiris Koukios-Panopoulos, Jim Spentzos, Θοδωρής Τσιρπάνης, Stratos Kourtzanidis, Charalampos Fanoulis, John D, Stavros Papadakis, Vassilis Vouvonikos。
  • 希伯来语: חיים לבוב, Shalom Craimer, Matan Amos, Eyal Ellenbogen, Snir Broshi, Kyle Orin。
  • 印地语: Satish Yadav, Amit Gusain, Sanyam Jain, Abhirav Kushwaha, Ashok Kumar Rathore, nirav adatiya, Rajeev Desai, shaswat rungta, Kumar Vaibhav, Pramit Das, Jagjeet Singh, Pratishek PII, Kiren Paul, Chethana S, Piyush Sonagara, KRISHNA TANDON, Kishan K, Dhanvi Kapila。
  • 匈牙利语: Levente Borbély, Péter Nagy, Alex Kiss, Levente Hallai Seiler, Dániel Tar, Richard Borcsik, Boldi Kemény。
  • 简体中文:易婷婷, 项斌, paul cheung, 薛建东, 朱亦婷, feiyun0112 feiyun0112, Justin Liu, 顾益之, Joel Yang, 刘瑞恒 刘瑞恒, Edi Wang, 刘俊哲, Dave Young, 张锐, 苏凡, 周昊宇, Pluwen, Tony Xia, 张宇, 左祥, 谈少民, 刘彦佐, 李志强, 龚志乐, 叶福永, G.Y. Z, 胡昊, 邵猛, Horie Yuan, 孔祥瑞, 王文杰, Liam Kennedy, 赵畅畅, Charles Lee, 樊松阳, anson zhang, Young Bige, 刘石, 王德邦, Jarvis Jiang, Lin ai, Jessica Zhang, 任利城, , 雷驰, 孙庆, 付雄, Lynne Dong, 赵宇, 舒吉姆, 黄红东, 陶剑秋, 尤游, 杨翰林, bh wu, Bravo Yeung, 张迈克, 张汉宇, Y F, 王CG duoduobear, 郑越, 孙子强, 刘正元, 李江, 钟擎, 魏鹏, 徐涛, 许逍遥, 周瑜, WL, 全伟, rsy iridescent, Simon Chan, 黄海龙, 陈仁松, 徐洁婷, panda small, 张翼, 陈洋, 王伟轩, 方路笛, 杨舜杰, 周建, cuibty wong, 李立飞, 刘雨齐, 罗涛, 谭九鼎, 赵莉。
  • 繁体中文:謝政廷, Yi-Jyun Pan, Winnie Lin, LikKee 沥祺 Richie, Martin Lau, salagadoola _, 牧村 蔡, Jeremy, 小克, 煾 雪。
  • 印度尼西亚语: Jakka Prihatna, Septian Adi, Arif Fahmi, Laurensius Dede Suhardiman, Bakhtiar Amaludin, Heston Sinuraya, Riwut Libinuko, Hendra Widjaja, Rachmat Wahidi, Franky So, Bervianto Leo Pratama, Eriawan Kusumawardhono, Rifani Arsyad, Afnizar Nur Ghifari, Pradipta Hendri, Christian Elbrianno, Azhe Kun。
  • 意大利语: Alessandro Alpi, Bruni Luca, Luigi Bruno, Andrea Dottor, Riccardo Cappello, Moreno Bruschi, Aldo Donetti, andrea falco, Emanuele Meazzo, Michael Longo, Marco Dal Pino。
  • 日语: EbXpJ6bp -, nh, Kyohei Uchida, Takayuki Fuwa, Yoshihisa Ozaki, Hasefumi, TENMYO Masakazu, Michihito Kumamoto, Koichi Makino, Aya Tokura, Seiji Momoto, Yosuke Sano, Makoto Sakaguchi, Kyohei Moriyama, 裕子 知念, Rie Moriguchi, Fujio Kojima, 美穂 山本, taniokae, 太郎 西岡, Kazuya Ujihara, Hiroomi Kurosawa, Yasuaki Matsuda。
  • 韩语: Hongju, 우현 조, Jong Heun Shin, 형섭 이, Kyunghee Ko, Youngjae Kim, siin lee, Jae Yong Kum, Hoyeon Han, Kevin Lee, SeungJin Jeong, Hong Kwon。
  • 拉脱维亚语:Kaspars Bergs, Andris Vilde。
  • 立陶宛语: Andrius Svylas, Augustas Grikšas, Tautvydas Derzinskas, Karolis Kundrotas, Martynas J.。
  • 挪威语: Andreas Rødland, Cookius Monsterius, Dag H. Baardsen, Ole Kristian Losvik, Stephan Eriksen, Agnethe Seim Olsen。
  • 波兰语: Warchlak, Wojciech Maj, Marcin Weksznejder, Rafał Całka, Tomasz Świstak, Tomasz Wiśniewski, Marek Biedrzycki, Szymon Seliga, Michal Szulc, Jakub Żmidziński, Bartek PL, Igor 05, Rafał Wolak, Tomasz Chojnacki, Piotr Grędowski, Czech Kaczmarek, Artur Pelczar, Marcin Floryan, Paweł Modrzejewski, Jakub Jedryszek, Michał Stojke, Artur Zdanowski。
  • 葡萄牙语(巴西): Marcondes Alexandre, Alessandro Trovato, Marcelo Fernandes, Roberto Fonseca, Albert Tanure, Judson Santiago, Junior Galvão - MVP, Ray Carneiro, Lucas Miranda, Rodrigo Crespi, Thiago Dupin Ugeda, Renan Miguel, Weslei A. de T. Marinho, Rafael Lima Teixeira, Eduardo Moura, Gerardo Magela Machado da Silva, Bruno Talanski, Bruno Sonnino, Loiane Groner, Marcos Albuquerque, Jucinei Pereira dos Santos, Emmanuel Gomes Brandão, Fábio Corrêa, Flávio Albuquerque Camilo, Pablo Garcia, Alessandro Fragnani, Andrei Bosco, Daniel Luna, José Rafael de Santana, Douglas Ivatiuk Martim, Giuliano Reginatto, Marcos Dias, Alan William, Lucas Nunes, Gabriel Schade, Lucas Santos, arthurdenner ., Mauricio Lima, Igor Felix, Gabriel Barbosa, Fabio Lux, Guilherme Pais, Victor Cavalcante, Letticia Nicoli, Becky Marques, Fernando Val, Milton Camara, Saymon Damásio, Felipe Scuissiatto, Rodrigo Vieira, Djonathas Cardoso, André Gama, Gustavo Bezerra, Cynthia Zanoni, Marcelo Guerra, Jhonathan Soares, Rafael Laranja, Swellington Soares。
  • 葡萄牙语(葡萄牙): Ana Rebelo, Nuno Carapito, Pedro Daniel, Pedro Teixeira, João Carvalho, Diogo Barros, José Rodrigues, Sandro Pereira, Vitor Barbosa, Tiago Antunes, Daniel Correia。
  • 罗马尼亚语: Mihai Marinescu, Stefan Gabos, Dragos Marinescu, Alexandru Staicu。
  • 俄语: Andrey Veselov, Дмитрий Кирьянов, netf0rger, michael v, Иван Лещенко, nata kazakova, Анатолий Калужин, Валерий Батурин, Эдуард Тихонов。
  • 塞尔维亚语: Milos Zivkovic, Radovan Skendzic。
  • 西班牙语: Andy Gonzalez, Ricardo Estrada Rdez, Carlos Mendible, Alvaro Enrique Ruano, Engel Aguilar, José María Aguilar, David Fernández Aldana, Ricardo Rubio, Thierry DEMAN, Gabriel Perez, julian3xl, Adolfo Jayme, Ing. Sergio Uziel Tovar Lemus, Mario Mendieta, Jorge Serrano Pérez。
  • 瑞典语:Johan Spånberg, Notetur Nomen。
  • 泰米尔语: Kondasamy Jayaraman, Merbin J Anselm, Jeyanthinath Muthuram, Mani M, Boopesh Kumar, Vignesh Rajendran, Jaganathan B, Nithun Harikrishnan, Purusothaman Ramanujam, கருணாகரன் சமயன், Krishna Pravin, Jeffin R P, Sakthi Raj, Vetri ., Ranjith kumar。
  • 土耳其语: mehmetcan Gün, Meryem Aytek, Fıratcan Sucu, Anıl Mısırlıoğlu, Mehmet Yönügül, Ahmetcan Aksu, Ömer Sert, Sinan Açar, Misir Jafarov, Umut Can Alparslan, Yakup Ad, Hüseyin Fahri Uzun, Murat Pala, S. Ferit Arslan, Mesut Pişkin, Okan Çetin, Bruh Moment, Muhammed Emin TİFTİKÇİ, Burak Göksel。
  • 乌克兰语: Dmytro Kutianskyi, Yaroslav, Max Harasym, Arthur Murauskas, Sviatoslav Ivaskiv, George Molchanyuk, Did Kokos, Alexander Varchenko, Вадим Шашков, Евгений Коростылёв。
  • 越南语: Khôi Phạm, Van-Tien Hoang, Việt Anh Nguyễn, Belikhun, Spepirus Shouru, Vuong Bui, Chủ Tất, Poon Nguyễn。