按键设置
中英文切换键、候选词管理、候选操作键组、功能快捷键与全局热键,以及按键冲突的判定与优先级
设置工具的「按键」页分四张卡片:中英文切换、候选词管理、候选操作、功能快捷键。
对应配置段是 config.toml 的 [keys],完整键名、可选值与默认值见按键配置。
中英文切换
| 选项 | 说明 | 出厂 |
|---|---|---|
| 切换按键 | 用于切换中英文的修饰键,可多选,按下任意一个即切换 | 左 Shift、右 Shift |
| 切换时编码上屏 | 中文切到英文时,把已输入的编码直接上屏(关则丢弃) | 开 |
可选按键:左 Shift、右 Shift、左 Ctrl、右 Ctrl、Caps Lock。
是「轻敲」不是「按住」
这些键在松开时才触发切换,且只认轻敲——按住超过约 500 毫秒、或按下期间碰了别的键,都不算切换。这样 Ctrl + A、Shift + 字母 这类组合才不会被误判。
候选词管理
| 功能 | 可选 | 出厂 |
|---|---|---|
| 置顶词条 | Ctrl + 数字 / Ctrl + Shift + 数字 / 不使用 | Ctrl + 数字 |
| 删除词条 | Ctrl + 数字 / Ctrl + Shift + 数字 / 不使用 | Ctrl + Shift + 数字 |
置顶把候选固定到首位;删除隐藏该候选(单字不可删除)。产生的规则可在词库页的候选调整里查看与撤销。
这两项只认这两种模板写法,不能配成任意组合键。两者也不能配成相同的组合。
候选窗快捷键的分派优先级最高
这一层在临时英文 / 临时拼音 / 快捷输入 / 网址输入 / 引导键特殊模式的 Ctrl / Alt 守卫之前分派——所以配成候选窗快捷键的组合,在这五种模式里也照样能用。
候选操作
四组键,每组都可多选。
次选 / 三选快捷键
选中第 2、3 位候选词。出厂:分号/引号。
| 选项 | 第 2 候选 | 第 3 候选 |
|---|---|---|
| 分号/引号 | ; | ' |
| 逗号/句号 | , | . |
| 左/右 Shift | 左 Shift | 右 Shift |
| 左/右 Ctrl | 左 Ctrl | 右 Ctrl |
修饰键组同样走「轻敲」判定(松开时触发、限时 500 ms、中途按别的键即取消)。
高亮移动按键
在候选列表中移动选中项。出厂:两组都开。
| 选项 | 上移 | 下移 |
|---|---|---|
| 方向键 | ↑ | ↓ |
| Tab | Shift + Tab | Tab |
翻页快捷键
出厂:PageUp/PageDown、减号/等号。
| 选项 | 上一页 | 下一页 |
|---|---|---|
| PageUp / PageDown | PageUp | PageDown |
| 减号/等号 | - | = |
| 方括号 | [ | ] |
| Shift+Tab / Tab | Shift + Tab | Tab |
| 逗号/句号 | , | . |
以词定字
输入词组后按指定键只取第 1 或第 2 个字。出厂全部关闭。
| 选项 | 取第 1 字 | 取第 2 字 |
|---|---|---|
| 逗号/句号 | , | . |
| 减号/等号 | - | = |
| 方括号 | [ | ] |
词长不足时的行为由候选无效按键决定。
功能快捷键
每项以「修饰键 + 主键」的形式在对话框中编辑。留空即不绑定该功能。
| 功能 | 默认快捷键 | 可设全局 |
|---|---|---|
| 切换输入方案 | Ctrl + Shift + E | ✅ |
| 切换全角/半角 | Shift + Space | ✅ |
| 切换中/英文标点 | Ctrl + . | ✅ |
| 切换简入繁出 | Ctrl + Shift + J | ✅ |
| 显示/隐藏工具栏 | Ctrl + Shift + \ | ✅ |
| 打开设置 | Ctrl + Shift + ] | ✅ |
| 快捷加词 | Ctrl + = | —— |
| 打开加词界面 | Ctrl + Shift + = | —— |
| 切换到本输入法 | Ctrl + Shift + [ | 天生全局 |
- 快捷加词 / 打开加词界面——都需要当前的输入上下文,只在中文模式生效。这两个键额外走系统级拦截,规避 QQNT / Tabby 等宿主的加速键双处理
- 切换到本输入法——在任意应用中一键切回清风。它经 Windows 的输入法直接切换机制(
DirectSwitchHotkeys注册表)注册,由系统ctfmon原生处理,天生全局,不参与下面的全局热键列表
另有「界面截图」快捷键(默认 Ctrl + Shift + F11)未在设置界面暴露,仅可在配置文件中修改,见按键配置。
全局热键
默认情况下,快捷键只在输入法激活时响应。在热键编辑对话框中勾选「全局」,即可注册为系统全局快捷键——输入法未激活时也生效。
上表标 ✅ 的六项加上「界面截图」共 7 个功能支持全局。设置界面当前只暴露「打开设置」的全局勾选,其余可在配置文件的 keys.global_hotkeys 里直接填写。
方案直达热键
给单个方案绑一个键,按下直接切过去,不必循环。它不在本页配,而在方案页 → 选中方案 → 设置 → 按键设置 → 切换热键,见方案设置。
同样地,引导键特殊模式的直达热键也在那里配。但它们与本页的功能快捷键在内核里是同一张表,会互相冲突——见下。
冲突与优先级
同一个物理键被两处配置争用时,会发生什么?答案取决于内核对这次争用的实际处置,分两种情况。
设置工具会实时检测,两种情况的呈现也不同:
| 级别 | 内核行为 | 你会看到 |
|---|---|---|
| 真冲突 | 两个功能在同一输入状态下都想要这个键,内核只能选一个 → 另一个静默失效 | 内容区顶部的琥珀色常驻警告条,改到没有为止 |
| 共存 | 有确定的分时裁决,两个功能都能用,只是生效条件不同 | 刚配出这个组合时弹一次提示,说明实际行为 |
三个场景域,跨域不算冲突
内核对一次按键的处理是状态相关的:同一个键在不同输入状态下被路由到不同功能。所以「同一物理键被多个功能使用」未必是冲突——只有两个功能在同一输入状态下都可能响应,才是真冲突。
据此分成三个场景域,只在域内检测:
| 域 | 生效输入状态 | 覆盖哪些设置 | 争用时谁赢 |
|---|---|---|---|
| 触发键 | 空缓冲、无候选 | 临时拼音触发键、临时英文触发键、快捷输入触发键、引导键 | 固定优先级链:临时英文 > 临时拼音 > 引导键特殊模式 > 快捷输入 |
| 候选键 | 有候选时 | 次选/三选、翻页、高亮移动、以词定字,以及中英文切换键(见下) | 以词定字先于翻页;次选键先于混输触发键的溢出分支 |
| 快捷键 | 组合键命令 | 9 个功能快捷键 + 置顶/删除词条 + 方案直达热键 + 模式直达热键 | 同一张 key_down 表,先注册者赢,后者静默失效 |
举例:; 在空缓冲态是临时拼音触发键、在有候选态是次选键,二者分时复用,不算冲突,也不会提示。
方案直达热键最容易撞车
方案直达热键与模式直达热键与本页的功能快捷键同属快捷键域。在方案管理对话框里把某方案配成 Ctrl + Shift + E(正好是「切换输入方案」的出厂值)是点得出来的操作——现在会给出警告,此前完全没有提示。
置顶/删除词条会展开成十个键再比
它们的值是模板 ctrl+number,检测时展开成 Ctrl+0…Ctrl+9 十个具体键。所以「把打开设置配成 Ctrl+1」会被检出与置顶词条重叠。同一对分组撞多个键时文案会合并成一条。
唯一的共存:中英切换键 vs 次选键
把左/右 Shift 同时配成「中英文切换」和「次选/三选键」,是可用的设计,不是冲突。内核的裁决:
| 状态 | 行为 |
|---|---|
| 有候选、位次够 | 选中该候选,不切中英文 |
| 有候选、但页内候选不足该位次 | 吞掉这个键,既不选也不切 |
| 无候选 | 切换中英文 |
两个功能都能用,只是生效条件不同。所以设置工具只在你刚配出这个组合时提示一次,不会挂常驻警告条。
为什么修饰键选词在松开时判定
纯修饰键的按下事件不能吃——吃了宿主程序就看不见修饰键,AutoCAD 的正交模式会失效并卡顿;而且在按下时判定会让 Ctrl + A 的第一下 Ctrl 就把候选选走。所以修饰键选词与中英切换都在松开时处理,并复用同一套「轻敲」判定。
已知不检测的一处
混输触发键与次选键的候选态争用不参与检测。混输触发键(如快捷输入的 ;)在空缓冲态是触发键,在有候选态还会作为次选溢出分支被检查。这一层由内核按「次选优先」解决,行为可控,故只在文档说明、不报警告。