Skip to content

Commit 1d1caee

Browse files
committed
新增 插件开发 when表达式增加isMac、isWindows、editorHasSelection;并支持声明绑定快捷键
1 parent be32f46 commit 1d1caee

File tree

1 file changed

+39
-18
lines changed

1 file changed

+39
-18
lines changed

ExtensionDocs/ContributionPoints/README.md

Lines changed: 39 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,23 @@ commands扩展点用于声明一个`命令`,`命令`可以通过`menus`扩展
5757
}
5858
```
5959

60+
### keybindings
61+
62+
keybindings扩展点用于声明快捷键绑定.
63+
64+
#### 示例
65+
66+
```json
67+
"keybindings":[
68+
{
69+
"command":"extension.firstExtension", // command为您开发的插件中的command
70+
"key":"Ctrl+Shift+C", // key为要绑定的快捷键
71+
"when":"", // when表达式用来动态的判断某个条件是否满足,强烈建议设置此项。
72+
"macosx":"command+Shift+C" // MacOSX系统的快捷键;如不设置此项,MacOSX系统,会将key中的ctrl转为command
73+
}
74+
]
75+
```
76+
6077
### snippets
6178
snippets扩展点可以扩展指定编程语言的代码块,可扩展的编程语言Id列表见[这里](/ExtensionDocs/Api/README.md#languageId)。扩展示例代码如下:
6279

@@ -112,11 +129,13 @@ snippets扩展点可以扩展指定编程语言的代码块,可扩展的编程
112129

113130
### viewsContainers
114131
在窗体左侧区域扩展一个和项目管理器同级的tab项,完整的扩展视图流程参考[如何注册一个新的视图?](/views.md)
132+
115133
#### 属性列表
116134
|属性名称 |属性类型 |是否必须 |描述 |
117135
|-- |-- |-- |-- |
118136
|activitybar|Array<[ViewsContainerDef](#ViewsContainerDef)> |不是 |定义扩展的视图容器列表,可在菜单`视图`-`显示扩展视图`中查看打开|
119137
|rightside|Array<[ViewsContainerDef](#ViewsContainerDef)> |不是|定义扩展的视图容器列表,可在菜单`视图`-`显示扩展视图`中查看打开|
138+
120139
#### 示例
121140
```json
122141
"contributes": {
@@ -388,24 +407,26 @@ when表达式用来动态的判断某个条件是否满足(即表达式的运算
388407

389408
目前HBuilderX内置变量列表如下:
390409

391-
|变量名 |类型 |描述 |
392-
|-- |-- |-- |
393-
|workspaceFolderRelativePath |String |相对于项目的相对路径,举例: pages/user/user.vue |
394-
|workspaceRelativePath |String |相对于项目的相对路径(加上项目名称),举例: HelloUniapp/pages/user/user.vue |
395-
|workspaceFolder.type |String |项目类型,可取值:UniApp_Vue,Web,App,Wap2App,Extension,Unkown |
396-
|explorerResourceCount |Number |项目管理器选中的资源数量 |
397-
|explorerResourceIsFolder |Boolean|项目管理器选中的资源是否全是目录 |
398-
|explorerResourceIsWorkspaceFolder |Boolean|项目管理器选中的资源是否全是项目根目录 |
399-
|isSVN |Boolean|是否是SVN仓库下的文件 |
400-
|isGit |Boolean|是否是Git仓库下的文件 |
401-
|activeEditor.file.exists |Boolean|当前激活的编辑器打开的文件是否存在 |
402-
|activeEditor.file.isProjectFile |Boolean|当前激活的编辑器打开的文件是否是左侧项目管理器下的文件 |
403-
|activeEditor.readonly |Boolean|当前激活的编辑器是否是只读 |
404-
|editorTextFocus |Boolean|当前激活的编辑器是否有焦点 |
405-
|langId |String |当前激活的编辑器打开的文档的编程语言id,完整语言Id列表参见[这里](/ExtensionDocs/Api/README.md#languageId) |
406-
|viewItem |String |通过`views`扩展的视图中当前选择的item的contextValue |
407-
|config.* |Any |获取某个配置项的值,例子: `config.editor.fontSize` |
408-
410+
|变量名 |类型 |描述 |
411+
|-- |-- |-- |
412+
|workspaceFolderRelativePath |String |相对于项目的相对路径,举例: pages/user/user.vue |
413+
|workspaceRelativePath |String |相对于项目的相对路径(加上项目名称),举例: HelloUniapp/pages/user/user.vue |
414+
|workspaceFolder.type |String |项目类型,可取值:UniApp_Vue,Web,App,Wap2App,Extension,Unkown |
415+
|explorerResourceCount |Number |项目管理器选中的资源数量 |
416+
|explorerResourceIsFolder |Boolean|项目管理器选中的资源是否全是目录 |
417+
|explorerResourceIsWorkspaceFolder|Boolean|项目管理器选中的资源是否全是项目根目录 |
418+
|isSVN |Boolean|是否是SVN仓库下的文件 |
419+
|isGit |Boolean|是否是Git仓库下的文件 |
420+
|activeEditor.file.exists |Boolean|当前激活的编辑器打开的文件是否存在 |
421+
|activeEditor.file.isProjectFile |Boolean|当前激活的编辑器打开的文件是否是左侧项目管理器下的文件 |
422+
|activeEditor.readonly |Boolean|当前激活的编辑器是否是只读 |
423+
|editorTextFocus |Boolean|当前激活的编辑器是否有焦点 |
424+
|langId |String |当前激活的编辑器打开的文档的编程语言id,完整语言Id列表参见[这里](/ExtensionDocs/Api/README.md#languageId)|
425+
|viewItem |String |通过`views`扩展的视图中当前选择的item的contextValue |
426+
|config.* |Any |获取某个配置项的值,例子: `config.editor.fontSize` |
427+
|isMac |Boolean|当前电脑操作系统是否是MacOSX(仅对HBuilderX3.2.22+版本生效) |
428+
|isWindows |Boolean|当前电脑操作系统是否是Windows(仅对HBuilderX3.2.22+版本生效) |
429+
|editorHasSelection |Boolean|当前激活的编辑器是否有选中的内容 (仅对HBuilderX3.2.22+版本生效) |
409430

410431
### customEditors
411432
插件可以通过该扩展点扩展多个不同类型的自定义编辑器,自定义编辑器可以设置文件匹配模式,用户通过项目管理器打开的文件匹配到某一类型时,在编辑器区域创建webview视图,关联打开的文件。完整的扩展自定义编辑器流程参考[如何扩展一个自定义编辑器?](/ExtensionTutorial/customeditor)

0 commit comments

Comments
 (0)