pimgeek2025年03月23日 21:32
延续上一则笔记 - Rime 输入方案启用自定义标点
在极简 Rime 输入方案配置文件 mvp.schema.yaml 的基础上增加一项新功能:第 1 次按下键盘左侧的 Shift 按键时,切换到英文半角标点输入模式;第 2 次按下 Shift 时,切换回中文全角标点输入模式。
# Rime schema settings
# encoding: utf-8
schema:
schema_id: mvp
name: 最小可行方案
author: pimgeek
version: "0.0.1"
description: |
最小可行自定义输入方案 (逐步迭代)
engine:
processors:
# <ascii_composer> 用于配合实现中英输入模式切换
# ascii_composer 配置项必须先于 punctuator
# 否则将无法正常输入英文半角标点符号
- ascii_composer
# <punctuator> 用于设置标点符号
# 它与以下 3 个配置项相互依赖
# segmentors/punct_segmentor
# translators/punct_translator
# punctuator/half_shape { commit ... }
- punctuator # 左侧的 - 和空格必须保留
# <key_binder> 用于设置键盘快捷键
# 与下列配置项相互依赖:
# key_binder/bindings { when ... accept ... select }
- key_binder
segmentors:
# <punct_segmentor> 用于识别和标记 , . 等标点符号的输入编码
# 它与以下 3 个配置项相互依赖
# processors/punctuator
# translators/punct_translator
# punctuator/half_shape { commit ... }
- punct_segmentor # 左侧的 - 和空格必须保留
translators:
# <punct_translator> 用于把代表标点符号的输入码转换为最终的标点符号
# 它与以下 3 个配置项相互依赖
# processors/punctuator
# segmentors/punct_segmentor
# punctuator/half_shape { commit ... }
- punct_translator # 左侧的 - 和空格必须保留
# <ascii_composer> 用于配合实现中英输入模式切换
# 它与 processors/ascii_composer 同名但“层级”更高,需仔细分辨
# 它与以下 1 个配置项相互依赖
# processors/ascii_composer
ascii_composer:
switch_key:
# 下列配置项表示:按下左侧 Shift 提交已上屏的输入编码
Shift_L: commit_code
# <punctuator> 用于列举需要自动转换的标点符号列表
# 它与 processor/punctuator 同名但“层级”更高,需仔细分辨
# 它与以下 3 个配置项相互依赖
# processors/punctuator
# segmentors/punct_segmentor
# translators/punct_translator
punctuator:
half_shape:
',' : { commit: ',' }
'.' : { commit: '。' }
# <key_binder> 用于设置键盘快捷键
# 它与 processors/key_binder 同名但“层级”更高,需仔细分辨
# 它与以下 1 个配置项相互依赖
# processors/key_binder
key_binder:
bindings:
# 下列配置项表示:按下左侧 Shift 按键可在中英文输入模式间来回切换
- { when: always, accept: Shift_L, toggle: ascii_mode }
被 1 条笔记引用 (Trackback)
-
被下列条目引用
-
详解 Rime 输入方案配置文件中的 engine 部分
延续上一则笔记 - Rime 输入方案启用中英文状态切换
在极简 Rime 输入方案配置文件
mvp.schema.yaml的基础上增加注释,重点说明engine/processors,engine/segmentors,engine/translators等配置项的名称及其具体功效。# Rime schema settings # encoding: utf-8 # schema 类配置项,主要是一些描述性信息 # 包括本输入方案的唯一身份 id,中文名称,简介文字,作者,版本,简介文字等 schema: schema_id: mvp name: 最小可行方案 author: pimgeek version: "0.0.1" description: | 最小可行自定义输入方案 (逐步迭代) # engine 类配置项,包括 3 步处理流程 (靠上的步骤优先处理) # 1 是 processors,2 是 segmentors,3 是 translators # 分别代表按键操作识别,输入编码分段和标记,把编码转换为最终上屏内容 engine: # processors 类配置项,负责识别各种键盘按键操作 processors: # <ascii_composer> 用于配合实现中英输入模式切换 # ascii_composer 配置项必须先于 punctuator # 否则将无法正常输入英文半角标点符号 - ascii_composer # <punctuator> 用于设置标点符号 # 它与以下 3 个配置项相互依赖 # segmentors/punct_segmentor # translators/punct_translator # punctuator/half_shape { commit ... } - punctuator # 左侧的 - 和空格必须保留 # <key_binder> 用于设置键盘快捷键 # 与下列配置项相互依赖: # key_binder/bindings { when ... accept ... select } - key_binder # segmentors 类配置项,负责给输入编码序列做分段和标记 segmentors: # <punct_segmentor> 用于识别和标记 , . 等标点符号的输入编码 # 它与以下 3 个配置项相互依赖 # processors/punctuator # translators/punct_translator # punctuator/half_shape { commit ... } - punct_segmentor # 左侧的 - 和空格必须保留 # translators 类配置项,负责把编码转换为中文字词或标点符号 translators: # <punct_translator> 用于把代表标点符号的输入码转换为最终的标点符号 # 它与以下 3 个配置项相互依赖 # processors/punctuator # segmentors/punct_segmentor # punctuator/half_shape { commit ... } - punct_translator # 左侧的 - 和空格必须保留 # <ascii_composer> 用于配合实现中英输入模式切换 # 它与 processors/ascii_composer 同名但“层级”更高,需仔细分辨 # 它与以下 1 个配置项相互依赖 # processors/ascii_composer ascii_composer: switch_key: # 下列配置项表示:按下左侧 Shift 提交已上屏的输入编码 Shift_L: commit_code # <punctuator> 用于列举需要自动转换的标点符号列表 # 它与 processor/punctuator 同名但“层级”更高,需仔细分辨 # 它与以下 3 个配置项相互依赖 # processors/punctuator # segmentors/punct_segmentor # translators/punct_translator punctuator: half_shape: ',' : { commit: ',' } '.' : { commit: '。' } # <key_binder> 用于设置键盘快捷键 # 它与 processors/key_binder 同名但“层级”更高,需仔细分辨 # 它与以下 1 个配置项相互依赖 # processors/key_binder key_binder: bindings: # 下列配置项表示:按下左侧 Shift 按键可在中英文输入模式间来回切换 - { when: always, accept: Shift_L, toggle: ascii_mode }
京公网安备 11010502051247号