rime中州韵 default.custom.yaml 配置 保姆教程

发布时间:2023年12月27日

今天,我们首先来讲解 用户文件夹 default.customer.yaml 的配置方法。

👇如下图所示,根据 rime 中州韵 程序配置结构讲解 中所讲,用户文件夹 内的 default.custom.yaml 文档的主要作用是为 程序文件夹 内的 default.yaml 文档进行打补丁,以合入并体现用户的个性化配置。
20231227150020

patch 节点

rimeyaml 文档中,所有包含 customyaml 文档,都是补丁文档,用于记录和体现用户的个性化配置。

  • default.yaml 的补丁文档是 default.custom.yaml
  • 输入方案 wubi86.schema.yaml 的补丁文档是 wubi86.custom.yaml
  • 输入方案 wubi_pinyin.schema.yaml 的补丁文档是 wubi_pinyin.custom.yaml

显然,每一个补丁文档,对应都会有其原配置文档(即不带 custom 的文档)

补丁文档中,其所定义的配置节点、配置项、配置值/内容,都应该存在于 补丁节点 path 之内,如下👇
20231227151754

反过来,如果在 custom 文档内的某项配置不在 path 节点之内,则该配置内容是不会生效的。

💣注意:
在一个 custom.yaml 文档中,只需要一个 path 节点,你需要将你希望打补丁的配置统一放在这一个 path 节点下。如果你的 custom.yaml 中存在多个 path 节点,则会引起 rime 异常。

yaml 语法格式

yaml 语法使用用缩进表示层级关系(这个很重要,请各位在编辑yaml补丁文档时,特别注意缩进位置),并且内容大小写敏感,其使用 # 表示注释。

💣坑点
如果你在你的 custom.yaml 文档的缩进中,混用了空格制表符,那你的整个 custom.yaml 文档将不会生效,👇如下是一个例子
20231227154317

配置 default.custom.yaml

ascii_composer/switch_key

ascii_composer/switch_key 用来定义输入法状态开关相关的按键。
👇如下,我们配置了 CapsLock键,左右Ctrl键, 左右Shift键的功能。

patch:
  ascii_composer/switch_key:
    Caps_Lock: commit_code  # 候选状态下,按 Caps_Lock 后编码上屏
    Control_L: noop  # 左 ctrl 键无使用效果
    Control_R: noop  # 右 ctrl 键无使用效果
    Eisu_toggle: clear  # 按 Esc 键,清除候选编码,退出候选框
    Shift_L: commit_code  # 候选状态下,按 左 Shift 后,编码上屏
    Shift_R: commit_code  # 候选状态下,按 右 Shift 后,编码上屏

good_old_caps_lock

good_old_caps_lock 用来控制在输入的过程中,使用 CapsLock 键后输入法的行为。
👇如下,我们配置了 CapsLock 键的功能,以使在输入过程中使用了 CapsLock 键后,可以一直保持大写输入状态。

patch:
  ascii_composer:
    good_old_caps_lock: true  # true 通过 caps lock 键切换入英文模式后,保持大写输入状态

engine/filters

engine/filters 用来定义候选词过滤器的配置。

👇如下,我们配置了 simplifieruniquifier 两种过滤器。在将来定制输入方案时,我们会在输入方案的补丁文档中配置更多的个性化过滤器。

patch:
  "engine/filters":
    - simplifier  # 引入简体拼音输入法过滤器
    - uniquifier  # 过滤重复候选项,依赖 simplifier

key_binder/bindings

key_binder/bindings 用来定义一些按键的相关作用。

👇如下,我们定义了 键来取第2候选词,.键来取第3候选词,PagUp键来进行向上翻页,PagDn键来进行向下翻页

