2019 年 9 月(版本 1.39)
更新 1.39.1:此更新解决了这些问题,包括修复了一个安全漏洞。
更新 1.39.2:此更新解决了这些问题。
下载:Windows:x64 | Mac:Intel | Linux:deb rpm tarball snap
欢迎使用 Visual Studio Code 2019 年 9 月版本。此版本中有许多更新,我们希望您会喜欢,其中一些主要亮点包括:
- 在迷你地图中显示文本选择 - 在迷你地图概览中查看选择区域。
- 切换区域折叠键盘快捷键 - 使用“切换折叠”快速展开和折叠区域。
- 源代码管理树视图 - 以列表或新的树视图显示待处理的更改。
- 在自定义工作目录中打开终端 - 为特定文件夹添加键盘快捷键。
- HTML ARIA 属性参考链接 - 直接从 IntelliSense 链接到 ARIA 文档。
- CSS 属性完成包括分号 - 在您输入 CSS 属性时添加分号。
- CSS 颜色变量预览 - 颜色变量完成显示颜色样本。
- 改进的列断点 UI - 直接在您的源代码中查看可能的内联断点。
- 调用堆栈视图中的内联调试操作 - 将鼠标悬停在调试操作上以保持上下文。
- 远程资源管理器更新 - 资源管理器现在显示 WSL 发行版和存储库容器。
如果您想在线阅读这些发行说明,请访问 Updates(code.visualstudio.com)。
Insiders: 想尽快看到新功能吗?您可以下载夜间 Insiders 版本,并在最新更新可用时尝试它们。有关最新的 Visual Studio Code 新闻、更新和内容,请在 Twitter 上关注我们 @code!
工作台
更新的源代码管理视图
源代码管理视图已更新为使用最新的树形控件。您现在可以使用源代码管理标题栏上的切换视图模式按钮在列表视图和树视图之间切换。
您可以使用 scm.defaultViewMode
设置更改默认视图,该设置可以取值 list
或 tree
。
您现在还可以通过在视图中开始键入来受益于更新的树形控件的自动键盘导航和过滤。
在树视图模式下,当显示文件夹时,Git 扩展现在会向文件夹贡献命令,例如暂存更改,该命令将应用于文件夹中的所有文件。
改进的受信任域设置
我们简化了在 1.38 版本中引入的 出站链接保护功能的受信任域管理。
您现在可以使用命令管理受信任域来轻松添加、删除或修改受信任域,将其作为 JSON 文本文件。
可选择的完成详细信息
现在可以选择自动完成详细信息以进行复制和粘贴。
Windows 上更新的日语 UI 字体
在 Windows 上,我们将日语 UI 字体从 Meiryo
切换到 Yu Gothic UI
和 Meiryo UI
。
UI
字体通过使用更窄的日语假名字符来节省水平空间。您可以通过安装日语语言包,并使用配置显示语言命令将显示语言标识符设置为 ja
来使用日语 UI。
在下面的图像中,您可以看到较窄的 UI
字体在 Insiders(绿色图标)菜单栏中的外观。
改进的建议和悬停中的等宽字体显示
以前,建议和悬停小部件中的内联 <code>
段没有指定 font-family
。在 Windows/macOS 上,这些段使用 Chrome 的 font-family: monospace
的默认选择进行渲染。
在此迭代中,我们将它们与在整个 VS Code UI 中使用的系统无衬线字体对齐。
- Windows:
Courier New
->Consolas
(与Segoe UI
对齐) - macOS:
Courier
->SF Mono
、Monaco
、Menlo
(与SF Text
和Helvetica Neue
对齐) - Linux:没有变化。内联代码段仍以
Liberation Mono
渲染,这是 Chrome 在 Linux 上font-family: monospace
的默认值。
下面您可以看到 SF Mono
为内联代码块提供了更一致的外观。
设置编辑器中 uniqueItems 的验证
在 1.38 版本中引入的字符串数组设置的验证,现在支持 uniqueItems
。
如果使用 "uniqueItems": true
,则设置编辑器中的重复条目将显示警告。
扩展 README 中的代码块突出显示
扩展 README 中的代码块(显示在扩展视图的详细信息窗格中)现在在 VS Code 中突出显示
突出显示使用当前的颜色主题。
编辑器
切换折叠
您现在可以使用切换折叠(⌘K ⌘L (Windows, Linux Ctrl+K Ctrl+L)) 命令展开和折叠折叠区域。
迷你地图编辑器选择装饰
编辑器选择现在在迷你地图中突出显示
您可以通过修改 minimap.selectionHighlight
主题颜色来更改这些装饰的颜色。
迷你地图的触摸事件
现在可以使用触摸来拖动迷你地图滑块。
多光标粘贴的新选项
过去,当从剪贴板粘贴多行文本时,VS Code 会检查剪贴板文本行数是否与光标数匹配,如果匹配,它会将每行“分发”或“分散”到光标。您现在可以使用 editor.multiCursorPaste
设置来控制此行为,该设置可以具有以下值:
spread
- 每个光标粘贴一行文本(默认值)。full
- 每个光标粘贴完整的剪贴板文本。
集成终端
在自定义工作目录中打开新终端
有一个新命令允许创建具有自定义当前工作目录 (cwd) 的终端
{
"key": "cmd+shift+h",
"command": "workbench.action.terminal.newWithCwd",
"args": {
"cwd": "${fileDirname}"
}
}
您可以创建自己的键盘快捷键,以在任意数量的方便的工作目录中打开新终端。cwd
值可以是普通路径或变量。
更好的区域设置检测
terminal.integrated.setLocaleVariables
设置已被新的 terminal.integrated.detectLocale
设置替换。默认值为 auto
,它会将终端会话中的 $LANG
变量设置为检测到的语言 UTF-8 值,但仅当用户未明确配置它时。这个更好的默认值应该可以减少与终端中的语言和编码相关的问题。
语言
HTML ARIA 属性参考
HTML ARIA 属性的自动完成和悬停信息现在包括对相应的 WAI-ARIA 文档的引用。
CSS 属性完成带有分号
CSS 属性完成现在会在行末插入分号。
您可以使用 Ctrl+Enter(Windows/Linux)或 Cmd+Enter (macOS) 来使用此功能创建新行,而无需将结尾的 ;
推送到新行。
您可以使用 [css|scss|less].completion.completePropertyWithSemicolon
设置来控制此功能。
CSS 颜色变量完成的颜色预览
在完成 CSS 变量时,如果原始变量是颜色字符串,则 VS Code 现在会显示带有颜色的完成项
markdown.links.openLocation
新的 markdown.links.openLocation
设置控制 Markdown 文件中的链接的打开位置。
markdown.links.openLocation
有两个值:
currentGroup
- 在当前编辑器组中打开链接(默认)。beside
- 在当前 Markdown 编辑器的旁边打开链接。
当处理文档时,"markdown.links.openLocation": "beside"
可能很有用。
调试
改进的列断点 UI
调试时,VS Code 现在会内联显示所有断点候选位置。这使用户更容易在更准确的位置放置断点。为了不使 UI 混乱,仅当该行上有多个可能的位置时,才会显示候选断点。
您可以直接与内联断点交互;单击以启用和禁用它们,并调用它们的上下文菜单以执行更多操作。
请注意,此功能需要底层运行时或调试器的支持,我们预计将来只有少数调试扩展会使用此功能。在此版本中,Node Debug 和 Debugger for Chrome 支持此功能。作为扩展作者的示例,我们的 Mock Debug 示例“模拟”对此的支持。
调用堆栈视图中的内联调试操作
当调用堆栈视图中显示会话或线程时,我们现在会在悬停时内联显示调试操作。这将使在调试多个会话或线程时更容易控制调试流。您不再需要首先将焦点设置在会话或线程上才能对其执行操作。
如果会话只有一个线程,则所有操作都将显示在该会话上,因为不显示线程。否则,所有操作都会显示在其上下文中(会话操作在会话上,线程操作在线程上)。
改进的调用堆栈视图行为
我们改进了调用堆栈视图的功能
- 点击调试会话或线程不再展开它们。您必须直接点击折叠/展开箭头 (>) UI 元素。这可以防止您在只想移动焦点时意外展开会话或线程。
- 如果新的调试会话没有断点,VS Code 不再自动聚焦它们。
改进了调试控制台中的链接检测
VS Code 现在可以在调试控制台的表达式中检测链接,而不仅限于字符串输出。链接检测算法也得到了改进。
PreLaunchTask 现在可以引用默认构建
通过引入新的变量 ${defaultBuildTask}
,现在可以拥有一个通用的 preLaunchTask
,它始终引用默认的构建任务
{
"name": "Hello World",
"type": "node",
"request": "launch",
"preLaunchTask": "${defaultBuildTask}"
}
${defaultBuildTask}
解析为执行命令 **Tasks: Run Build Task** 时运行的任务的名称。与使用 **Run Build Task** 命令类似,如果存在多个默认构建任务,或者没有默认构建任务,则会显示一个快速选择器来选择构建任务。
保存 preLaunchTask 错误时的选择
现在,当出现 preLaunchTask
错误时,您可以使用 **记住我在用户设置中的选择** 复选框来记住您的选择。您的选择将存储在用户设置中,并带有 debug.onTaskErrors
,该设置可以有三个值:prompt
(默认)、debugAnyway
和 showErrors
。
扩展的贡献
远程开发(预览)
对远程开发扩展的工作仍在继续,这些扩展允许您使用容器、远程机器或Windows Linux 子系统(WSL)作为功能齐全的开发环境。
1.39 中的功能亮点包括
- 远程资源管理器现在支持 WSL 扩展,并允许您轻松连接到已安装的 Linux 发行版。
- 新的 **在容器卷中克隆存储库** 命令,以便您可以隔离处理源代码存储库。
- 对 SSH 连接共享以及使用 SSH 连接到 Windows 远程机器的实验性支持。
您可以在远程开发发行说明中了解新的扩展功能和错误修复。
您还可以阅读最近的两篇博客文章,其中描述了
预览功能
预览功能尚未准备好发布,但功能足够使用。我们欢迎您在开发过程中提供早期反馈。
TypeScript 3.7-beta 支持
尽管 VS Code 在正式发布之前不会捆绑 TypeScript 3.7,但我们一直在努力支持所有令人兴奋的新 TypeScript 3.7-beta 功能。
这些功能包括
- JavaScript 和 TypeScript 文件中可选链和空值合并的语法高亮显示。
- 可选链的完成支持。
- 使用新的
javascript.format.semicolons
和typescript.format.semicolons
设置控制分号。
您可以通过安装 TypeScript Nightly 扩展来轻松试用所有这些新的 TypeScript 3.7 功能。请分享反馈,并告知我们您是否遇到任何 TypeScript 3.7 beta 的错误!
扩展编写
扩展终端 API
扩展终端 API 已最终确定,允许扩展对终端输入做出反应并完全控制其输出。以下代码创建一个扩展终端并在启动时以红色打印“Hello world”
const writeEmitter = new vscode.EventEmitter<string>();
const pty: vscode.Pseudoterminal = {
onDidWrite: writeEmitter.event,
open: () => writeEmitter.fire('\x1b[31mHello world\x1b[0m'),
close: () => {}
};
vscode.window.createTerminal({ name: 'My terminal', pty });
有关更多详细信息,请参阅API 参考和extension-terminal-sample。
符号和完成的弃用标签
允许将完成项和符号标记为已弃用的符号标签 API 已最终确定。在 1.38 发行说明中了解更多信息。
在这里,您可以看到 Java 扩展正在使用 SymbolTag.Deprecated
来显示引用带有删除线的已弃用类型或成员的源代码。
调试会话名称不再是只读的
可以更改 DebugSession
的名称。调试会话的名称最初取自 DebugConfiguration
。任何更改都将正确地反映在 UI 中。
如果 Webview 未使用 Webview.asWebviewUri 获取本地资源,则发出警告
在开发使用 Webview API 的扩展时,如果您创建的 Webview 使用 vscode-resource:
URI 直接加载本地资源,而不是使用新的 Webview.asWebviewUri API,我们现在会记录一个警告。
尽管旧的 vscode-resource:
URI 将继续工作,但我们希望所有 Webview 扩展都迁移到 Webview.asWebviewUri
API,因为它是新的 API
- 处理了一些从网络驱动器加载本地资源的棘手边缘情况。
- 使 Webview 可以加载本地和远程内容的混合。
- 对于 VS Code 的 Web 版本,它将更可靠地工作。
TreeView 消息 API
用于在树视图中设置消息的 API 已最终确定。您可以在树视图扩展示例中看到如何使用消息 API 的示例。
更新的 Octicons 样式
我们更新了 Octicons 以匹配我们的新图标轮廓样式,以便我们所有的图标都保持一致。
SCM 文件夹菜单
更新的 SCM 视图现在支持将更改呈现为树。作为 SCM 提供程序,您可以使用 scm/resourceFolder/context
菜单 ID 为文件夹的菜单贡献命令。
语言服务器协议
语言服务器协议的3.15.0版本的规范可用。该版本尚未最终确定,因此欢迎在 语言服务器协议存储库中作为问题或拉取请求提供反馈。流式传输和进度报告支持已添加到下一版本的语言服务器协议中。节点服务器和 VS Code 客户端的实现分别可用作 [email protected]
和 [email protected]
。
调试适配器协议
取消支持
一个新的 cancel
请求已添加到调试适配器协议中,它可以向调试适配器提示前端客户端不再对之前发出的特定请求产生的结果感兴趣。
此请求具有提示特性:只能期望调试适配器在遵守此请求时尽“最大努力”,但不能保证。只有在定义了 supportsCancelRequest
功能并且其值为 true
时,前端客户端才可以调用此请求。
已取消的请求仍然需要发回响应。这可以是正常结果,也可以是错误响应。可以从已取消的请求返回部分结果,但请注意,前端客户端没有通用的方法来检测响应是否是部分的。
在 9 月版本中,VS Code 支持取消用于 stacktrace
、scopes
和 variables
请求(在 **CALL STACK** 和 **VARIABLES** 视图中使用)以及 completions
请求(在调试控制台中使用)。
请注意,截至 9 月,只有 Mock Debug 扩展实现了取消。
查找源范围内的可能断点
DAP 客户端可以使用新的 breakpointLocations
请求来查找给定源范围内的所有可能的断点位置。这可以在 UI 中使用,以提高“内联”(“列”)断点的可发现性。
只有在定义了 supportsBreakpointLocationsRequest
功能并且其值为 true
时,客户端才可以调用 breakpointLocations
请求。
提议的扩展 API
每个里程碑都附带新的建议 API,扩展作者可以尝试使用它们。与往常一样,我们渴望得到您的反馈。这是您必须执行的操作才能尝试使用建议的 API
- 您必须使用 Insiders,因为建议的 API 经常更改。
- 您必须在扩展的
package.json
文件中包含此行:"enableProposedApi": true
。 - 将最新版本的 vscode.proposed.d.ts 文件复制到项目源代码位置。
请注意,您不能发布使用建议的 API 的扩展。我们可能会在下一个版本中进行重大更改,并且我们永远不想破坏现有扩展。
vscode.env.uiKind
添加了一个新的建议 API vscode.env.uiKind
,它允许扩展确定正在使用哪种类型的 UI。为了准备支持在浏览器中运行 VS Code,可能的值为 UIKind.Desktop
和 UIKind.Web
。
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}`);
}
vscode.env.asExternalUri
目前仅支持 http:
和 https:
URI。如果扩展在客户端计算机上运行,则它是一个空操作。但是,如果扩展在远程运行,vscode.env.asExternalUri
会自动建立从本地计算机到远程计算机上的 target
的端口转发隧道,并返回隧道的本地 URI。
资源的只读 Webview 编辑器
您可以找到用于预览从着色器到 Excel 文件到 3D 模型的所有内容的 VS Code 扩展。一些大胆的扩展甚至为可视化编辑二进制文件或 XML 文件构建了复杂的编辑器式体验。虽然使用 VS Code 现有的扩展 API 已经可以实现所有这些,但构建预览或自定义编辑器目前需要以非直观的方式拼凑一堆 API。它还给扩展本身留下了很多工作,通常会导致用户体验与 VS Code 的其余部分不一致。 自定义编辑器 API 提案旨在改进这一点。
自定义编辑器 API 将为扩展提供一个框架,用于创建完全可定制的读/写编辑器,这些编辑器将取代 VS Code 的标准文本编辑器用于特定资源。例如,XAML 自定义编辑器可以为您的 .xaml
文件显示一个所见即所得样式的编辑器。我们的最终目标是在保持 VS Code 快速、精简和一致的同时,为扩展提供尽可能大的灵活性。
在此迭代中,我们分享自定义编辑器 API 提案的第一部分:基于 Webview 的只读自定义编辑器。您可以在此处找到自定义编辑器提案的概述。自定义编辑器已被用于支持 VS Code 内置的图像预览。
目前的提案只是第一步,很可能会进行大幅修改。我们将在未来几个月继续迭代自定义编辑器 API。
TreeView 标题
树视图标题一直取自扩展的 package.json
文件。现在,树视图标题最初取自 package.json
,但稍后可以更改。对 title
属性的更改将正确反映在 UI 中视图的标题中。
startDebugging consoleMode 选项用于合并调试控制台
为了更好地支持分层调试会话,我们向 vscode.debug.startDebugging
API 添加了一个可选参数 consoleMode
。此参数控制 VS Code 是否应合并父调试会话和子调试会话的调试控制台。例如,这对于集群调试特别有用,因为集群调试有许多子会话,如果所有调试会话都转到同一个调试控制台,则会更加简洁。
移除了已弃用的 Terminal.onDidWriteData API
已移除 Terminal.onDidWriteData
建议的 API,而改用全局事件 window.onDidWriteTerminalData
。
工程
网站刷新
我们更新了 Visual Studio Code 网站的图标和颜色,以更好地匹配我们的品牌。这反映在整个网站和 文档页面中。
通过 terser 进行 JavaScript 最小化
我们将用于产品构建的 JavaScript 最小化的最小化器更改为 terser。以前我们一直使用旧版本的 uglify-es
。terser 开发人员在采用过程中为我们提供了很大的帮助。
文件监视器更新 (Chokidar)
在此里程碑中,我们将 macOS 和 Linux 的文件监视器更新到 3.x
版本,该版本带来了更高的性能、更低的内存消耗和更小的软件包大小。您可以从 Chokidar 仓库和 Chokidar 3 博客文章中了解更多信息。
针对真实构建运行集成测试
我们的产品构建在构建过程中运行大型集成测试套件。以前,这些测试是针对源外运行的 VS Code 执行的。现在,这些测试使用 VS Code 的构建版本来验证构建是否已准备好发布。
使用 TypeScript 3.6 构建 VS Code
VS Code 核心和内置扩展现在使用 TypeScript 3.6 构建。
图像预览已移动到内置扩展
VS Code 的图像预览功能已从核心代码库移出,并放入内置的图像预览扩展中。图像预览的功能应与以前几乎完全相同。
将图像预览提取到内置扩展中,可以更轻松地修复错误和添加功能,并且最终允许扩展更容易地覆盖 VS Code 的内置图像预览。
此更改是通过我们在本次迭代中完成的自定义编辑器 API 工作启用的。
新文档
Node.js 部署教程
Node.js 部署教程已移至 learn.microsoft.com 上的 Azure JavaScript 开发人员中心。
在那里,您可以找到使用 Visual Studio Code 的教程,用于
值得注意的修复
- 78984:触摸在“建议”小部件中不起作用
- 79196:调试控制台以错误的顺序显示 REPL 结果和 console.log 输出
- 80003:常规断点没有标题工具提示
- 55106:如果至少有一个会话验证了断点,则断点显示为已验证
- 80435:请允许我隐藏资源管理器侧边栏中的空文件夹部分
- 80464:来自 SetVariable 请求的失败消息未显示
- 80402:调试 UI 在调试会话结束时不清理微调器
- 82047:用于指示远程名称的新标题变量
感谢
最后但同样重要的是,非常感谢以下人员为使 VS Code 变得更好所做的贡献!
对我们的问题跟踪的贡献
- John Murray (@gjsjohnmurray)
- Andrii Dieiev (@IllusionMH)
- Alexander (@usernamehw)
- ArturoDent (@ArturoDent)
如果您想帮助我们管理传入的问题,请参阅我们的社区问题跟踪页面。
对 vscode
的贡献
- Andrew Branch (@andrewbranch):[typescript-language-features] 添加分号的格式化选项 PR #80828
- Arash Arbabi (@ATheCoder):修复:#81077 PR #81156
- Christian Oliff (@coliff):到 ux.stackexchange.com 的 HTTPS 链接 PR #80255
- David Reis (@davidreis97):在建议小部件上添加对触摸事件的支持 (修复 #78984) PR #81442
- Dmitry Gozman (@dgozman)
- 直接从 ReplModel 触发 onDidChangeReplElements PR #81392
- 改进 LinkDetector PR #81336
- 将 REPL 计算与其结果分离;修复 #79196 PR #80422
- 修复 #80014 PR #80071
- 将 REPL 中的变量值链接化;#79198 PR #80502
- 使 DebugSession.name 可写;修复 #79583 PR #80122
- 允许调试会话与其父级共享 REPL;修复 #62419 PR #80673
- 使 DebugSession.loadSource 适用于非缓存源,请参阅 #79228 PR #80669
- @ElasticPencil:readOnly 编辑器在 textArea 中不遵守 readonly PR #81394
- @harujii:将 Yu Gothic UI 添加到字体系列 jp PR #79735
- Xueping (@Heromyth):为 CPP 添加 .c++ 扩展支持 PR #80187
- Andrii Dieiev (@IllusionMH)
- Jason Ginchereau (@jasongin):将冒烟 UI 自动化重构为单独的软件包 PR #80293
- Jean Pierre (@jeanp413)
- @KapitanOczywisty:修复 HTML 样式标签中的 PHP PR #80657
- Kimmo Lehto (@kke):修复 terminalProcess 中的错字“exectuableVerification” PR #81165
- Lars Hvam (@larshp):editor, modes.ts: 文档,修复断开的链接 PR #81606
- Jiaxun Wei (@LeuisKen):chore: 更新 tsc 目标 PR #80050
- @navrkald:如果设置了环境变量 DONT_PROMPT_WSL_INSTALL,则跳过 WLS 检查。 PR #80529
- @pi1024e:错别字修复:disposables PR #80154
- Ron Buckton (@rbuckton):修复以允许在补全中使用可选链接令牌 PR #81402
- Lionell Pack (@Rophuine):将触摸事件添加到小地图 PR #81097
- Sergio Schvezov (@sergiusens)
- Fuchen Shi (@shifuchen98): 修复批量替换弹出窗口中的拼写错误 PR #81572
- Prabhanjan S Koushik (@skprabhanjan)
- Konstantin Solomatov (@solomatov)
- Salvador Cabrera Lozano (@txava): 修复 #26659。 PR #80227
- Alexander (@usernamehw): 更新构造函数中状态栏项目的启用 PR #80517
- Dipen Ved (@vedipen): 修复保存所有和提交 PR #81609
- Yuya Tanaka (@ypresto): 修复问题视图中的 Cmd+F 键被编辑器中的查找劫持的问题 PR #80068
对 vscode-eslint
的贡献
- Rafał Chłodnicki (@rchl): 修复 publishDiagnostics 消息中的 None 位置值 PR #753
- Wil Lee (@kourge): 将
typescriptreact
添加到 README 的 TypeScript 部分 PR #764
对 vscode-languageserver-node
的贡献
- Jason Dent (@Jason3S): 将 isPreferred 添加到 CodeAction 协议。 PR #489
- Thomas Mäder (@tsmaeder): PR #512
- Adam Yarris (@RubbaBoy): 修复 README 中的死链接 PR #834
对 language-server-protocol
的贡献
- Krzysztof Cieślak (@Krzysztof-Cieslak): 将 DiagnosticTag 添加到文档中 PR #645
- Remy Suen (@rcjsuen): 修复 #375 添加更多格式化选项 PR #735
- Danny Tuppeny (@DanTup): 删除 workspace/symbol 的“非空字符串”注释 PR #770
- Mickael Istria (@mickaelistria): Issue #782 - InitializationParams.clientName PR #783
- Roberto Aloi (@robertoaloi): 将 Erlang 和 Elixir 添加到支持的编程语言列表中 PR #812
- @KamasamaK: 添加了 SignatureHelpContext PR #805
- Eyal Kalderon (@ebkalderon): 修复 gh-pages 中的拼写错误 PR #820
对 debug-adapter-protocol
的贡献
- Pahan Sarathchandra (@pahans): 添加 Ballerina 调试适配器 PR #77
对 vscode-debugadapter-node
的贡献
- Damjan Cvetko (@zobo): 修复 terminateThreadsRequest 的错误签名 PR #214
- Holger Benl (@hbenl): 将数据断点请求添加到 testSupport 中 PR #219
对 vscode-css-languageservice
的贡献
- Simon Siefke (@SimonSiefke): 修复拼写错误 PR #179
对 vscode-vsce
的贡献
- Sumesh Majhi ⚡ (@MajhiRockzZ): 更新 README.md PR #387
对 localization
的贡献
有超过 800 名 Cloud + AI 本地化 社区成员正在使用 Microsoft 本地化社区平台 (MLCP),其中有大约 100 名活跃的 Visual Studio Code 贡献者。 我们感谢您通过提供新的翻译、对翻译进行投票或提出流程改进建议所做的贡献。
这是 贡献者 的快照。有关该项目的详细信息,包括贡献者姓名列表,请访问项目站点 https://aka.ms/vscodeloc。
- 丹麦语: Mark Drastrup, Lasse Stilvang.
- 荷兰语: Niels ter Haar, Laurens Kwanten.
- 英语(英国): Martin Littlecott, s.benson, sonali Dixit.
- 芬兰语: Kiti Suupohja, Tommi Finnilä.
- 法语: Thierry DEMAN-BARCELÒ, Maxime Coquerel, Antoine Griffard, Rodolphe NOEL, DJ Dakta.
- 德语: Christof Opresnik.
- 希腊语: Θοδωρής Τσιρπάνης.
- 希伯来语: Yonatan Bachar, Snir Broshi.
- 印地语: mtar05, निरव आडतिया, Amit Gusain, Degant Puri.
- 简体中文: Justin Liu, Yizhi Gu, paul cheung, yungkei fan, 斌 项, Yiting Zhu, 一斤瓜子, Tianzhi Zeng, cool yang, Peng Zeng, Y!an, Joel Yang, 楠 姜, 建 周.
- 繁体中文: Winnie Lin, 蔡牧村, 謝政廷, Yi-Jyun Pan, Poy Chang.
- 印尼语: Eriawan Kusumawardhono, Riwut Libinuko, William Surya Permana, Septian Adi, Laurensius Dede Suhardiman.
- 意大利语: Luigi Bruno, Alessandro Alpi, Claudio Mezzasalma, Marco Dal Pino.
- 日语: Michihito Kumamoto, Hiroyuki Mori, Aya Tokura, 井上 圭司, Yuzo Konishi, Yoshihisa Ozaki, Kogesaka, Yuta Ojima, TENMYO Masakazu, Koichi Makino, Takayuki Fuwa.
- 韩语: Hongju, Sungjin Jeong, Seikwang Chung.
- 拉脱维亚语: Andris Vilde.
- 立陶宛语: Renatas Laužadis.
- 波兰语: Kacper Łakomski.
- 葡萄牙语(巴西): Marcelo Fernandes, Marcondes Alexandre, Felipe Oliveira, Alan Bueno.
- 葡萄牙语(葡萄牙): Pedro G..
- 罗马尼亚语: Mihail-Gabriel Alexe.
- 俄语: konpl.
- 西班牙语: José María Aguilar, Abdón Rodríguez P., Ricardo Estrada Rdez, Anix Cormak, Carlos Mendible.
- 泰米尔语: Rajeshkumar Ramasamy.
- 土耳其语: Safa Selim.
- 乌克兰语: Oleksandr Krasnokutskyi, Arthur Murauskas.
- 越南语: Vương, Van-Tien Hoang, Hai Nguyen, Tuan Duong.