Skip to content

Commit 6b140dc

Browse files
committedSep 22, 2021
更新了 外部链接文档翻译 的一些内容,更改了一些语言扩展的翻译文档的错误
1 parent 02852be commit 6b140dc

23 files changed

+1764
-55
lines changed
 

‎README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
* 术语翻译错误
1919
* 句子、语段逻辑不清晰/语序不符合日常用语
2020
* 应该空格的地方没有空格【翡翠为了阅读的舒适性,遵循:
21-
* 除中文标点符号以外,其他的字符后连接英文单词时在之间添加一个空格
21+
* 除中文标点符号以外,其它的字符后连接英文单词时在之间添加一个空格
2222
* 英文单词部分结束后,与之后的内容之间添加一个空格
2323
* 长句子中,为了避免过长的内容造成阅读理解困难,在其中的 名词词组 首尾各添加一个空格
2424

‎文档/VS Code 官方文档/1-概述/1-扩展API-概述.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@
8888
* **语言扩展** —— 包括说明了如何添加对一种编程语言的支持的指导和代码示例。
8989
* **测试与发布** —— 包括对各种扩展开发文章的深入指导,比如 [测试](https://code.visualstudio.com/api/working-with-extensions/testing-extension)[发布](https://code.visualstudio.com/api/working-with-extensions/publishing-extension) 扩展。
9090
* **高级文章** —— 解释了如 [扩展 host](https://code.visualstudio.com/api/advanced-topics/extension-host)[支持远程开发和 Github 代码空间](https://code.visualstudio.com/api/advanced-topics/remote-extensions)[计划中的API](https://code.visualstudio.com/api/advanced-topics/using-proposed-api) 等高级概念。
91-
* **参考资料** —— 包括对 [VS Code API](https://code.visualstudio.com/api/references/vscode-api)[作用点](https://code.visualstudio.com/api/references/contribution-points) 以及许多其他文章的详尽参考资料
91+
* **参考资料** —— 包括对 [VS Code API](https://code.visualstudio.com/api/references/vscode-api)[作用点](https://code.visualstudio.com/api/references/contribution-points) 以及许多其它文章的详尽参考资料
9292

9393
## 更新了什么内容?
9494

‎文档/VS Code 官方文档/2-入门/1-扩展API-入门-你的第一个扩展.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ code ./helloworld
148148

149149
下一篇文章中 [扩展剖析](https://code.visualstudio.com/api/get-started/extension-anatomy) 中,我们将细说 `Hello World` 例子的源代码,并解释关键概念。
150150

151-
你可以在 [这里](https://github.com/microsoft/vscode-extension-samples/tree/main/helloworld-sample) 找到本教程的源代码。 [扩展指导](https://code.visualstudio.com/api/extension-guides/overview) 文章中包含其他例子,每个都展示了不同的 **扩展API****作用点** ,也遵循我们的 [扩展准则](https://code.visualstudio.com/api/references/extension-guidelines)
151+
你可以在 [这里](https://github.com/microsoft/vscode-extension-samples/tree/main/helloworld-sample) 找到本教程的源代码。 [扩展指导](https://code.visualstudio.com/api/extension-guides/overview) 文章中包含其它例子,每个都展示了不同的 **扩展API****作用点** ,也遵循我们的 [扩展准则](https://code.visualstudio.com/api/references/extension-guidelines)
152152

153153
### 使用 **JavaScript**
154154

‎文档/VS Code 官方文档/2-入门/2-扩展API-入门-扩展剖析.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@
138138

139139
扩展入口文件会导出两个函数: `activate`(激活)和 `deactivate`(停用)。 `activate` 在你注册了的 **激活事件** 发生的时候执行。 `deactivate` 让你有机会在扩展被停用前进行清理。对于很多扩展来说,可能并不需要进行显式清理, `deactivate` 在这种情况下也不需要,可以移除。但是如果扩展需要在 **VS Code** 关闭时,或者扩展被禁用、卸载时执行操作,那就需要使用 `deactivate` 了。
140140

141-
**VS Code 扩展API**[@types/vscode](https://www.npmjs.com/package/@types/vscode) 类型定义中声明。 `vscode` 类型定义的版本是由 `package.json``engines.vscode` 域中的值控制的。 `vscode` 类型在你代码中提供 智能感知提示、转到定义,以及其他的 **TypeScript** 语言功能。
141+
**VS Code 扩展API**[@types/vscode](https://www.npmjs.com/package/@types/vscode) 类型定义中声明。 `vscode` 类型定义的版本是由 `package.json``engines.vscode` 域中的值控制的。 `vscode` 类型在你代码中提供 智能感知提示、转到定义,以及其它的 **TypeScript** 语言功能。
142142

143143
> `extension.ts` 的文件内容
144144

‎文档/VS Code 官方文档/3-扩展功能/4-扩展API-扩展功能-扩展工作台.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838

3939
* **活动栏** —— [Azure App 服务扩展](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azureappservice) 添加了一个 [视图容器](https://code.visualstudio.com/api/extension-capabilities/extending-workbench#view-container)
4040
* **侧边栏** —— 内置的 [NPM extension](https://github.com/microsoft/vscode/tree/main/extensions/npm) 在 资源管理器视图 里添加了一个 [树视图](https://code.visualstudio.com/api/extension-capabilities/extending-workbench#tree-view)
41-
* **编辑器组** —— 内置的 [Markdown 扩展](https://github.com/microsoft/vscode/tree/main/extensions/markdown-language-features) 在 编辑器组里,其他编辑器的旁边,添加了一个 [Webview](https://code.visualstudio.com/api/extension-capabilities/extending-workbench#webview)
41+
* **编辑器组** —— 内置的 [Markdown 扩展](https://github.com/microsoft/vscode/tree/main/extensions/markdown-language-features) 在 编辑器组里,其它编辑器的旁边,添加了一个 [Webview](https://code.visualstudio.com/api/extension-capabilities/extending-workbench#webview)
4242
* **状态栏** —— [VSCodeVim 扩展](https://marketplace.visualstudio.com/items?itemName=vscodevim.vim) 在状态栏里添加了一个 [状态栏项目](https://code.visualstudio.com/api/extension-capabilities/extending-workbench#status-bar-item)
4343

4444
## 视图容器

‎文档/VS Code 官方文档/4-扩展指导/1-扩展API-扩展指导-概述.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
|可主题化的|themable|
2020
|国际化(i18n)【奇怪的缩写增加了,如果是大写的话,首字母是I不是L,这个词是因为原来的单词比较长,所以取了首尾字母,中间的18是中间的字符数,真有你们的.jpg】|internationalization|
2121
|终端|terminal|
22-
|语言服务器协议(LSP)【特别注明,LSP这个缩写在计算机领域还有其他意思,避免混淆】|Language Server Protocol|
22+
|语言服务器协议(LSP)【特别注明,LSP这个缩写在计算机领域还有其它意思,避免混淆】|Language Server Protocol|
2323

2424
表中部分:
2525

‎文档/VS Code 官方文档/4-扩展指导/2-扩展API-扩展指导-命令.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
## 使用命令
3838

39-
**VS Code** 有一大堆 [内置命令](https://code.visualstudio.com/api/references/commands) ,可以让你用于 和编辑器交互、控制 UI, 或者执行后台操作。许多扩展也把它们的核心功能暴露为命令,让用户和其他扩展可以利用
39+
**VS Code** 有一大堆 [内置命令](https://code.visualstudio.com/api/references/commands) ,可以让你用于 和编辑器交互、控制 UI, 或者执行后台操作。许多扩展也把它们的核心功能暴露为命令,让用户和其它扩展可以利用
4040

4141
### 以编程方式执行命令
4242

@@ -204,7 +204,7 @@ export function activate(context: vscode.ExtensionContext) {
204204
* 可以从命令面板调用
205205
* 可以用快捷键调用
206206
* 可以通过 **VS Code** UI调用,比如通过编辑器的标题栏
207-
* 被作为一个让其他的扩展使用的 API
207+
* 被作为一个让其它的扩展使用的 API
208208

209209
### 控制命令应该在何时出现在命令面板中
210210

@@ -233,7 +233,7 @@ export function activate(context: vscode.ExtensionContext) {
233233

234234
命令支持通过设置 `enablement`(启用) 属性来管理启用,`enablement`(启用) 的值是一个 [when 条件判断语句](https://code.visualstudio.com/api/references/when-clause-contexts) 。设置后启用属性将被应用到所有菜单和注册了的键位绑定。
235235

236-
> ****`enablement`(启用) 和 菜单项的 `when` 条件 存在语义重叠。后者用于防止菜单全是不可用的项目。比如,一个用来分析 JavaScript 正则表达式的扩展,只应该 **when(当)** 文件是 JavaScript 时 才显示,而只有在光标在正则表达式的时候才 **enabled(启用)** 。这里, `when` 条件判断语句通过 但处于其他语言的文件中,不显示命令 来防止了混乱。强烈建议防止菜单变得乱七八糟的。
236+
> ****`enablement`(启用) 和 菜单项的 `when` 条件 存在语义重叠。后者用于防止菜单全是不可用的项目。比如,一个用来分析 JavaScript 正则表达式的扩展,只应该 **when(当)** 文件是 JavaScript 时 才显示,而只有在光标在正则表达式的时候才 **enabled(启用)** 。这里, `when` 条件判断语句通过 但处于其它语言的文件中,不显示命令 来防止了混乱。强烈建议防止菜单变得乱七八糟的。
237237
238238
最后,菜单中显示的命令,像 命令面板 或者 上下文菜单 一样,以不同的方法实现了处理 是否启用命令。编辑器 和 资源管理器 的上下文菜单会在命令面板过滤命令时,对应地渲染菜单项的启用/禁用。
239239

‎文档/VS Code 官方文档/4-扩展指导/3-扩展API-扩展指导-颜色主题.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@
6767

6868
## 语义颜色
6969

70-
**VS Code** 的 1.43 发布版本之后, TypeScript 和 JavaScript 便可以使用语义突出显示了。我们期待这在不久之后可以扩展到其他语言中
70+
**VS Code** 的 1.43 发布版本之后, TypeScript 和 JavaScript 便可以使用语义突出显示了。我们期待这在不久之后可以扩展到其它语言中
7171

7272
语义高亮丰富了语法高亮,它基于语言服务中的符号信息,对正在处理的项目有更完全的理解。在语言服务器开始运行,并计算出了语义标记后,语义高亮就会生效并显示出不同的颜色。
7373

‎文档/VS Code 官方文档/4-扩展指导/6-扩展API-扩展指导-树视图API.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898

9999
第二步,向你注册的视图提供数据,让 **VS Code** 能在其中显示这些数据的内容。
100100

101-
要做到这一点,你应该实现 [树的数据提供程序](https://code.visualstudio.com/api/references/vscode-api#TreeDataProvider) 。在这个例子中,它会提供 **Node** 依赖 的数据,但是之后你可以让 数据提供程序 提供其他类型的数据
101+
要做到这一点,你应该实现 [树的数据提供程序](https://code.visualstudio.com/api/references/vscode-api#TreeDataProvider) 。在这个例子中,它会提供 **Node** 依赖 的数据,但是之后你可以让 数据提供程序 提供其它类型的数据
102102

103103
在这个 API 中,你需要实现两个必要的方法:
104104

@@ -226,7 +226,7 @@ class Dependency extends vscode.TreeItem {
226226
);
227227
```
228228

229-
* `vscode.window.createTreeView`(vscode.窗口.创建树视图) —— 通过提供 已经注册的视图ID 和 上面的数据提供程序,来创建树视图。这种方法会提供到 [树视图](https://code.visualstudio.com/api/references/vscode-api#TreeView) 的访问权限,你可以用它来执行其他视图操作。如果你需要使用 树视图API 的话,请用这个 `createTreeView`(创建树视图) 的方法。
229+
* `vscode.window.createTreeView`(vscode.窗口.创建树视图) —— 通过提供 已经注册的视图ID 和 上面的数据提供程序,来创建树视图。这种方法会提供到 [树视图](https://code.visualstudio.com/api/references/vscode-api#TreeView) 的访问权限,你可以用它来执行其它视图操作。如果你需要使用 树视图API 的话,请用这个 `createTreeView`(创建树视图) 的方法。
230230

231231
```typescript
232232
vscode.window.createTreeView('nodeDependencies', {
@@ -398,8 +398,8 @@ export function activate(context: vscode.ExtensionContext) {
398398

399399
|字段名|翻译|字段含义|
400400
|----|----|----|
401-
|`view/title`|视图/标题|在视图的标题中显示 操作。主要操作 或者 内联操作 使用 `"group": "navigation"`(组别:导航) ,其他的是次要操作,会显示在 `...` 菜单中。|
402-
|`view/item/context`|视图/项目/上下文|在树项目中显示 操作。内联操作 使用 `"group": "inline"`(组别:内联) ,其他的是次要操作,会显示在 `...` 菜单中。|
401+
|`view/title`|视图/标题|在视图的标题中显示 操作。主要操作 或者 内联操作 使用 `"group": "navigation"`(组别:导航) ,其它的是次要操作,会显示在 `...` 菜单中。|
402+
|`view/item/context`|视图/项目/上下文|在树项目中显示 操作。内联操作 使用 `"group": "inline"`(组别:内联) ,其它的是次要操作,会显示在 `...` 菜单中。|
403403

404404
你可以用 [when 条件判断语句](https://code.visualstudio.com/api/references/when-clause-contexts) 来控制这些 操作 的可见性。
405405

‎文档/VS Code 官方文档/4-扩展指导/7-扩展API-扩展指导-WebviewAPI.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -477,7 +477,7 @@ function updateWebviewForCat(panel: vscode.WebviewPanel, catName: keyof typeof c
477477

478478
## 加载本地内容
479479

480-
出于安全原因,Webview 运行在一个隔离的环境中,不能直接访问本地资源。这意味着,要想从你的扩展加载 图像、CSS ,或者其他资源,或者是想从用户的当前工作区中加载任何内容的话,你必须使用 `Webview.asWebviewUri`(Webview.作为 Webview URI) 函数来把一个本地的 `file:` URI 转换成一个 能被 **VS Code** 用来加载本地资源的子集 的 特殊格式 URI 。
480+
出于安全原因,Webview 运行在一个隔离的环境中,不能直接访问本地资源。这意味着,要想从你的扩展加载 图像、CSS ,或者其它资源,或者是想从用户的当前工作区中加载任何内容的话,你必须使用 `Webview.asWebviewUri`(Webview.作为 Webview URI) 函数来把一个本地的 `file:` URI 转换成一个 能被 **VS Code** 用来加载本地资源的子集 的 特殊格式 URI 。
481481

482482
想象一下,我们现在要把我们的 猫猫gif 打包到我们的扩展中,而不是像之前一样从网络来获取它们。要做到这点,我们先创建一个 到存储驱动器上的文件的 URI ,然后将这些 URI传递给 `asWebviewUri`(作为Webview URI) 函数:
483483

@@ -522,7 +522,7 @@ vscode-resource:/Users/toonces/projects/vscode-cat-coding/media/cat.gif
522522
* 在你的扩展的安装目录中的
523523
* 在用户的当前活跃的工作区中的
524524

525-
`WebviewOptions.localResourceRoots`(Webview 选项.本地资源根源) 来允许对其他本地资源的访问
525+
`WebviewOptions.localResourceRoots`(Webview 选项.本地资源根源) 来允许对其它本地资源的访问
526526

527527
你也可以一直用 数据 URI 来直接把资源嵌入到 Webview 中。
528528

@@ -767,7 +767,7 @@ function getWebviewContent() {
767767

768768
### 从 Webview 向 扩展 传递消息
769769

770-
Webview 也可以把消息传回它所属的扩展。 这是通过在 Webview 中将 `postMessage`(发送消息) 函数用作一个特殊的 **VS Code** 扩展API 对象 来实现的。要访问 **VS Code** 扩展API 对象的话,在 Webview 中调用 `acquireVsCodeApi`(获取 VS Code 扩展 API) 即可。这个函数在每个会话中只能被调用一次。你必须保留这个方法返回的 **VS Code** 扩展API 实例,并且把它分发给任何需要它的其他函数
770+
Webview 也可以把消息传回它所属的扩展。 这是通过在 Webview 中将 `postMessage`(发送消息) 函数用作一个特殊的 **VS Code** 扩展API 对象 来实现的。要访问 **VS Code** 扩展API 对象的话,在 Webview 中调用 `acquireVsCodeApi`(获取 VS Code 扩展 API) 即可。这个函数在每个会话中只能被调用一次。你必须保留这个方法返回的 **VS Code** 扩展API 实例,并且把它分发给任何需要它的其它函数
771771

772772
我们可以在我们的 **CatCoding(猫猫敲代码)** Webview 里使用 **VS Code** 扩展API ,并通过 `postMessage`(发送消息) 来在 当我们的猫猫在它的代码里引入一个 bug 时,向扩展发送警告:
773773

@@ -905,7 +905,7 @@ function getWebviewContent() {
905905

906906
可以考虑用一个辅助库来构建你的 HTML 字符串,或者至少确保用户工作区中的所有内容都经过了适当的筛选整理。
907907

908-
但是绝对不要只单独依靠筛选整理来保证安全。确保遵循其他安全方面的最佳实践,比如添加 [内容安全策略](https://code.visualstudio.com/api/extension-guides/webview#content-security-policy) 来最小化潜在的内容注入的影响。
908+
但是绝对不要只单独依靠筛选整理来保证安全。确保遵循其它安全方面的最佳实践,比如添加 [内容安全策略](https://code.visualstudio.com/api/extension-guides/webview#content-security-policy) 来最小化潜在的内容注入的影响。
909909

910910
## 持续性
911911

@@ -1030,6 +1030,6 @@ function getWebviewContent() {
10301030

10311031
![保持持续](img/保持持续.gif)
10321032

1033-
发现没?当 Webview 被隐藏然后恢复的时候,计数器没有重置,不需要额外的代码!使用 `retainContextWhenHidden`(当隐藏时保持环境) 时,Webview 表现得就像网络浏览器中的后台选项卡。脚本和其他动态内容会暂停,但是当它恢复可见时会立刻继续。但是你不能向一个隐藏的 Webview 发送消息,即使当启用了 `retainContextWhenHidden`(当隐藏时保持环境) 时也不行。
1033+
发现没?当 Webview 被隐藏然后恢复的时候,计数器没有重置,不需要额外的代码!使用 `retainContextWhenHidden`(当隐藏时保持环境) 时,Webview 表现得就像网络浏览器中的后台选项卡。脚本和其它动态内容会暂停,但是当它恢复可见时会立刻继续。但是你不能向一个隐藏的 Webview 发送消息,即使当启用了 `retainContextWhenHidden`(当隐藏时保持环境) 时也不行。
10341034

1035-
虽然 `retainContextWhenHidden`(当隐藏时保持环境) 可能很吸引人,但是记住这会造成很高的内存消耗,仅应在其他保持状态的方法行不通的时候再考虑
1035+
虽然 `retainContextWhenHidden`(当隐藏时保持环境) 可能很吸引人,但是记住这会造成很高的内存消耗,仅应在其它保持状态的方法行不通的时候再考虑

0 commit comments

Comments
 (0)