patch:
  "key_binder/bindings":
    - {accept: semicolon, send: 2, when: has_menu}  # 使用 ; 键选择第 2 候选词
    - {accept: apostrophe, send: 3, when: has_menu}  # 使用 . 键选择第 3 候选词
    - {accept: bracketleft, send: Page_Up, when: paging}  # 使用 PageUp 键向上翻页
    - {accept: bracketright, send: Page_Down, when: has_menu}  # 使用 PageDown 键向下翻页

menu/page_size

menu/page_size 用来定义在输入法候选词存在时,候选框内可以容纳的候选词的数量,这个值最大是 10

patch:
  "menu/page_size": 10  # 存在候选词选项时,每一页显示的候选词数量,最大是 10

recognizer/patterns/punct

recognizer/patterns/punct 用来定义标点符号输入的捕捉模式。

patch:
  "recognizer/patterns/punct": "^/([0-9]0?|[A-Za-z]+)$"  # 标点符号识别模式

👆上面所配置的标点符号捕捉模式,可以实现以下符号输入功能,显然这是很有用(炫酷)的
20231227161049

schema_list

schema_list 用于管理输入方案列表,这里所谓的输入方案,指的是 程序文件夹 内的 schema.yaml 文档名,👇如下

20231227171731

patch:
  schema_list:
    - {schema: wubi_pinyin}  # 五笔?拼音 输入方案

👆上面所配置的输入方案,在我们 F4 键进行输入方案切换时,将会体现其效果。

例如,如果我们按如下👇的内容来配置 default.custom.yaml

patch:
  schema_list:
    - {schema: wubi_pinyin}  # 五笔?拼音 输入方案
    - {schema: easy_en}  # 英文输入方案
    - {schema: latex}  # latex输入方案

那么,当我们通过 F4 按键调出 Rime 选项时,将看到有三个输入方案(五笔?拼音Easy Englishlatex)可供选择,如下👇:
20231227171332
👆上图中,为什么我们看到的输入方案是 五笔?拼音, 而不是 default.custom.yaml 中所配的 wubi_pinyin 呢?这是因为 Rime 所显示给我们的交互选项,使用的是输入方案的 name 值,而不是输入方案的 schema.yaml 文档名,👇如下:
20231227172306

switcher

switcher 用来管理和控制输入方案及输入选项的开关状态。

如下👇,我们定义了输入法选项的唤出键是 F8,这个按键在 Rime 中默认是 F4grave(键盘感叹号左边的那个键)

patch:
  switcher:
    abbreviate_options: true  # 功能选项显示为简写模式
    caption: "〔方案选单〕"  # 选项菜单的名字
    fold_options: true  # 功能选项折叠显示
    hotkeys: [F8]  # 使用 F8 键调出 方案选单

按键名称

👆上文中,我们在进行功能个性化定义的时候,已经多次提到对按键的功能进行定义,或者选择使用不同的按键。例如 Caps_Lock,例如F8;那么我们每一个按键,在yaml文档中其对应的名字分别是什么呢?您可以参考 rime中州韵 按键名称一览表 以了解各按键对应的名称。

default.custom.yaml 文档

今天分享的 default.custom.yaml 配置内容,也可以直接下载default.custom.yaml 文档,以进行使用或者对比。

重新部署

当我们修改了 default.custom.yaml 文档并保存后,我们所做的修改并不会立即生效,我们需要 重新部署 rime 以使其可以感知并加载我们所做的个性化配置。如下👇
20231227184850

小结

以上所分享的,就是 rime中州韵/小狼毫 输入法的 default.yaml 配置个性化配置方法,我们需要在 用户文件夹 内修改编辑 default.custom.yaml 文档以达到定制 default.yaml 的目的。

如果你的 用户文件夹 内没有 default.custom.yaml 文档,你需要在 用户文件夹 内创建一个新的 default.custom.yaml 文档,然后修改它。

每当你修改了 default.custom.yaml 文档后,不要忘了保存。同时,你所做的修改不会立即生效,你需要进行重新部署,方可使输入法感知并加载到你所做的修改。

文章来源:https://blog.csdn.net/weixin_42148809/article/details/135253340
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。