Rime 小狼毫 自定义(自用存档)

Rime 中的数据文件分布及作用

除程序文件以外,Rime 还包括多种数据文件。 这些数据文件存在于以下位置:

共享资料夹

【中州韵】 /usr/share/rime-data/
【小狼毫】 “安装目录\data”
【鼠鬚管】 “/Library/Input Methods/Squirrel.app/Contents/SharedSupport/”

用户资料夹

【中州韵】 ~/.config/ibus/rime/ (0.9.1 以下版本为 ~/.ibus/rime/;fcitx5 为 ~/.local/share/fcitx5/rime/)
【小狼毫】 %APPDATA%\Rime
【鼠鬚管】 ~/Library/Rime/

共享资料夹 包含预设输入方案的源文件。 这些文件属于 Rime 所发行软件的一部份,在访问权限控制较严格的系统上对用户是只读的,因此谢绝软件版本更新以外的任何修改—— 一旦用户修改这裏的文件,很可能影响后续的软件升级或在升级时丢失数据。

在「部署」操作时,将用到这裏的输入方案源文件、并结合用户定制的内容来编译预设输入方案。

用户资料夹 则包含为用户准备的内容,如:

〔全局设定〕 default.yaml
〔发行版设定〕 weasel.yaml
〔预设输入方案副本〕 <方案标识>.schema.yaml

※〔安装信息〕 installation.yaml

※〔用户状态信息〕 user.yaml

编译输入方案所产出的二进制文件:

〔Rime 棱镜〕 <方案标识>.prism.bin
〔Rime 固态词典〕 <词典名>.table.bin
〔Rime 反查词典〕 <词典名>.reverse.bin

记录用户写作习惯的文件:

※〔用户词典〕 <词典名>.userdb/ 或 <词典名>.userdb.kct
※〔用户词典快照〕 <词典名>.userdb.txt、<词典名>.userdb.kct.snapshot 见于同步文件夹

以及用户自己设定的:

※〔用户对全局设定的定制信息〕 default.custom.yaml
※〔用户对预设输入方案的定制信息〕 <方案标识>.custom.yaml
※〔用户自制输入方案〕及配套的词典源文件

├── default.yaml   # 一些全局设置

├── rime_ice.schema.yaml  # 全拼方案
├── wubi_pinyin.schema.yaml  # 五笔拼音方案
├── double_pinyin*.yaml   # 双拼方案
├── rime_ice.dict.yaml    # 挂载词库
├── wubi86.dict.yaml    # 五笔词库
├── pinyin_simp.dict.yaml    # 拼音词库
├── cn_dicts/             # 自定义词库目录

├── wubi_pinyin.custom.yaml  # 五笔拼音方案定制
├── default.custom.yaml   # 全局方案定制
├── weasel.custom.yaml   # 发行版设定的定制信息。
用于设置托盘图标、指定软件默认英文输入、候选词横竖排列、界面布局、配色方案等等。

├── melt_eng.schema.yaml  # 英文方案,作为次翻译器挂载到拼音方案
├── melt_eng.dict.yaml    # 挂载词库
├── en_dicts/             # 词库目录

├── radical_pinyin.schema.yaml  # 部件拆字方案,作为反查挂载到拼音方案
├── radical_pinyin.dict.yaml    # 部件拆字词库

├── custom_phrase.txt    # 自定义短语
├── symbols_v.yaml       # 全拼 v 模式
├── symbols_caps_v.yaml  # 双拼 V 模式
├── opencc/              # 词语映射,Emoji
├── rime.lua             # 引入 Lua 脚本
├── lua/                 # 各个 Lua 脚本

├── installion.yaml  #  文件记录的是当前 Rime 程序的版本信息。
其中有一个字段 installation_id 用来在同步用户词典时唯一标记当前 Rime 程序。
├── user.yaml  #  文件记录用户的使用状态。
比如上次“重新部署”的时间戳,上次选择的输入方案等。
├── build  #  目录下放的是每次“重新部署”后生成的文件。
包括字典文件编译后生成的「.bin」文件,包括与自定义配置合并后生成的各种 yaml 配置文件。
├── xxx.userdb  #  目录下放的是对应输入方案的用户词典。
即用户在使用时候选择的词组、词频等动态信息,这个目录是实时更新的。

