Windows下安装和设置rime输入法

rime输入法,官方名称为“中州韵输入法”,它在不同的系统平台下有不同的名称,Windows下叫“小狼毫”(Weasel);macOS下有“鼠须管”(Squirrel)、“小企鹅”(fcitx5-macos)、XIME;Linux下有ibus-rime、fcitx-rime或fcitx5-rime;安卓下叫“同文”(Tongwen)或“小企鹅”(fcitx5-android)。

它是一个高度自定义的、完全开源的输入法,因此也是安全的输入法。当安全性越来越成为当下的刚需时,我们必须正视国产输入法的漏洞问题。有证据显示,所有国产输入法均会上传你输入的内容,且无法完全删除,存在泄密的风险。

起初,在看了网上零星的介绍后,可能会觉得rime是一个非常复杂的、考验人DIY水平的输入法,有点让人望而生畏。真正动手研究一下就会发现,其实也还好,从安装到基本调整完毕,大概只需要5分钟时间。

本文以安装Windows版本的小狼毫为例。

一、基本配置

1、下载rime

到官方网站下载:https://rime.im/download/

2、安装rime

默认安装即可,在设置页可以先按照默认设置来。

3、切换到简体中文

输入法默认是繁体,按ctrl+`或F4,选择“中-半-汉”或者“西-半-汉”,然后单击“漢->汉”即可。

4、下载双拼方案

默认的“朙月拼音”相当于全拼输入法。如果你习惯全拼输入法,选择它就好。如果喜欢双拼,那么需要另行下载双拼方案文件。

Github:https://github.com/rime/rime-double-pinyin

将你喜欢的双拼方案对应的yaml文件,放入程序文件夹中的data子文件夹。进入程序文件夹的方式:右键点击托盘图标,单击“程序文件夹”。

5、添加双拼方案

用记事本打开程序文件夹的data子文件夹中的default.yaml,在schema_list段,增加一个schema,注意格式缩进。名称即为刚刚下载的双拼方案的文件名(不包含.schema.yaml后缀)。

重新部署。重新部署的方式:右键点击托盘图标,单击“重新部署”。

6、输入法设定

右键点击托盘图标,单击“输入法设定”。去除不需要的方案,勾选添加的双拼方案。

下一步选择你喜爱的颜色搭配。

7、调整候选字的横排or竖排

默认候选字为竖排。如果习惯横排,那么进入用户文件夹(右键单击托盘图标,单击“用户文件夹”),用记事本编辑weasel.custom.yaml文件,在patch段添加如下两行:

  "style/display_tray_icon": true
  "style/horizontal": true

注意缩进为2个空格。

重新部署。

8、调整候选字大小和间距

进入用户文件夹,用记事本编辑weasel.custom.yaml文件,在patch段添加如下两行(大小和间隔可以根据喜好调整):

  "style/font_point": 18
  "style/layout/candidate_spacing": 10

修改后,记得重新部署。

9、候选词个数设置

进入用户文件夹,编辑default.custom.yaml文件,在patch段增加:

  menu/page_size: 9

注意前面有2个空格。这里支持1-9。

重新部署。

二、词库设置

实际测试下来,使用搜狗拼音的标准词库搭配自己的用户词库,在导入后会出现一些奇怪的问题,包括候选字的频率不正确、丢失部分字等等。

因此,不建议导入外部词库,还是重新养一个比较好。

如果一定要导入,那么参考以下的内容:

1、下载深蓝词库转换工具

Github:https://github.com/studyzy/imewlconverter/releases

绿色软件,无需安装。可能需要runtime运行库,按提示下载安装一下即可。

2、导出搜狗拼音词库

切换倒搜狗输入法,进入设置页面->词库,导出用户中文词库,导出来是一个bin文件。这个是用户自己的词库。

下载搜狗标准词库:https://pinyin.sogou.com/dict/detail/index/11640,这是一个scel文件。

3、转换词库

用深蓝词库转换工具,将两个词库文件分别转换为rime格式,注意,两种rime格式实测一样。

4、添加词库

分别使用excel和ultraedit编辑一下转换后的txt文件,把最后一列词频数据和前面的tab符删除。

两个文件分别加上文件头:

---
name: sg_standard
version: "2024.05.14"
sort: by_weight
...

注意,两个文件的name不一样,一个是sg_standard,一个是sg。然后将两个文件分别保存为sg_standard.dict.yaml、sg_dict.yaml,放到“用户文件夹/dicts”中。

文件均保存为utf-8格式。

5、指定词库

在用户文件夹中创建extended.dict.yaml文件,内容如下:

---
name: extended
version: "2024-05-14"

import_tables:
  - dicts/sg_standard
  - dicts/sg
...

进入程序文件夹的data子目录,找到你的输入法方案对应的yaml文件,定位到其中的translator:段。将dictionary修改为extended。注意前面有一个空格。

重新部属。

由于自定义词库的词频丢失,所以它并不能完美还原搜狗拼音的使用感觉,词库的优先级还需要在使用过程中不断调整。

但至少,很多熟悉的人名不用再一个字一个字的选择了。

三、特殊字符问题

由于我使用的是double_pinyin_pyjj.schema.yaml(拼音加加双拼),所以以它为例。

特殊字符有两个层面,一个是个别字符,例如我习惯于用"\"来直接输入顿号"、",但是默认的rime会给你若干个选择,影响效率。另一个是日常使用的各种特殊字符了,搜狗拼音会有一个软键盘让你选,但rime没有。解决方法如下:

1、解决个别字符问题

定位到程序文件夹,进入data目录。打开double_pinyin_pyjj.schema.yaml。

往下翻到punctuator:段,默认是这样的:

punctuator:
  import_preset: default

实际上,各种特殊符号的定义,默认已经放在了symbols.yaml。如果打开默认的luna_pinyin.schema.yaml,同样的段落是这样的:

punctuator:
  import_preset: symbols

它的意思是,使用symbols.yaml文件中的预设。

所以,为了不影响默认luna拼音的设置,使用我们自己的设置,我们将symbols.yaml复制一个出来,名字假设就叫“mysymbols.yaml"。同时,将double_pinyin_pyjj.schema.yaml的punctuator段改成:

punctuator:
  import_preset: mysymbols

然后,我们就可以在mysymbols.yaml中愉快地编辑了。

找到punctuator段,分别定位到full_shape和half_shape中的'\',将全角和半角的定义都修改为唯一的“、”:

    '\' : {commit: 、 }

注意缩进。yaml格式每层缩进两个空格,可以参照前后文,不要搞错。

重新部署后,会发现,“\”已经变成了唯一的“、”了。

2、解决特殊字符问题

此时会发现,在默认的luna输入法下有效的类似“/xl”可以调出希腊字符的操作,此时还没有生效。问题在于还有一个设置没有修改。

打开程序文件夹\data下的double_pinyin_pyjj.schema.yaml,定位到recognizer:段。在 patterns:中添加一行:

    punct: '^/([0-9]0?|[A-Za-z]+)$'

添加之后,整个recognizer:应该变成这样:

recognizer:
  import_preset: default
  patterns:
    punct: '^/([0-9]0?|[A-Za-z]+)$'
    reverse_lookup: "`[a-z]*'?$"

通过定义一个punct的正则表达式,就可以识别形如“/xl”这样的输入模式了。

进一步地,我们可以编辑mysymbols.yaml,自定义我们喜爱的各种特殊符号。

我保留的特殊字符:

标点:/bd
数字:/0~/9
罗马:/lm
罗马大写:/lmd
箭头:/jt
上标:/sb
下标:/xb
希腊:/xl
数学:/sx
货币:/hb

四、其他输入习惯设置

打开用户名文件夹的“default.custom.yaml”,在patch中增加以下内容:

patch:
  "ascii_composer/good_old_caps_lock": true
  "ascii_composer/switch_key":
    Caps_Lock: clear
    Control_L: noop
    Control_R: noop
    Shift_L: commit_code
    Shift_R: inline_ascii
  "switcher/hotkeys":
    - "Control+grave"

这样可以达到几个效果:当在中文模式下切换到英文模式时,按左侧shift切换到英文时,已经输入的英文会直接上屏;

由于F4另有作用(例如在Excel中锁定公式),取消了F4的快捷键设置,只保留了“ctrl+`”。