🍁 自动补全
大约 1 分钟
自动补全
1. base、cell方法自动补全


2. client 方法自动补全

base、cell、客户端方法补全均支持调用组件方法,例:
self.component1.test()
self.component3.hello()
self.base.component1.test()
self.cell.component3.hello()
self.client.component3.helloCB()
3. def 文件 tag 自动补全
- def基础标签自动补全
- Properties
- ClientMethods
- BaseMethods
- ......
- 参数类型补全,支持自定义参数,会自动匹配Types.xml
- 新建base/cell函数补全,补全中会提示对应py文件中定义过的函数,选择并生成即可
符号跳转
base/cell/client 跳转符号定义处,支持Components,当按住ctrl并鼠标左键点击函数/成员时,会自动跳转到定义处,例如:
self.client.component3.helloCB()
:component3
-> 跳转至def ComponentshelloCB
-> 跳转至def Components ClientMethods
self.cell.component3.hello()
:component3
-> 跳转至def Componentshello
-> 跳转至cell.components.TestNoBase.hello函数
文件映射

- 点击DEF文件中root旁的ico,可跳转到对应的py文件
- 点击Python文件中 class / def 旁的ico,可跳转到对应的DEF文件中的定义处
函数生成
DEF文件下的 CellMethods
和 BaseMethods
,选择一个methodItem,在其上下文操作中选择生成Python函数
,插件会自动在对应的文件中创建新函数


类型映射
为KBE基础类型提供类型映射
<Properties>
<roleType>
<Type>UINT8</Type>
<Flags>BASE</Flags>
<Persistent>true</Persistent>
</roleType>
</Properties>

如图所示,roleType已被识别为int
基础类型对照表
类型名 | PY类型 |
---|---|
UINT8 | Int |
INT8 | Int |
FLOAT | Float |
DOUBLE | Float |
VECTOR2 | x |
VECTOR3 | x |
VECTOR4 | x |
STRING | String |
UNICODE | Unicode |
PYTHON | Object |
PY_DICT | Dict |
PY_TUPLE | Tuple |
PY_LIST | List |
ENTITYCALL | Object |
BLOB | Bytes |
支持自定义类型,插件会自动匹配Type.xml中的类型