├── squirrel.yaml  # 鼠须管的前端配置文件
└── weasel.yaml    # 小狼毫的前端配置文件

任务栏图标

新版里面可以每个方案定义中英文图标,可以自行设定,使用ico文件。

方案patch里面,比如我用的是五笔拼音,就放在wubi_pinyin.custom.yaml文件最下面即可。

schema/full_icon: ChenYu.ico                         # string 方案图标,格式: .ico
  schema/half_icon: ChenYuA.ico                     # string 方案图标,格式: .ico
  schema/icon: ChenYu.ico                               # string 方案图标,格式: .ico
  schema/ascii_icon: ChenYuA.ico                    # string 英文方案图标,格式: .ico

放在wubi_pinyin.schema.yaml如下位置也可!

schema:
schema_id: wubi_pinyin
name: “五笔·拼音”
version: “0.9”
icon: “ChenYu.ico” # string 方案图标,格式: .ico
ascii_icon: “ChenYuA.ico” # string 英文方案图标,格式: .ico
author:
– 發明人 王永民先生

icon: "ChenYu.ico"                      # string 方案图标,格式: .ico
  ascii_icon: "ChenYuA.ico"           # string 英文方案图标,格式: .ico

以 patch 的方式打补丁

文件名为 xxx.custom.yaml,内容以 patch: 开头的,是补丁文件,注意缩进,可以对原配置进行覆盖和追加。

  • 方案 xxx.schema.yaml 的补丁文件是 xxx.custom.yaml
  • default.yaml squirrel.yaml 就是把结尾的 .yaml 改成 .custom.yaml
  • 具体语法参考官方 wiki:定製指南

-和=翻页

方案patch里面,比如我用的是五笔拼音,就放在wubi_pinyin.custom.yaml文件里面即可。

key_binder/bindings:				                                       # -和=翻页
    - when: has_menu
      accept: minus
      send: Page_Up
    - when: has_menu
      accept: equal
      send: Page_Down

更多设置

#-----------------------------------------------
  # 中英文切换自定义
  #-----------------------------------------------
  # 以下的 default.custom.yaml 在全局範圍重定義該組快速鍵
  #
  # 可用的按鍵有 Caps_Lock, Shift_L, Shift_R, Control_L, control_R
  # Mac 系統上的鼠鬚管不能區分左、右,因此只有對 Shift_L, Control_L 的設定起作用
  #
  # 已輸入編碼時按切換鍵,可以進一步設定輸入法中西文切換的形式。
  # 可選的臨時切換策略有三:
  # inline_ascii 在輸入法的臨時西文編輯區內輸入字母、數字、符號、空格等,回車上屏後自動復位到中文
  # commit_text 已輸入的候選文字上屏並切換至西文輸入模式
  # commit_code 已輸入的編碼字符上屏並切換至西文輸入模式
  # 設爲 noop,屏蔽該切換鍵
  #
  # 如果要把 Caps Lock 設爲只改變字母的大小寫而不做中西文切換,可將 Caps_Lock 對應的切換方式設爲 noop
  # 如果要以 Caps Lock 切換到西文模式,默認輸出小寫字母,請置 ascii_composer/good_old_caps_lock: false
  # 如果要以 Caps Lock 切換到西文模式,默認輸出大寫字母,請置  Shift_L: noop    Shift_R: noop
  # -----------------------------------------------
  # 设置候选项翻页快捷键
  #    - {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 键向下翻页
  #    - { when: has_menu, accept: bracketleft, send: Page_Up }                      # 使用 [ 键向上翻页
  #    - { when: has_menu, accept: bracketright, send: Page_Down }               # 使用 ] 键向下翻页
  #    - { when: has_menu, accept: Shift+Tab, send: Page_Up }                        # 上下翻页 tab
  #    - { when: has_menu, accept: Tab, send: Page_Down }                             # 上下翻页 tab
  #    - { when: composing, accept: Return, send: Escape }                              # 回车清码
  key_binder/bindings:				                                       # -和=翻页
    - when: has_menu
      accept: minus
      send: Page_Up
    - when: has_menu
      accept: equal
      send: Page_Down

