鼠须管安装及简单配置

输入法作为一个入口,能掌握和得到的数据很多,比如但不限于密码,聊天文字,不合时宜的文字等等。所以,一般情况我是不会用第三方的闭源输入法。随着iOS12,对于双拼的系统层面的支持,从此我就变成了原生输入法。用了这么久觉得一切都挺好,尤其微软拼音在Win10下的表现令我挺意外。至于苹果上,iOS上面的双拼(微软双拼)键盘布局有点让人不开心,以及MacOS原生输入法切换中/英文的Caps的按键有点奇葩之外(尤其是在HHKB上,需要Fn+Tab),其余我都挺喜欢。但是不是有更好的选择。答案当然是肯定的,那就是RIME

RIME输入法再Mac下面叫鼠须管,它的定制性很强,以至于挡住了一部分人。这篇文章也是简单的说一下,如何调教出来一个比较好用好看的输入法。

基本使用

这里可以下载到最新版本的鼠须管,安装过程很简单。完成后,找各地方切换到这个输入法来使用使用。初次的情况它会默认是繁体的拼音输入法。需要按Ctrl+``或者F4来触发选择菜单。在这里可以将繁体修改成简体。

进一步

其实目前市面上已经有了很多输入法方案,例如五笔输入法,双拼的各种版本,仓颉输入法等等。这些都可以在鼠须管里面通过配置文件实现,现在知道为何它强大了吧。它提供了一个完整的输入框架,可以再上面定制属于自己的输入法。

在系统状态栏右键选择输入法选项,会有「Deploy」和「Settings」选项。通过Settings我们可以来到鼠须管的配置文件地址/Library/Rime/。在这里就会有该输入法的所有yaml配置文件。

一般情况,我们需要定制化的文件,都会增加一层后缀.custom,like this:

default.yaml -> default.custom.yaml

如果没有上述的文件,可以自己新建一个。例如我想要把每一页的文字候选修改为5个,我首先需要新建一个default.custom.yaml文件,然后输入:

1
2
patch:
"menu/page_size": 5

这里需要注意的是,yaml的语法需要在key/value之间添加: (冒号和空格),如果忘记写空格会报错。

如果我想修改一下F4出来的菜单,也可以新加入一个属性:

1
2
3
schema_list:
- schema: double_pinyin_mspy # 微軟雙拼
- schema: emoji # emoji表情

double_pinyin_mspy是我自己下载的一个输入法,具体的方案名称可以参考这里,双拼的输入方案可以在这里下载。我因为基本都是输入汉字,所有这里我做了一下改动:

1
2
3
4
5
6
7
8
9
10
11
switches:
- name: ascii_mode
reset: 0
states: [ 中文, 西文 ]
- name: full_shape
states: [ 半角, 全角 ]
- name: simplification
reset: 1 # reset可以给该属性设定一个默认值,即states[reset]
states: [ 漢字, 汉字 ]
- name: ascii_punct
states: [ 。,, ., ]

正如上面所说,如果我想配置一个属性,我可以新建一个文件double_pinyin_mspy.custom.yaml添加一个属性:

1
2
patch:
translator/preedit_format: {} # 输入双拼码的时候不转化为全拼码,即haode->hkde。

每一次完成修改之后,都需要重新部署一遍。在系统状态栏右键选择输入法选项选「Deploy」。

自定义皮肤

鼠须管可以通过设置配色,来改变输入框的样式。我们需要新建一个squirrel.custom.yaml,RIME内置了几个样式就挺不错的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 適用於【鼠鬚管】0.9.13+
# 位置:~/Library/Rime/squirrel.custom.yaml
# 用法:想要哪項生效,就刪去該行行首的#字符,但注意保留用於縮進的空格

patch:
us_keyboard_layout: true # 鍵盤選項:應用美式鍵盤佈局
show_notifications_when: growl_is_running # 狀態通知,默認裝有Growl時顯示,也可設爲全開(always)全關(never)
style/horizontal: true # 候選窗横向顯示
# style/inline_preedit: false # 非內嵌編碼行
# style/font_face: "儷黑 Pro" # 我喜歡的字體名稱
style/font_point: 14 # 字號
style/display_tray_icon: true # 顯示托盤圖標
style/corner_radius: 5 # 窗口圓角半徑
style/border_height: 0 # 窗口邊界高度,大於圓角半徑才有效果
style/border_width: 0 # 窗口邊界寬度,大於圓角半徑才有效果
style/line_spacing: 1
style/color_scheme: lost_temple # 選擇配色方案

# 註:預設的配色方案及代碼(指定爲 style/color_scheme )
# 系統默認色系 - native
# 碧水 - aqua
# 青天 - azure
# 明月 - luna
# 墨池 - ink
# 孤寺 - lost_temple
# 暗堂 - dark_temple
# 星際我爭霸 - starcraft
# 谷歌 - google
# 曬經石 - solarized_rock
# 简约白 - clean_white

我比较喜欢横版布局,加上lost_temple的浅绿色很棒。

例外程序

之前用百度输入法的时候,有一个功能我非常喜欢。就是可以自定义例外程序,在这些程序里面使用英文输入法。例如,我经常需要打开iTerm2或者VS Code,我希望我在用这两个程序的时候,输入法默认切换到英文输入。这个功能对于程序员来说我觉得挺重要。我们也可以通过定制鼠须管来实现。

squirrel.custom.yaml中,添加

1
2
3
4
5
app_options/com.apple.Xcode:
ascii_mode: true # 英文模式

app_options/com.apple.Xcode:
{} # 不做改变,当前是中文就是中文,英文同理

这里需要注意的是这里是Info.plist的名称,做iOS开发的应该都明白。Mac上面我们可以通过下面的命令获取:

1
2
osascript -e 'id of app "Finder"'
com.apple.finder

将Finder提换成你需要自定义的软件即可。贴一下我常用的软件配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
app_options/com.apple.Xcode:
ascii_mode: true
app_options/com.googlecode.iterm2:
ascii_mode: true
app_options/com.google.android.studio:
ascii_mode: true
app_options/com.jetbrains.pycharm:
ascii_mode: true
app_options/com.microsoft.VSCode:
ascii_mode: true
app_options/org.vim.MacVim:
ascii_mode: true
app_options/com.velestar.vssh.osx:
ascii_mode: true
app_options/com.runningwithcrayons.Alfred-3:
ascii_mode: true

别忘记,保存文件后,Deploy

Enjoy!

Ref:

-------------The End-------------
请我喝一杯啤酒~