echolive:editor_controller
1.7.4
注册编辑器中的控制栏及其快捷键。
属性
| 属性 | |
|---|---|
| 唯一键 | name |
| 继承 | 无 |
默认值
{
name: undefined,
type: 'item',
title: 'missingno',
icon: undefined,
shortcut: {},
action: {
type: 'none',
value: undefined
}
}
预期值
name
控制器名称,用于绑定行为。
type
控制器类型,可选值为:
item:普通控制器,默认值。hidden:不可见控制器。
title
控制器标题,用于其显示名称,支持使用本地化文本组件,本地化键名前缀为 editor.format.。
icon
控制器图标名称,用于在控制栏中显示的图标,可选值为 icon 注册表中的项目。
shortcut
激活控制器可用的快捷键,包含以下字段:
keys:按键名称(基于KeyboardEvent.code),支持组合键,Shift、Alt应按此顺序选择填入。该字段中应忽略Ctrl,因为无论如何该按键都会被要求按下。示例如下:ArrowUp表示 Ctrl + ↑;Shift+KeyS表示 Ctrl + ⇧ Shift + S。
description:快捷键描述,用于在控制器鼠标悬停提示中提示快捷键。
另外,当定义了 alt_action 字段时,会自动添加对 Alt 键的绑定。
action
控制器触发后的行为,包含以下字段:
type:行为名称,可以是以下值:insert_text_at_cursor:在光标处插入文本。show_popups:呼出悬浮窗。show_popups_set_option:呼出悬浮窗并设置选项。none:什么也不做。
value:行为参数。- 当
type值为insert_text_at_cursor时,有以下字段:before:在光标前插入的内容。after:在光标后插入的内容。forceInputAfter:布尔值,未选中文本时强制在光标后插入内容,默认为false。forceRepeatBefore:布尔值,当光标前有相同内容时强制插入内容,默认为false。forceRepeatAfter:布尔值,当光标后有相同内容时强制插入内容,默认为false。firstClear:布尔值,当(起始)光标位于文本框起始位置时不在光标前插入内容,默认为false。selectedTextFilter:选中文本过滤器,指定位于注册表editor_controller_method中的函数名称。setFocus:布尔值,是否设置焦点,默认为true。
- 当
type值为show_popups时,有以下字段:id:悬浮窗的 ID。focus:显示悬浮窗后需要聚焦的元素选择器字符串。
- 当
type值为insert_text_at_cursor时,有以下字段:- 同
show_popups中的字段。 option:选项值。
- 同
- 当
alt_action
控制器以额外选项模式触发(通常由按住 Alt 键触发)后的行为,包含字段与 action 一致。
你知道吗
- 此注册表中定义了一个名为
disabled_save的不可见控制器,其行为是什么也不做,以此来阻止按下 Ctrl + S 时的浏览器默认行为。
历史
| 版本 | 描述 |
|---|---|
| 1.7.4 | 加入了 echolive:editor_controller 注册表。 |
| 1.7.8 | 新增 alt_action 字段。新增 show_popups_set_option 行为。 |