修改候选顶前面的序号

方案patch里面,比如我用的是五笔拼音,就放在wubi_pinyin.custom.yaml文件里面即可。

# "menu/alternative_select_labels": [ ①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧, ⑨, ⑩ ]        # 修改候选標籤
  "menu/alternative_select_labels": [ ❶,❷,❸,❹,❺,❻,❼,❽,❾,❿ ]                    # 修改候选標籤
  # "menu/alternative_select_labels": [ ㊀, ㊁, ㊂, ㊃, ㊄, ㊅, ㊆, ㊇, ㊈, ㊉ ]        # 修改候选標籤

更多选项

translator/enable_completion: true  		#编码逐渐提示开关;编码提示
  "switches/@0/reset": 0                                                                                  # 1 默认英文状态,0 默认中文状态
  "menu/page_size": 7                                                                                      # 定製每頁候選數,默認每頁5,範圍是 1〜10
  # "menu/alternative_select_labels": [ ①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧, ⑨, ⑩ ]        # 修改候选標籤
  "menu/alternative_select_labels": [ ❶,❷,❸,❹,❺,❻,❼,❽,❾,❿ ]                    # 修改候选標籤
  # "menu/alternative_select_labels": [ ㊀, ㊁, ㊂, ㊃, ㊄, ㊅, ㊆, ㊇, ㊈, ㊉ ]        # 修改候选標籤
  "recognizer/patterns/punct": "^/([0-9]0?|[A-Za-z]+)$"                                 # 标点符号识别模式

新增字典

比如我用的是五笔拼音,在wubi86.dict.yaml开头部分新增。

name: wubi86
version: "4.3"
sort: by_weight                                       # by_weight=权重 original=原始
import_tables:                                        # 此处是添加用户自定义词库的地方
  - Dicts/chenyu_user                             # 个人私有词库
  - Dicts/chenyu_extra                         # 个人私有词库-扩展
  - Dicts/cyquanguo_extra                     # 扩展词库 - 行政区域

更多代码

---
name: wubi86
version: "4.3"
sort: by_weight                                       # by_weight=权重 original=原始
import_tables:                                        # 此处是添加用户自定义词库的地方
  - Dicts/chenyu_user                             # 个人私有词库
  - Dicts/chenyu_extra                         # 个人私有词库-扩展
  - Dicts/cyquanguo_extra                     # 扩展词库 - 行政区域

columns:                                                # 码表格式
  - text                                                    # 文字
  - code                                                  # 输入码
  - weight                                               # 权重
  - stem
encoder:
  exclude_patterns:
    - '^z.*$'
  rules:                                                   # 大写字母表示字序,小写字母表示其所跟随的大写字母所以表的字中的编码序
    - length_equal: 2                              # 对于二字词
      formula: "AaAbBaBb"                     # 取第一字首二码、第二字首二码
    - length_equal: 3                              # 对于三字词
      formula: "AaBaCaCb"                     # 取第一字首码、第二字首码、第三字首码、第三字二笔码
    - length_in_range: 4                         # 对于四字词
      formula: "AaBaCaDa"                     # 取第一字首码,第二字首码、第三字首码、第四字首码
    - length_in_range: [5, 10]                 # 对于五至十字词
      formula: "AaBaCaZa"                     # 取第一字首码,第二字首码、第三字首码、最后一字首码
...

选项菜单间隔符

方案switcher里面,比如我用的是五笔拼音,就放在wubi_pinyin.custom.yaml文件里面即可。

switcher:
    abbreviate_options: true                                       # 功能选项显示为简写模式
    caption: "〔方案菜单〕"                                         # 选项菜单的名字
    option_list_separator: "|"
    fold_options: true                                                  # 功能选项折叠显示

