目录
中州韵
中州韵输入法引擎(英语:Rime Input Method Engine,又称Rime 输入法)
是由佛振编写的开源中文输入法,目前项目网站、源代码均托管在GitHub。
基于同一个核心架构,该输入法分为三个官方发行版:
Linux 发行版中州韵(ibus-rime)、Windows发行版小狼毫(Weasel)、macOS 发行版鼠须管(Squirrel)。
移动平台也有基于Rime做的输入法:Android下叫Trime, iOS下叫iRime。
为什么使用 Rime 输入法?
Rime 输入法的优势在于它高度的可自定义化。
从外观,到按键设置、标点定制,还可以实现输入颜文字、希腊字母等奇葩操作。
只要肯花一点时间,就可以让输入法变成我们想要的样子。
此外,我们不必再担心输入法的隐私问题,也可摆脱输入法广告骚扰。
安装
在安装过程中,会依次弹出两个窗口,让我们选择输入方案和界面风格。
这两个步骤以后也可以重新设置,所以不必过多纠结。
选好了点击中
(河南话),再点击中
,然后就安装完成了。
安装成功后,理论上就已经可以使用了。
但是既然我们想要使用 Rime,一定是为了对其进行自定义配置来提高使用体验。
Rime 输入法具有很高的自由度,可以让我们在各方面进行自定义配置,让输入法无限贴近我们的需求。
基础设置
切换简体字
添加输入方案
Rime 默认的输入方案有很多,但如果你是五笔或双拼用户,就需要自己添加方案。
以 自然码双拼 为例,方法如下:
第一步:在 Github 找到想要的方案,将其中的 *.yaml 文件下载下来,
放到用户文件夹(对输入法点右键,可找到) 中
第二步:在用户文件夹中新建default.custom.yaml文件(如果存在,就不需创建了)
并写入如下内容
# default.custom.yaml patch: schema_list: -schema: double_pinyin
上述代码中,patch: 这一行在同一个文件中只需出现一次,
如果有多处修改都包含此行,则只需保留一个,并按照相同缩进对其即可。
缩进很重要,请务必对齐。
第三步:通过开始菜单或托盘图标 重新部署 即可。
全局设置
候选词数量
Rime 默认的选词数量为 5,我们可以将其修改为其他数值。
最多为10,十个候选词分别对应数字1~9和0。
在 用户文件夹 找到default.custom.yaml文件,文本打开
参考代码如下:
# default.custom.yaml patch: "menu/page_size": 10
方案选单热键
Rime 默认将 Ctrl+~
和 F4
作为方案选单的快捷键(或叫热键),
这有时会和其他软件或游戏的快捷键发生冲突。为了解决这个让人裂开的问题,
可以在 default.custom.yaml 中更改快捷键。
# default.custom.yaml patch: "switcher/hotkeys": - "Control+grave"
(grave键就是这个~
,也叫反引号键 )
以方括号 [ ] 来换页
可以在 default.custom.yaml 中更改。
# default.custom.yaml patch: key_binder/bindings: - when: paging accept: bracketleft send: Page_Up - when: has_menu accept: bracketright send: Page_Down
在特定程序里关闭中文输入
在一些终端、代码编辑器或快速启动工具等程序中,中文很少会用到,
那么我们可以在这些程序里默认关闭中文输入。
还有在很多游戏中,默认关闭中文输入可以避免 “想前进,却在屏幕上打出一长串 W” 的窒息操作 。
比如下面的例子,我们希望在 Photoshop 和 Illustrator 中默认关闭中文输入。
修改用户文件夹中点weasel.custom.yaml文件
# weasel.custom.yaml patch: app_options/photoshop.exe: # 程序名字全用小写字母 ascii_mode: true app_options/illustrator.exe: # 如果有多个程序,按照这个格式补充 ascii_mode: true
程序的名称一般为 *.exe,如果不知道,
可以通过快捷方式的右键菜单中的 “打开文件所在位置 ” 找到;
也可以通过任务管理器查看正在运行的程序。
输入方案配置
该部分以 朙月拼音 为例。
请读者注意:如果你使用的不是 朙月拼音 ,
那么下文中出现 luna_pinyin.custom.yaml 文件的地方,请替换为相应文件。
搞清楚这一点很重要,因为你可能会同时拥有上述两种文件,
如果对错误的文件进行了修改,可能就不起作用。
举个例子,我使用 自然码双拼,对应的文件为 double_pinyin.custom.yaml。 在下文中任何要修改 luna_pinyin.custom.yaml 的地方,操作对象换为 double_pinyin.custom.yaml。
模糊音设置
修改luna_pinyin.custom.yaml文件
(在用户文件夹中,如果没有则创建一个)
参考如下:
# luna_pinyin.custom.yaml # # 【朙月拼音】模糊音定製模板 # 佛振配製 :-) # # 位置: # ~/.config/ibus/rime (Linux) # ~/Library/Rime (Mac OS) # %APPDATA%\Rime (Windows) # # 於重新部署後生效 # patch: 'speller/algebra': - erase/^xx$/ # 第一行保留 # 模糊音定義 # 需要哪組就刪去行首的 # 號,單雙向任選 #- derive/^([zcs])h/$1/ # zh, ch, sh => z, c, s #- derive/^([zcs])([^h])/$1h$2/ # z, c, s => zh, ch, sh #- derive/^n/l/ # n => l #- derive/^l/n/ # l => n # 這兩組一般是單向的 #- derive/^r/l/ # r => l #- derive/^ren/yin/ # ren => yin, reng => ying #- derive/^r/y/ # r => y # 下面 hu <=> f 這組寫法複雜一些,分情況討論 #- derive/^hu$/fu/ # hu => fu #- derive/^hong$/feng/ # hong => feng #- derive/^hu([in])$/fe$1/ # hui => fei, hun => fen #- derive/^hu([ao])/f$1/ # hua => fa, ... #- derive/^fu$/hu/ # fu => hu #- derive/^feng$/hong/ # feng => hong #- derive/^fe([in])$/hu$1/ # fei => hui, fen => hun #- derive/^f([ao])/hu$1/ # fa => hua, ... # 韻母部份 #- derive/^([bpmf])eng$/$1ong/ # meng = mong, ... #- derive/([ei])n$/$1ng/ # en => eng, in => ing #- derive/([ei])ng$/$1n/ # eng => en, ing => in # 樣例足夠了,其他請自己總結…… # 反模糊音? # 誰說方言沒有普通話精確、有模糊音,就能有反模糊音。 # 示例爲分尖團的中原官話: #- derive/^ji$/zii/ # 在設計者安排下鳩佔鵲巢,尖音i只好雙寫了 #- derive/^qi$/cii/ #- derive/^xi$/sii/ #- derive/^ji/zi/ #- derive/^qi/ci/ #- derive/^xi/si/ #- derive/^ju/zv/ #- derive/^qu/cv/ #- derive/^xu/sv/ # 韻母部份,只能從大面上覆蓋 #- derive/^([bpm])o$/$1eh/ # bo => beh, ... #- derive/(^|[dtnlgkhzcs]h?)e$/$1eh/ # ge => geh, se => sheh, ... #- derive/^([gkh])uo$/$1ue/ # guo => gue, ... #- derive/^([gkh])e$/$1uo/ # he => huo, ... #- derive/([uv])e$/$1o/ # jue => juo, lve => lvo, ... #- derive/^fei$/fi/ # fei => fi #- derive/^wei$/vi/ # wei => vi #- derive/^([nl])ei$/$1ui/ # nei => nui, lei => lui #- derive/^([nlzcs])un$/$1vn/ # lun => lvn, zun => zvn, ... #- derive/^([nlzcs])ong$/$1iong/ # long => liong, song => siong, ... # 這個辦法雖從拼寫上做出了區分,然而受詞典制約,候選字仍是混的。 # 只有真正的方音輸入方案纔能做到!但「反模糊音」這個玩法快速而有效! # 模糊音定義先於簡拼定義,方可令簡拼支持以上模糊音 - abbrev/^([a-z]).+$/$1/ # 簡拼(首字母) - abbrev/^([zcs]h).+$/$1/ # 簡拼(zh, ch, sh) # 以下是一組容錯拼寫,《漢語拼音》方案以前者爲正 - derive/^([nl])ve$/$1ue/ # nve = nue, lve = lue - derive/^([jqxy])u/$1v/ # ju = jv, - derive/un$/uen/ # gun = guen, - derive/ui$/uei/ # gui = guei, - derive/iu$/iou/ # jiu = jiou, # 自動糾正一些常見的按鍵錯誤 - derive/([aeiou])ng$/$1gn/ # dagn => dang - derive/([dtngkhrzcs])o(u|ng)$/$1o/ # zho => zhong|zhou - derive/ong$/on/ # zhonguo => zhong guo - derive/ao$/oa/ # hoa => hao - derive/([iu])a(o|ng?)$/a$1$2/ # tain => tian # 分尖團後 v => ü 的改寫條件也要相應地擴充: #'translator/preedit_format': # - "xform/([nljqxyzcs])v/$1ü/"
^和$的意思是:匹配以什么为开头和结尾
定制标点符号
Rime 提供的标点符号非常全面,但是每个人的需求不同,
一般用不到所有的符号,所以我们需要根据自己的需求进行定制。
也有的用户习惯以 / 键输入标点「、」,这同样要通过定制标点符号实现。
以 朙月拼音 为例,输入方案中有以下设定:
# luna_pinyin.schema.yaml punctuator: import_preset: default
解释:
punctuator 是 Rime 中负责转换标点符号的组件。该组件会从设定中读取符号映射表,而知道该做哪些转换。 punctuator/import_preset 是说,本方案要继承一组预设的符号映射表、要从另一个设定档 default.yaml 导入
查看 default.yaml ,確有如下符号表
# default.yaml punctuator: full_shape: "/" : [ /, "/", ÷ ] half_shape: "/" : [ "/", /, ÷ ]
可见,在默认方案中,按键 / 是被指定到 “/”, /, ÷ 等一组符号了。
并且全角和半角状态下,符号有不同的定义。
欲令 / 键直接输出「、」,我们要做的事情,是定制 luna_pinyin.custom.yaml:
# luna_pinyin.custom.yaml patch: punctuator/full_shape: "/" : "、" punctuator/half_shape: "/" : "、"
以上在输入方案设定中写入两组新值,合并后的输入方案成为:
# luna_pinyin.schema.yaml punctuator: import_preset: default full_shape: "/" : "、" half_shape: "/" : "、"
含义是,在由 default 导入的符号表之上,覆写对按键 / 的定义。
通过这种方法,既直接继承了大多数符号的默认定义,又做到了局部的个性化。
输入特殊符号
Rime 提供了极其丰富的特殊符号的输入方法,
具体方案可以在symbols.yaml
(在程序文件夹的data文件夹中)中查看。
如果无法正常显示,尝试用浏览器或其他编辑器打开。
比如,使用/sx
可以打出各种数学符合±÷×∈≠∑∮,
使用/xl
可以输出希腊字母αβγδθη,使用/mj
可以输出麻将符号🀀🀁🀇🀐🀚。
添加自定义符号
由于symbols.yaml
(在程序文件夹的data文件夹中)不能使用 *.custom 打补丁,我们需要这样操作:
1 在用户文件夹新建文件 mysymbols.yaml
(你可以自己决定)
2 找到文件 symbols.yaml
,将文件内容全部粘贴至刚刚新建的 mysymbols.yaml
中
3 将 luna_pinyin.schema.yaml
中 'punctuator/import_preset'指向改为 mysymbols
(代码见下)
4 按照已有的格式添加自定义内容
# luna_pinyin.schema.yaml patch: "punctuator/import_preset": mysymbols
历史
等待补充
相关网站
通过IPFS公共网关下载 weasel-0.15.0.0-installer.exe
通过IPFS公共网关下载 trime-3.2.16-armeabi-v7a-debug.apk
通过IPFS公共网关下载 trime-3.2.16-arm64-v8a-debug.apk