macOS安装配置RIME-鼠须管输入法
Table of Contents
RIME输入法简介
这个文档可以让你对RIME输入法引擎有一个全局的了解:Rime 輸入方案。
网页版RIME输入法:My RIME。
什么是RIME输入法?
RIME一个开源(github)的可高度定制的输入法(框架),RIME是一个递归缩写:RIME Input Method Engine(计算机领域有很多递归缩写,比如GNU — GNU’s Not UNIX、PHP – PHP HyperText Preprocessor)。
之所以说它是一个输入法框架(或引擎),是因为它可以高度定制,你甚至可以用它创造自己的输入法(其实输入法的根本就是词库而已)
为什么要使用鼠须管输入法?
有三个原因:
- 1、鼠须管是开源的软件,它是一个输入法引擎(而不仅仅是输入法),你可以用它安装或自己定制任何输入法(例如各种方言输入法),由于高度可定制,你甚至可以用它创造一个自己的输入法,不像一些公司出的输入法软件,没那么多的定制性;
- 2、你在电脑上输入的所有字符都是由输入法输入的,为了避免可能存在的输入法偷偷上传数据,故不使用百度/搜狗之类的输入法。
- 3、我是打五笔的,我经常需要自己造词或删除原词库中的词,而鼠须管更方便我造词以及手动调整词频。
跨平台
RIME在Win/Mac/Linux/Android/iOS都可以使用,不过三个平台的名字有点不一样,但配置都是相通的。
如下图所示,RIME在三平台的名字不一样,以下是RIME官方维护的版本,除此之外还有很多非官方维护版本,可以看这里:
虽然Linux版本叫中州韵,但整个RIME输入法也被称为“中州韵输入法引擎”,名称的由来是因为该软件作者“佛振”是河南人,而河南古时候叫中州,故名中州韵。
RIME输入法使用配置专用语言——yaml语言来写配置,非常方便,比json方便1万倍不止。
RIME的配置文件基本一样,除了平台相关的会有不一样,比如macOS有一个叫squirrel.yaml
的配置文件,专门用于配置Mac上的Squirrel.app
的一些皮肤及软件本身的配置,而在Windows上与squirrel.yaml
具有相同作用的配置文件叫weasel.yaml
,在Linux上这个文件叫什么我就不知道了,因为没有安装过,但基本上,这个配置其实就是平台软件名.yaml
。其它配置都是通用的了,比如词库什么的。
安装鼠须管输入法
命令安装(推荐)
运行以下命令安装
brew install --cask squirrel
注意安装过程需要输入管理员密码,并且输入后你可能会发现没有反应,其实它是在配置东西,稍等一会儿就好了。
安裝后需要重启电脑,以及可能需要自己去输入法那儿删掉重新添加。
Rime
├── build
├── installation.yaml
├── luna_pinyin.userdb
└── user.yaml
手动安装
在下載及安裝页面,找到macOS
,点击“下载”两字即可下载
无论是命令安装还是手动安装,一般安装后,点开右上角输入法图标即可看到多了一个“鼠须管”输入法,如果你是英文系统会显示“Squirrel”(是松鼠的意思),如果没有出现,你需要“登出”(即logout)一下系统再进入,并不需要重启系统,当然你重启系统也行,因为重启系统,其实也是logout再login了。
鼠须管输入法就五个菜单
– Deploy
部署,用于修改配置后让新配置生效
– Sync user data
同步用户自定义数据到指定目录(如iCloud中的目录,这样就可以通过iCloud来做同步了)
– Settings
打开配置文件所在文件夹(RIME输入法没有配置界面,都是直接修改配置文件)
– Rime Wiki
就是查看文档
– Check for updates
就是查看有没有更新
卸载Squirrel输入法
卸载其实就是删除程序文件以及配置文件
# 删除输入法程序目录
sudo rm -rf /Library/Input\ Methods/Squirrel.app
# 删除个人配置文件目录
sudo rm -rf ~/Library/Rime/
当然如果是brew安装的,也可以用brew来删除
brew uninstall --cask squirrel
添加输入法方案
详细教程见:Plum-Packages、Rime-自己设计输入法、Schema.yaml详解、鼠须管配置指南、Rime各种文档。
當你你安裝搜狗輸入法軟件后,可以添加很多輸入法(如下圖是搜狗手机输入法),即一個搜狗輸入法軟件可以支持很多輸入法,同理,Rime这个“输入法软件”也一樣支持很多輸入法,這些輸入法在Rime中叫“輸入法方案”
Rime默认自带两种输入方案,一种是明月拼音,另一种是注音(如下图所示), 只不过明月拼音又分三种:繁体(默认)、简体和语句流
安裝输入方案下载器
想要添加輸入法方案,我們先要下載輸入法方案安裝工具plum(中文名叫“東風破”)。
在终端进入到配置目录
cd ~/Library/Rime/
下载Rime的配置管理工具——plum(中文叫“东风破”)
git clone https://github.com/rime/plum.git
其實並不需要把plum安裝到這個地方,只是~/Library/Rime/
是Rime配置文件本地存放文件夾,所以我就放這兒了。
下载输入方案的方法
进入到刚刚下载的“东风破”(即plum
)文件夹里
cd plum
运行以下命令(这一步需要从github下载文件,你可能需要先设置一下走代理,否则可能下载不下来)
bash rime-install --select :all lotem/rime-forge/lotem-packages.conf
它会列出所有可以安装的方案,让你选择要安装哪些,目前(2023-07-08)有32种
其中前22个可以在这里找到它们都对应什么输入法,安装位置在macOS中会安装到~/Library/Rime/
目录下。
至于从第23)
开始,lotem/rime-
开头的,是rime作者佛振自己搞的,见这里,如果你不想安装23之后的,安装命令可以写成(这样比较快)
bash rime-install --select :all
选择数字每次只能选一个,选完按回车,但是它不会马上安装,而是让你继续选择,如果你都选择好了,确定要安装你选的方案了,则输入英文的句点.
,然后按回车,就会开始安装你前面选择的数字对应的输入法方案。其实所谓的安装,就是Plum会帮你去github上clone下来。
选择要安装的输入方案
首先,prelude和essay-八股文是一定要安装的,因为它是其它方案的基础,它们并不是输入法方案,而只是配置文件。
如果你只用拼音输入法,那么你除了必须要安装的prelude和essay-八股文,再安装一个“明月拼音”(即“luna-pinyin”)就可以了。
我的话,会用到比较多输入法(主要是平时测试用),所以我要安装方案,除了必须安装的prelude和essay-八股文,还有这些输入法:明月拼音、粤拼输入法、双拼输入法、86版五笔输入法、五笔反查输入法(它不作为一种输入法,只用于五笔反查)、emoji(不是输入法,只是用于支持emoji)。
以下是我要安装的输入方案(部分为配置文件,不是输入方案)
5)
prelude,基础配置,包括以下四个文件
Installing: default.yaml
Installing: key_bindings.yaml
Installing: punctuation.yaml
Installing: symbols.yaml
3)
essay-八股文,一个essay.txt文件,目前(2023-07-09)共有313021行,当然不是每行一个字,反正总共3.8M,可用于导入到词典文件xxx.dict.yaml中(use_preset_vocabulary: true
);1)
bopomofo,注音输入法,会安装以下四个文件;
Installing: bopomofo.schema.yaml # 注音方案文件
Installing: bopomofo_express.schema.yaml # 注音方案文件·快速
Installing: bopomofo_tw.schema.yaml # 注音方案·台湾
Installing: zhuyin.yaml # 注音模版
4)
luna-pinyin,明月拼音输入法,会安装以下7个文件
Installing: luna_pinyin.dict.yaml # 字典文件
Installing: luna_pinyin.schema.yaml # 明月拼音方案文件
Installing: luna_pinyin_fluency.schema.yaml # 明月拼音语句流输入方案文件
Installing: luna_pinyin_simp.schema.yaml # 明月拼音简体
Installing: luna_pinyin_tw.schema.yaml # 明月拼音台湾繁体
Installing: luna_quanpin.schema.yaml # 全拼,不是输入法,用于形码反查拼音用
Installing: pinyin.yaml # 明月拼音模版文件
9)
cantonese,粤拼输入法,真正的输入法方案文件只有两个,一个是ipa,一个是非ipa;
Installing: jyut6ping3.chars.dict.yaml # 字典文件
Installing: jyut6ping3.dict.yaml # 最終字典文件,由其它所有字典文件合成
Installing: jyut6ping3.lettered.dict.yaml # 字典文件
Installing: jyut6ping3.maps.dict.yaml # 字典文件
Installing: jyut6ping3.phrase.dict.yaml # 字典文件
Installing: jyut6ping3.schema.yaml # 粵拼輸入法方案文件(支持有聲調和無聲調)
Installing: jyut6ping3.words.dict.yaml # 字典文件
Installing: jyut6ping3_ipa.schema.yaml # 粵拼輸入法ipa版(ipa爲國際音標)
Installing: symbols_cantonese.yaml # 符號
Installing: essay-cantonese.txt # 粵語詞彙表,會被最終字典文件引用
Creating directory: /Users/bruce/Library/Rime/opencc # OpenChineseConverter,開源中文轉換器,可用於陸,港,澳,臺之間的文字轉換
Installing: opencc/HKVariantsFull.txt # opencc的文件
Installing: opencc/t2hkf.json # opencc的文件
11)
double-pinyin,双拼(包含多种双拼输入法方案);
Installing: double_pinyin.schema.yaml # 自然码双拼
Installing: double_pinyin_abc.schema.yaml # abc双拼
Installing: double_pinyin_flypy.schema.yaml # 小鹤双拼
Installing: double_pinyin_mspy.schema.yaml # 微软双拼
Installing: double_pinyin_pyjj.schema.yaml # 拼音加加双拼
12)
emoji,emoji表情输入法
Installing: emoji_suggestion.yaml
Installing: opencc/emoji.json
Installing: opencc/emoji_category.txt
Installing: opencc/emoji_word.txt
16)
pinyin-simp,用于五笔反查;
Installing: pinyin_simp.dict.yaml # 词典文件
Installing: pinyin_simp.schema.yaml # 方案文件
21)
wubi,86版五笔输入法,其中反查功能为先输入z
,然后就可以输入拼音,这样就能通过拼音反查五笔编码了
Installing: wubi86.dict.yaml # 词典文件
Installing: wubi86.schema.yaml # 方案文件·简体
Installing: wubi_pinyin.schema.yaml # 方案文件·五筆拼音混输,依赖pinyin-simp
Installing: wubi_trad.schema.yaml # 方案文件·繁体
添加输入方案
前面已经下载好了输入方案,现在我们需要把下载好的输入方案添加到鼠须管输入法中,添加输入方案其实也叫定制,这两篇文章挺详细:定制指南1、定制指南2。
规则是这样的:
- 1、在
~/Library/Rime/
中找到你定制功能要修改的文件,比如添加输入方案就要修改default.yaml; - 2、我们不直接修改default.yaml,而是新建一个名称为default.custom.yaml的文件(即在原文件名基础上加一个
.custom
); - 3、default.custom.yaml文件的写法为:
- 1)第一行为注释,一般写文件名或文件路径;
- 2)后面空一行,写一个patch项,然后把default.yaml中你想修改的配置项放到patch下(上下级关系要换成用
/
的方式),这样你的自定义文件中的配置项,就会覆盖原配置文件中的配置项;
我的default.yaml改成了这样
# ~/Library/Rime/default.custom.yaml
patch:
# 方案列表(即输入法列表)
schema_list:
- schema: wubi86 # 86版五笔
- schema: wubi_trad # 86版五笔-繁体
- schema: double_pinyin_flypy # 小鹤双拼
- schema: bopomofo_tw # 注音-台湾繁体
- schema: luna_pinyin_simp # 明月拼音简体
- schema: luna_pinyin_tw # 明月拼音台湾繁体
- schema: jyut6ping3 # 粤语拼音(粤拼)
# 显示方案选单(即输入法列表)的快捷键
switcher/hotkeys:
- Control+grave
- Control+Shift+grave
# Command需要写成Super,Option要写成Alt
- Super+Alt+grave
- Alt+Shift+grave
- Super+Control+grave
- F4
# 设置按左shift键上屏并切换到英文输入状态
ascii_composer/switch_key/Shift_L: commit_code
# 设置按右shift键上屏并切换到英文输入状态
ascii_composer/switch_key/Shift_R: commit_code
- 1、原文件(default.yaml)中上下级关系的选项,在patch中都用平着写,比如原文件的“hotkeys”是“switcher”的子级,在patch中就用
/
来分隔来表示上下级关系,写成switcher/hotkeys
,三级的也一样,继续在后面加斜杠,比如ascii_composer/switch_key/Shift_L
; - 2、我们看到default.yaml中有schema_list配置项,这个叫“方案选单”(即“输入法列表”),我们在default.custom.yaml的patch中重新定义schema_list列表的值,这样就会覆盖default.yaml中schema_list中的值;
scheme_list列表中的每个值都代表一个输入法方案,都代表~/Library/Rime/
下的一个scheme文件,对应关系如下:
- wubi86 => wubi86.schema.yaml
- wubi_trad => wubi_trad.schema.yaml
- double_pinyin_flypy => double_pinyin_flypy.schema.yaml
- bopomofo_tw => bopomofo_tw.schema.yaml
- luna_pinyin_simp => luna_pinyin_simp.schema.yaml
- luna_pinyin_tw => luna_pinyin_tw.schema.yaml
- jyut6ping3 => jyut6ping3.schema.yaml
发现没,scheme_list中的全部名称都是用的方案文件名前面部分的名字,即去掉后面的.schema.yaml
后剩下的部分。
所以,你在default.custom.yaml的scheme_list方案列表里写的方案必须在~/Library/Rime/
下有对应的方案文件,而且方案并不是单独一个方案文件,还可能会包含字典文件及其它文件等等,怎么以下载方案,前面下载输入方案中已经说过了。
修改了配置后,要在顶部工具栏中找到输入法图标,点击Deploy
(中文应该叫“部署”),注意只有你选中“鼠须管”(英文“Squirrel”)的情况下再点击才会有这个菜单
注意: 后续的所有修改配置文件的地方,都需要在修改完后点这个“Deploy(部署)”按钮都会生效。
其中拼音反查是按z键后再输入拼音,如图:
要在单独五笔、五笔拼音混输、五笔简入繁出之间切换,可以用control+`
切换(这个快捷键容易冲突,见这里)
修改配置原理
鼠须管自带默认配置在以下文件夹(即在Squirrel.app
里)
cd "/Library/Input Methods/Squirrel.app/Contents/SharedSupport/"
而个人配置是不能写在app里面的,因为如果写在里面的话,一更新,配置就丢了。实际上前面已经说过,个人配置是在这个文件夹里
cd ~/Library/Rime/
事实上这个文件夹里也是有默认配置的,另外我们用plum-东风破下载的配置。
对于文件名中没有schema
字样的,我们只需要把默认配置文件加个.custom
即可,对于文件夹名有schema
字样的,我们直接把schema
替换成custom
,如下表
默认 | 自定义 |
---|---|
/Library/Input Methods/Squirrel.app/Contents/SharedSupport/squirrel.yaml | ~/Library/Rime/squirrel.custom.yaml |
/Library/Input Methods/Squirrel.app/Contents/SharedSupport/default.yaml | ~/Library/Rime/default.custom.yaml |
~/Library/Rime/wubi86.schema.yaml | ~/Library/Rime/wubi86.custom.yaml |
在自定义配置中,我们是以补丁(patch)的形式来覆盖默认配置的,所以写法会略有不同。比如在~/Library/Rime/wubi86.schema.yaml
文件中有这一段配置
translator:
dictionary: wubi86
enable_charset_filter: true
enable_sentence: true
enable_encoder: true
encode_commit_history: true
max_phrase_length: 4
disable_user_dict_for_patterns:
- "^z.*$"
我们要在~/Library/Rime/wubi86.custom.yaml
文件中覆盖它的配置,是这么写的
# ~/Library/Rime/wubi86.custom.yaml
patch:
translator/dictionary: bruce # 使用自定义扁bruce
translator/enable_user_dict: false # 关闭词频调整
translator/enable_sentence: false # 关闭句子输入
translator/enable_completion: false # 是否启用逐键提示(true为启用)
translator/enable_encoder: false # 是否开启自动造词
translator/encode_commit_history: false # 是否对已上屏词自动造词
#translator/max_phrase_length: 7 # 最大自动成词词长
speller/max_code_length: false # 最长4码(与auto_select结合第五码上屏)
#speller/auto_select: true # 第五码顶字上屏
#speller/auto_select_unique_candidate: true # 无重码自动上屏
#speller/auto_clear: max_length # 空码且達到最長碼時確認清屏
patch
表示这是补丁(用于覆盖默认配置),比如translator/enable_sentence
对应wubi86.schema.yaml
文件中的enable_sentence
配置项,但是写法就变成了用斜杠/
来表示所属层级了。
即配置文件优先级为:
- 1、
~/Library/Rime/
中的文件会覆盖squirrel.app中自带的配置文件; - 2、
~/Library/Rime/
中的带.custom
的文件又会覆盖~/Library/Rime/
中不带.custom
的配置文件;
如果你不知道default.custom.yaml或squirrel.custom.yaml有什么选项,一方面可以在这里查,另一方面,你可以在默认配置文件夹/Library/Input\ Methods/Squirrel.app/Contents/SharedSupport
中对应的文件中查看有什么选项,比如default.custom.yaml对应默认配置文件夹中的default.yaml,squirrel.custom.yaml对应默认文件夹中的squirrel.yaml。
特别注意:有些人可能会好奇,为什么在patch中不能用原配置中换行和缩进的方式来表示上下级关系,而要用/
来表示?我一开始也好奇,事实上用换行缩进的方式确实也能用,但是实测会导致一些原配置文件中的配置失效,可能是由于用换行缩进表示上下级关系,会直接覆盖原配置文件对应的上级,导致该上级的下级全部被覆盖。
比如我实测wubi86.scheme.yaml,我自己添加了一个wubi86.custom.yaml,我在wubi86.custom.yaml中使用换行缩进的方式表示上下级,就导致五笔的“增广”开关不管用,而同样的配置换成用/
来表示上下级,增广开关就正常。
各种定制
Rime vscode插件
Rimebow,已经可以用了,方便修改配置;
vrime,暂还未发布(2023-07-10);
以下是Rime的vscode插件“Rimebow”的截图
删除自动造词
敲一遍,等出来之后,按Fn+shift+delete
快捷键删除(注音macOS的delete就是退格键)。
关闭自动造词
translator/enable_encoder: false # 是否开启自动造词
translator/encode_commit_history: false # 是否对已上屏词自动造词
配置横向显示待选词
鼠须管默认是竖向显示的,但我相信有很多人不习惯这种竖向显示的方式(因为大多数输入法都是横向显示的)
在~/Library/Rime/squirrel.custom.yaml
中添加如下配置,其中起作用的是horizontal: true
# ~/Library/Rime/squirrel.custom.yaml
patch:
style:
color_scheme: clean_white
horizontal: true
inline_preedit: false
corner_radius: 5
注意: 凡是custom的配置文件默认都是不存在的,需要自己新建。
保存配置后,点击Deploy(部署)即可生效
另外需要注意,有些皮肤配置本身已经配置了horizontal: true
的,所以如果你像上边那样无论把horizontal
设置为true还是false都不起作用时,你就应该去看看你使用的皮肤配置了。
超出边框问题
在squirrel.custom.yaml中设置(要0.16.3版本后才有):
style/memorize_size: false
定制皮肤颜色
在/Library/Input Methods/Squirrel.app/Contents/SharedSupport/squirrel.yaml
中搜索preset_color_schemes
,就可以看到有很多默认的配色,我们可以在~/Library/Rime/squirrel.custom.yaml
去设置自定义的配色。
比如我喜欢clean_white
,我就把color_scheme
的值设置为clean_white
patch:
app_options:
{}
style:
# 设置皮肤颜色
color_scheme: clean_white
horizontal: true
inline_preedit: true
corner_radius: 5
当然,如果所有默认配色你都不喜欢,那就自己添加一种,怎么添加呢?首先前面说了,默认颜色是在Squirrel.app中的squirrel.yaml
文件里的,所以我们只需要在用户配置目录,即~/Library/Rime/
目录中新建一个squirrel.custom.yaml
(如果已经存在就不用新建了),然后在里面添加一种颜色配置就行了。
配置格式(前面配置原理已经说过,在覆盖原配置时,父子级要用斜杠来表示):
# 自定义主题颜色(tantsing是自定义的字符串,你写aaa、bbb也行,只要在引用的时候引用这个名字就行)
preset_color_schemes/tantsing:
author: Bruce
back_color: 0xE3E3E3
border_color: 0x000000
candidate_text_color: 0x000000
comment_text_color: 0x474747
hilited_back_color: 0x1A0791
hilited_candidate_back_color: 0x6F0B73
hilited_candidate_text_color: 0xE3E3E3
hilited_text_color: 0xE3E3E3
name: "丹青/Tantsing"
text_color: 0x000000
至于配置里的颜色,如果没有工具那肯定也非常麻烦,好在有一个可视化工具RIME西米,可以用来自动生成颜色配置。
怎样使用自定义的这个颜色呢?其实是一样的,把前面color_scheme
的值改为tantsing
即可。
添加/删除词组
由于我使用的是五笔,所以这里说的是五笔的,拼音的其实是一样的,只不过默认配置文件不同而已。
在以下几个文件中
# 纯五笔
~/Library/Rime/wubi86.schema.yaml
# 五笔拼音混输
~/Library/Rime/wubi_pinyin.schema.yaml
# 五笔简入繁出
~/Library/Rime/wubi_trad.schema.yaml
都有这样的配置
translator:
dictionary: wubi86
该配置的意思是使用当前目录下的wubi86.dict.yaml
这个文件作为五笔词库。
但是前面说过,我们可以覆盖默认配置。新建以下几个文件
# 纯五笔
~/Library/Rime/wubi86.custom.yaml
# 五笔拼音混输
~/Library/Rime/wubi_pinyin.custom.yaml
# 五笔简入繁出
~/Library/Rime/wubi_trad.custom.yaml
并分别在每个文件里面修改默认配置(但需要把translator/dictionary的层级关系用斜杠来表示)
# ~/Library/Rime/wubi86.custom.yaml
patch:
translator/dictionary: bruce # 使用自定义词典bruce
像上面这样设置,就代表它会去加载bruce.dict.yaml
文件作为五笔词库,但该文件并不存在,所以我们要新建一个。
自定义词典
我们新建一个bruce.dict.yaml
,并填写以下内容
# bruce.dict.yaml
---
# name值用于被translator/dictionary识别
name: bruce
version: "2020.06.27"
sort: by_weight
use_preset_vocabulary: true
# 表示继承wubi86这个词库的所有内容
import_tables:
- wubi86
...
# 自定义词组
测测 imim 1
斜杠 wtsa 1
可以看到,这里我写的name
值是bruce
,刚好对应文件名bruce.dict.yaml
的第一部分,并且这个名字也是被translator/dictionary: bruce
引用的。
另外要注意其中的import_tables
,表示引入其它的词库,我这里引入的就是wubi86词库,因为我是只是想在它的基础增加自己的一些自定义的词,而不是想完全定义自己的词库。
另外要解释一下---
与...
,这两个符号是yaml语言的标记,在一个yaml文件中,可同时包含多个文件,并用---
分隔。选择性的符号...
可以用来表示文件结尾。
上边的“测测”、“斜杠”都是自定义词组,它的结构是词组 编码 权重
,当重码时,权重大的会出现在前面,但目前我们不需要这个,所以都写1就行(也可以用小数或百分数表示,有重码时,如果我想把某个词往后放,就用0.9,因为它比1小,所以就会排后面)。
特别注意: 词组、编码、权重之间的空格其实并不是空格,而是“一个制表符”,一般编辑器你按tab它会把制表符自动转换成空格,这将会导致你这个配置无效,所以一定要把空格换成制表符。
一般情况下,编辑器都是不显示制表符、空格等这些空的符号的,需要你自己设置成显示才能看见,比如我用的sublime text3,就需要点击Preferences
→Settings
然后在弹出的窗口中右侧User
部分添加一个"draw_white_space": "all"
配置,注意由于是在json最后加的,所以要记得前面要加个逗号,否则就会报错(修改配置后貌似要重启一下sublime)
然后就能看见,一个空格是一个点,我们要做的是把空格替换为制表符即可,无论你输入了多少个空格,词组、编码、权重之间,只能间隔一个制表符(如下图)
特别注意,就算你复制制表符再粘贴,它也会变成空格(除非你设置了编辑器不把制表符替换为空格)。其实我自己平时修改都是直接用vim来修改,vim的yy
->p
复制,倒是不会把制表符自动替换成空格。
最后,你需要点击一下Squirrel输入法菜单里的“部署(deploy)”按钮才会生效(快捷键control+option+`
,反引号就是数字1左边,Tab上边那个键),因为它要重新读取一下你修改后的配置并放到内存里。
删除不要的词组: 就我的86版五笔来说,在wubi86.dict.yaml
里直接搜索你不要的那个词组,删除那一行,再部署(Deploy)一下就行了。
设置shift上屏
鼠须管输入法在默认情况下:
- 中文状态输入英文后,按shift键是不能直接把输入的英文上屏的(按回车才可以)
- 必须在没有输入的情况下按shift键,才能在中英文输入状态切换(在中文状态下已经输入英文但还未上屏时就无法切换)
- 我在很多时候,都需要shift把当前英文上屏并直接切换到英文输入状态。
基于以上原因,我们需要把shift设置为在中文输入状态下输入了英文时,按shift能上屏并切换为英文。
在default.custom.yaml
文件中使用以下配置即可
# ~/Library/Rime/default.custom.yaml
patch:
schema_list:
- schema: wubi86
# 设置按左shift键上屏并切换到英文输入状态
ascii_composer/switch_key/Shift_L: commit_code
# 设置按右shift键上屏并切换到英文输入状态
ascii_composer/switch_key/Shift_R: commit_code
设置为双行显示
单行显示时,输入的字母不在输入法的框里(而是在编辑器上)
双行显示,输入的字母在输入法的框里
在配置文件夹下,找到squirrel.custom.yaml
文件(如果文件不存在就要新建这个文件),并添加以下内容(实现单行双行显示的是inline_preedit
选项)
# ~/Library/Rime/squirrel.custom.yaml
patch:
app_options:
{}
style:
color_scheme: clean_white
horizontal: true
# true为单行显示,false为双行显示
inline_preedit: false
corner_radius: 5
标点符号问题
默认情况下,输入顿号、左右书名号、左右方括号等符号的时候,它会要你选择,而不是直接输出,这对于很多人来说可能会很抓狂,比如对我来说就是,我需要的是直接输出而不是给这么多个给我选。
解决这个的方法,就是自己修改配置覆盖默认符号的配置。
首先,由于我是在五笔输入法下出现的以上情况,所以我要去我的五笔输入法方案文件wubi86.scheme.yaml中找到punctuator
,如下所示,发现它import的是“symbols”
punctuator:
import_preset: symbols
于是我们在~/Library/Rime/
中就要找symbals.yaml,正常情况是要把它复制一份为symbals.custom.yaml,但实测这个复制了是不管用的,所以直接改就好了。
以下是我修改的部分配置,用方括号括住的表示显示一组符号让你选,如果你不想选,就把方括号删掉,只剩下一个你想它直接输出的符号即可(主要是改half_shape,即半角部分)
half_shape:
',' : { commit: , }
'.' : { commit: 。 }
'<' : '《'
'>' : '》'
'/' : '/'
'?' : { commit: ? }
';' : { commit: ; }
':' : { commit: : }
'''' : { pair: [ '‘', '’' ] }
'"' : { pair: [ '“', '”' ] }
'\' : '、'
'|' : '|'
'`' : '`'
'~' : '~'
'!' : { commit: ! }
'@' : '@'
'#' : '#'
'%' : '%'
'$' : '¥'
'^' : { commit: …… }
'&' : '&'
'*' : '*'
'(' : '('
')' : ')'
'-' : '-'
'_' : '——'
'+' : '+'
'=' : '='
'[' : '【'
']' : '】'
'{' : '{'
'}' : ' }'
有时候修改配置并部署(Deploy)后,可能在有些编辑器里不生效(比如我用的sublime text3),这时候可以先试试切换一下到其它输入法再切换回来,有可能可以解决,如果不行,关掉那个编辑器再重启打开试试,实在不行就得登出系统再登录了(但一般不用)。
另外说一下,其实还有一个punctuaction.yaml,它其实是symbols.yaml的简化版,也就是说wubi86.scheme.yaml中引用的时候,可以把import_preset
值改为
punctuator:
import_preset: symbols
快捷键冲突问题
rime输入法内置很多方案,默认切换方案快捷键是control+`
,但macOS下很多快捷键都是用这个快捷键,比如浏览器tab之间的切换,还有在sublime text中也会用到这个快捷键,所以如果直接用默认快捷键,会遇到在其它软件内可以用该快捷键切输入方案,而在浏览器下死活切换不了的问题。
快捷键设置是在default.yaml文件中,前面添加输入方案中已经把default.yaml复制了一份,名为default.custom.yaml,其中以下的内容即为显示输入法列表的快捷键
# 显示方案选单(即输入法列表)的快捷键
switcher/hotkeys:
- Control+grave
- Control+Shift+grave
# Command需要写成Super,Option要写成Alt
- Super+Alt+grave
- Alt+Shift+grave
- Super+Control+grave
- F4
注:grave
就是反引号,就是Tab键上边那个键(按正规来说,应该叫“backstick”才对)。
备份同步用户配置
我们如果我们前面辛辛苦苦修改好的配置,一不小心弄丢了,那就该哭了,所以我们需要把自己修改的配置备份起来。
当我们点击鼠须管输入法菜单中的Sync user data
菜单时,就会把用户自定义的数据备份到~/Library/Rime/sync/
目录里
但是其实备份在那也不安全,毕竟硬盘坏了也就没了。实际上我们是可以配置让它备份指定目录的,在~/Library/Rime/
目录下找到installation.yaml
文件,在里面最后一行添加以下配置(如已存在则修改值就行)
sync_dir: "/Users/<你的用户名>/Library/Mobile Documents/com~apple~CloudDocs/RimeUserConfigSync"
- 1、注意要把
<你的用户名>
替换为你的用户名,方法:在启动台搜索“终端”→打开“终端”→在终端输入whoami
→按回车,即可显示你的用户名; - 2、
RimeUserConfigSync
是最后一级目录,据我测试,可以存在也可以不存在; - 3、添加以上配置后,再点击右上角输入法图标→点击
Sync user data
菜单,鼠须管就会把你的自定义配置全部同步到你指定的文件夹中,如果你指定的文件夹位于iCloud或Dropbox的同步文件夹之下,则你的文件夹会被同步到云上,这样就可以同步到你另一台电脑中(Mac同步到Windows也是可以的); - 4、本例这个是备份到iCloud文件夹下,这样的话可以利用iCloud的同步来防止备份内容的丢失;
- 5、不能新增
installation.custom.yaml
,这样会不起作用,也就是说installation.yaml这个文件是例外(因为其它配置都是加个custom)。
查看错误日志
$TMPDIR
是一个环境变量,如果deploy错误,错误日志会放在里面$TMPDIR
ls -l $TMPDIR | grep rime
相关链接
深蓝词库转换
鼠须管输入法的五笔输入配置
鼠须管输入法 五笔定制
极点五笔词库
用 RIME 定制输入法
Schema.yaml 詳解