方案选单快捷键

方案hotkeys里面,比如我用的是五笔拼音,就放在wubi_pinyin.custom.yaml文件里面即可。使用哪个去掉面的#号,不使用的前面加#号!比如我这个是使用的F8。

hotkeys:                                                                 # 弹出菜单的快捷键
  #    - "Control+grave"                                             # 使用 Ctrl+` 键调出 方案选单
  #    - "F4"                                                                 # 使用 F4 键调出 方案选单
    - "F8"                                                                     # 使用 F8 键调出 方案选单

输出英文

方案recognizer里面,比如我用的是五笔拼音,就放在wubi_pinyin.custom.yaml文件里面即可。

recognizer:
    patterns:  # 一些常见的英文组合,当正则匹配到这些时,都不会生成候选词,而只输入英文
      email: "^[-_.0-9A-Za-z]+@.*$"                                                            # email @ 之后不上屏
      uppercase: "[A-Z][-_+.'0-9A-Za-z]*$"                                                  # 大写字母开头不上屏
      url: "^(www[.]|https?:|ftp[.:]|mailto:|file:|localhost).*$|^[a-z]+[.].+$"   # URL不上屏
      url_2: "^[A-Za-z]+[.].*"                                                                         # 句号不上屏,支持 google.com abc.txt 等网址或文件名,使用句号翻页时需要注释掉
      # colon: "^[A-Za-z]+:.*"                                                                       # 冒号不上屏

皮肤

这是本人使用的皮肤!

QQ20250418-091433

customization:
  distribution_code_name: Weasel
  distribution_version: 0.16.3
  generator: "Weasel::UIStyleSettings"
  modified_time: "Tue Apr 15 08:13:24 2025"
  rime_version: 1.13.1
