| tags: [ InputMethod ] categories: [ OS ]
鼠须管输入法介绍
鼠须管是一款 macOS 下的开源输入法,支持拼音、注音、仓颉、五笔等输入方案,它底层是 RIME/中州韵输入法引擎,被誉为神级输入法。我大约一两年前曾经尝试过鼠须管,但这个东西真不是那么小白友好,居然没有自带图形配置界面,简单尝试后放弃了。macOS 自带的拼音输入法不知道怎么回事,最近大半年来候选词经常出现明显的失误,前两天心血来潮遂重新捡起来鼠须管,研究了下,终于成功的并且舒服的用起来了😀
下载鼠须管后安装,注销再登录,便可以开始使用了(其实好像不重新登录也行,但安装程序提示要重新登录)。鼠须管的系统部分安装在 /Library/Input\ Methods/Squirrel.app/Contents/
下面,其中 MacOS
子目录下是其可执行程序,包括重要的rime-install
工具,SharedSupport
是其各种输入方案的配置文件。
鼠须管的用户部分安装在 $HOME/Library/Rime/
下面:
Rime
├── build/ ### Rime 真正使用的配置文件
│ └── squirrel.yaml
├── installation.yaml
├── luna_pinyin.userdb/ ### Rime 的用户输入选词组成的词库
│ ├── 000005.ldb
│ ├── 000009.log
│ ├── CURRENT
│ ├── LOCK
│ ├── LOG
│ ├── LOG.old
│ └── MANIFEST-000007
└── user.yaml
按 Ctrl-Space 切换到鼠须管输入法,其输入法菜单长下面这个样子,其中最重要的菜单是 Deploy
,鼠须管的配置文件采用 YAML 格式,这个格式支持 include、patch 等特殊语法,Deploy
实际就是编译原始的配置文件片段,生成最终的规范完整的 YAML 格式配置文件到 $HOME/Library/Rime/build/
目录下,所以每次修改配置文件后都要记得重新 Deploy
下才能生效。
鼠须管支持大量的输入方案,按 F4或者Ctrl-` 调出输入方案列表:
鼠须管默认使用“朙月拼音”正体中文输入法,候选菜单纵向排列,最多五个候选,上面的菜单实际翻页后还有五项,包括仓颉、五笔、地球拼音等。这里面第二项的 中/半/漢/。
是特殊的,它并不是一种输入方案,而是当前输入方案的一些选项,或者开关,第一个开关是中英文切换(按左Shift切换),第二个是半角全角切换,第三个是正体字简化字切换,第四个是中英文标点切换。
对于简体中文拼音输入来说,可以使用朙月拼音・简化字
或者朙月拼音
然后切换简化字选项,推荐使用前者,因为它有一些特殊设定。
鼠须管有一个比较特别的功能,称为 app_options
,它会根据当前切换到的应用,自动设置一些选项,比如在 iTerm2 里Ctrl-Space到鼠须管,或者从其它窗口切回 iTerm2,则默认是英文输入状态,还要按一下左Shift才进入中文输入状态,这是考虑到在 iTerm2 中绝大部分时候都是只输入英文,我之前第一次用鼠须管时,还以为这是个 bug😅
鼠须管的自定义配置很简单,在 /Library/Input Methods/Squirrel.app/Contents/SharedSupport
下有主要有三类配置文件:default.yaml
, squirrel.yaml
, XXX.schema.yaml
,分别对应中州韵引擎默认配置、鼠须管默认配置、某个输入方案默认配置,修改它们的做法是在 $HOME/Library/Rime/
下建立对应的 default.custom.yaml
、squirrel.custome.yaml
, XXX.custom.yaml
文件进行定制,这些自定义文件格式在官方文档定制指南里有描述。
下面是我的一点个人自定义设置,达到舒服的简体中文输入体验。
首先,按 Ctrl-`选择 朙月拼音・简化字
,然后在 $HOME/Library/Rime
下建立 default.custom.yaml
和 squirrel.custom.yaml
文件:
# default.custom.yaml
# 使用九个候选词,而非默认的五个候选词
patch:
menu/page_size: 9
# squirrel.custom.yaml
# 候选词菜单横向排列,而非默认的纵向排列;
# apathy 配色方案需要花园明朝字体以显示生僻字,在 http://fonts.jp/hanazono/
# 下载 hanazono-20170904.zip,将字体放入 ~/Library/Fonts/ 下。
patch:
style/horizontal: true
style/color_scheme: apathy
可以对照下各自的默认配置文件看看更多的配置选项。
接下来,在终端里使用下面命令配置颜文字(Emoji)输入,macOS 自带的拼音输入法支持这个,没有的话还是很不适应的😀
# https://github.com/rime/rime-emoji
# 为“朙月拼音・简化字”、“朙月拼音”、“朙月拼音・语句流”增加颜文字支持
/Library/Input\ Methods/Squirrel.app/Contents/MacOS/rime-install emoji
/Library/Input\ Methods/Squirrel.app/Contents/MacOS/rime-install \
emoji:customize:schema=luna_pinyin_simp
/Library/Input\ Methods/Squirrel.app/Contents/MacOS/rime-install \
emoji:customize:schema=luna_pinyin
/Library/Input\ Methods/Squirrel.app/Contents/MacOS/rime-install \
emoji:customize:schema=luna_pinyin_fluency
配置完后别忘了使用 Deploy
菜单让配置生效,然后可以体验下了:
朙月拼音自带的词典比较小,可以从 https://github.com/rime-aca/dictionaries 下载更丰富的词典。
如果想删除用户词典中失误记录的词组,可以高亮候选词,按 Shift+Fn+Delete删除它。
鼠须管的错误日志在 $TMPDIR/rime.Squirrel.*
。
最后,来点高级货。
自定义短语,比如将 wtf
替换为 怎么回事儿!
:在 $HOME/Library/Rime/custom_phrase.txt
中写入三列,以制表符分隔,第一列是目标短语,第二列是缩写,第三列是可选的权重。
自定义词典,比如额外的人名列表,除了可以像 rime-aca/dictionaries 那样补充固定词典,也可以补充用户词典:编写一个 dict.txt 文件,以制表符分割的三列,第一列是词组,第二列是注音,多音节以空格分隔,第三列是权重,可以写个 1。
# 先切换到其它输入法,然后 pkill Squirrel 杀掉鼠须管进程,让其释放用户词典的锁
# 在这个目录下 --list 才能正常工作
> cd ~/Library/Rime
# 只有一个词典
> /Library/Input\ Methods/Squirrel.app/Contents/MacOS/rime_dict_manager --list
luna_pinyin
# 导入额外的词组
> /Library/Input\ Methods/Squirrel.app/Contents/MacOS/rime_dict_manager --import \
luna_pinyin ~/dict.txt
本文参考了 「鼠须管」的调教笔记。