patch:
  "app_options/code.exe":
    vscodeFlg: true
  "app_options/conhost.exe":
    cmdFlg: true
  "app_options/dingtalk.exe":
    dingdingFlg: true
  "app_options/feishu.exe":
    feishuFlg: true
  "app_options/mintty.exe":
    minttyFlg: true
  "app_options/pycharm64.exe":
    pycharmFlg: true
  "app_options/wechat.exe":
    wechatFlg: true
  "preset_color_schemes/+":
    ChenYuSelf:
      name: 尘遇/ChenYu
      author: ChenYu <https://ChenYu.Me>
      # 边框/阴影颜色
      border_color: 0xF6F6F6                             # 边框颜色(白色)
      shadow_color: 0x20000000                       # 阴影颜色(20%透明度的黑色)
      # 文字颜色
      text_color: 0x424242                                 # 普通文字颜色(深灰)
      hilited_text_color: 0xFFFFFF                       # 高亮文字颜色(白色)
      # 序号颜色
      label_color: 0xD6D6D6                               # 序号颜色(浅灰)
      hilited_label_color: 0xFFFFFF                     # 高亮序号颜色(白色)
      hilited_mark_color: 0x182ADE                   # 高亮候选前的标记颜色,配合mark_text使用(夕阳红)
      # 背景颜色
      back_color: 0xFFFFFF                                  # 背景颜色(白色)
      hilited_back_color: 0x79af22                      # 高亮背景色(微信绿)
      # 注释颜色
      comment_text_color: 0x999999                 # 注释文字颜色(浅灰)
      hilited_comment_text_color: 0xFFFFFF       # 高亮注释文字颜色(白色)
      # 候选颜色
      candidate_text_color: 0x888888                 # 候选项文字颜色(中灰)
      candidate_back_color: 0xFBFBFB                 # 候选项背景颜色(白色)
      candidate_border_color: 0xFFFFFF              # 候选项边框颜色(白色)
      hilited_candidate_back_color: 0x888888    # 高亮候选项背景色(中灰)
  style:
    color_scheme: ChenYuSelf			# 指定引用配色方案 id
    antialias_mode: default                                         # 抗锯齿模式
    ascii_tip_follow_cursor: false                                 # ASCII提示跟随光标
    fullscreen: false                                                     # 全屏候选词窗口
    preedit_type: composition                                    # 预编辑文本类型
    paging_on_scroll: false                                          # 鼠标滚轮翻页候选词
    display_tray_icon: false				# 显示系统托盘图标-是否显示右下角图标
    label_format: "%s."                                                # 标签字符:例如 %s. 效果为 1. 2. 3. ....
    mark_text: ""                                                          # 标记字符,显示在选中的候选标签前,需要在配色方案中指定颜色;如该项为空字符串 "" 而配色方案中 hilited_mark_color 非透明色,则显示 Windows 11 输入法风格标记

    vertical_auto_reverse: false                                    # 垂直排列时自动反转顺序
    vertical_text: false                                                  # 垂直文本显示
    vertical_text_left_to_right: false                             # 垂直文本从左到右显示
    vertical_text_with_wrap: false                                # 垂直文本自动换行

    horizontal: false				# 候选词排列方式。true:横排显示;false:竖排显示
    font_face: "Segoe UI Emoji:20:39, Segoe UI Emoji:1f51f:1f51f, Noto Color Emoji:80, Segoe UI Emoji:80, Sarasa UI SC, Microsoft Yahei"			# 候选字体
    font_point: 16					# 候选字体大小
    label_font_face: "Microsoft YaHei"		# 序号字体
    label_font_point: 14				# 序号字体大小
    comment_font_face: "Microsoft YaHei"	              # 注释字体
    comment_font_point: 12			# 注释字体大小
    inline_preedit: true				# 嵌入式候选窗/单行显示/在光标位置显示预编辑文本

    layout:
      align_type: center            # 标签、候选文字、注解文字之间的相对对齐方式top ; center ; bottom
      max_height: 0                  # 最大高度(0表示不限制)
      max_width: 800               # 最大宽度(像素)
      min_width: 10                  # 最小宽度(像素)
      margin_x: 10                    # 内容离边框的左右边界  当x和y 设置为负值时,将不显示候选窗口,但不影响方案选择
      margin_y: 8                      # 内容离边框的上下边界  当x和y 设置为负值时,将不显示候选窗口,但不影响方案选择
      candidate_spacing: 8       # 候选项之间的间距
      hilite_spacing: 6               # 高亮项的间距,序号与候选词之间的间隔 宽度
      hilite_padding: 3              # 高亮项的内边距,候选词边界值 宽度
      hilite_padding_x: 5           # 高亮项的水平内边距
      base_offset: 0                    # 字基高
      border_height: 1               # 外边框 高
      border_width: 1                # 外边框 宽-候选边框、面板边框(0表示无边框)
      corner_radius: 8                # 外边框 窗口外部圆角半径
      hilited_corner_radius: 8    # 选中框 圆角半径
      shadow_radius: 7             # 窗口阴影半径
      shadow_offset_x: 2           # 阴影横向偏移量
      shadow_offset_y: 3           # 阴影纵向偏移量
      blur: 3                               # 背景模糊程度(磨砂效果)

回车上屏

默认是回车编码上屏,如果要改成文字上屏呢?

“key_binder/bindings”:
– { when: composing, accept: Return, send: KP_Enter }

– { when: composing, accept: Return, send: Select }

以上两个都尝试无效

- { when: composing, accept: Return, send: space }

放在这个位置

“key_binder/bindings”:
– {accept: semicolon, send: 2, when: has_menu}
– {accept: apostrophe, send: 3, when: has_menu}
– {accept: bracketleft, send: Page_Up, when: paging}
– {accept: bracketright, send: Page_Down, when: has_menu}
– { when: composing, accept: Return, send: space }

提示: 使用此配置后,回车将完全等同于空格(首选词上屏)。如果你想输入输入的拼音字母(编码上屏),通常可以使用 Ctrl + Return

© 版权声明
底线,心之尺,言之界
心有所喜,可点赞、可分享、可收藏
点赞12赞赏 分享
寄言于此 抢沙发
头像
愿您每一次发声,皆为生活添色,予人共鸣、沉思与欢喜
提交
头像

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容