在五种不同系统上部署Rime并同步

【前言】

本文记录作者在Linux, Mac, Windows, Android(安卓)和iOS上部署开源输入法平台Rime(在三种PC平台上依次分别有中文名为中州韵、鼠须管和小狼毫),并实现跨平台同步词库的做法。

读者可能只使用一种PC操作系统,但请注意,有些通用的东西分散在Mac和Windows部分。

本文为原创记录,转载必须注明出处和本文网址。

 

【目录】

序 为什么要使用开源输入法
一、同步
二、在Linux上部署Rime(中州韵)
三、在Mac上部署Rime(鼠须管)
四、在Windows上实现全自动同步Rime用户词库
五、在安卓上部署Rime(同文输入法平台TRime)
六、在iOS上部署Rime(第三方实现)
七、结束语

 

序 为什么要使用开源输入法

主要有利于隐私安全。
使用开源输入法,可以避免某家具备大数据运作能力的大公司往网上发送用户的输入,这是很重要的一点。输入法是全局性软件,理论上可以获得用户的全部明文输入,甚至包括部分密码。使用“输入法 隐私”这样的组合在网上搜索,稍看几页,便会引起我们在警觉。
并不是说绝对不信任大公司,而是说,我就是不想心里有那么点忐忑,既然可以用开源软件,我就用开源软件。
其次是方便、灵活、可定制性强等等。不是说多数人都有修改代码的能力,至少某些框架类型的开源软件包括Rime确实给了用户很大在自由度,而且门槛也不高。
例如Rime默认附带了明月拼音等输入方案,从一开始就提供了输入能力;但如果用户不喜欢明月拼音输入法,尽可以不使用它,换上自己喜欢的粤拼、仓颉或者五笔,更可以自创一种输入方案。
更有一种方便,是饱受Chrome、Firefox等谜之执着地提示升级之苦的我所赞赏的,许多开源软件包括Rime并不以升级对话框烦人。在这一点上,许多不喜欢频繁更新系统的手机用户想必都大有苦水可吐的是吧。
因此,如果很喜欢Rime的某个特定版本,用户完全可以一直保留、使用着那个版本,直到海枯石烂天荒地老。
也有些朋友说,就是喜欢非赢利性软件的清爽——通常这样的软件不会提醒你去签到、打卡什么的。如此等等的好处,确实存在,虽然不算关键。

 

【正文】
一、同步

先写同步,是因为这可能是更多人更感兴趣的部分,毕竟许多人的手机加电脑的数量大于一。
我的做法是先编辑installation.yaml文件如下:

installation_id: "Linux"
sync_dir: /media/sda5/Rimeuser/sync

 其中sync_dir这一行是手工加上去的,这里的两个值是我在当前机器(Linux)上的设置,读者应按实际情况写入自己的设置值。例如我在Windows上的设置如下:

installation_id: "Win"
sync_dir: D:\Rimeuser\sync

保存文件,单击Rime图标-部署。

然后,我只要在sync目录下放置不同的文件夹,里面分别放好来自不同机器的***.userdb.txt,单击Rime图标-同步,即可把我在别的设备上的输入记录或曰个人输入词库同步到本机上。
我的同步目录窗口截图如下。

下文Windows部分会提及自动同步,有那么点儿门槛,不高。

 

二、在Linux上部署Rime(中州韵)

在Linux上我使用ibus-rime,安装命令如下:

apt install ibus fonts-wqy-microhei ibus-rime zenity im-config dbus-X11

 安装完成后,

ibus-setup

 设置一下ibus(这一步也许可以稍后才做,但先做了也不妨),把Rime加进去。

 

 

 

设置完成后,

im-config

把ibus设为默认输入框架。

接下来,我在 ~/.profile 这个文件里加入如下设置:

export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
ibus-daemon -drx

及后我在 /etc/profile 则不经意的发现有如下设置:

export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus

这两处设置应该有一处是冗余的,测试一下注释掉在 ~/.profile 这个文件里的四行代码,看起来没影响,总之这样的设置让我可以使用Rime在Linux上打字。

为了方便,以上一律使用root来执行,在你的Linux上,可能需要使用sudo命令。

重启之后,没有异常,应是安装成功了。
在某些Linux安装上,可能也需要在 ~/.bashrc 文件里加入上述代码,毕竟Linux的实现真是多姿多彩,所以此处的记录仅供参考。

 

三、在Mac上部署Rime(鼠须管)
很简单,直接到官网下载页下载安装文件即可。我们无须考虑不少介绍Rime的文章里提到的github,以及官网提到的Homebrew这样的词汇——那是供程序员看的,而我们中的大多数人未必都是程序员,忽略那些词汇并不会给我们造成伤害。

一步步跟着提示操作就可以完成安装,然后——“登出再登入”这样的说法可能有点奇怪——“重启电脑”这个操作应该大家都能理解了。经过这一步后,我们就可以用Rime来打字了。
默认会安装上明月拼音,繁体输出,5个候选词。按组合热键 Ctrl +  ` (在Esc和Tab键之间) 可弹出菜单,按 2 进入选择简体输出。
这三个默认选项不可能适合每一个人,这可以理解,于是我们来做一点修改。
打开Finder,按下组合热键 command+shift+g 呼出对话框,输入:

~/Library/Rime/

按回车就进入到用户目录。

在这里,通过随便复制任何一个yaml文件或txt文件(小点好),重命名为 default.custom.yaml ,总之,用什么方式都好,首先是要增加这个文件。
接下来用任意处理文本文件的程序打开新生成的 default.custom.yaml 文件,在很多电脑上双击就可以了。
现在,我们来编辑这个文件。
第一步,全选,清空原有内容,粘贴进以下内容:

patch:
    menu/page_size: 7
    schema_list:
        - schema: luna_pinyin_simp

这段代码表示:把每页候选词的数量改为7个,只使用明月拼音简体输出。

保存文件,点屏幕右上角输入法切换图标,在鼠须管的图标上单击以呼出菜单,在菜单里选择 Deploy (我的电脑系统语言是英文,在中文环境里估计就是“部署”),这个操作,就是很多文章里讲的“部署”或“重新部署”。
这时应会看到从右边滑出提示,会有两次,耗时大约几秒吧。
这样之后,再打字就能实现只用明月拼音简体输出、每页7个候选词的效果了。
如果想使用五笔86版,只需要在上述 default.custom.yaml 文件里加一句:
- schema: wubi86
即可(每次修改,保存后都要重新部署),配置别的输入方案也是同样的操作,但是前提是要先把想用的输入方案文件放进我们的用户目录(~/Library/Rime/)。
网上可以找到各种五笔、粤拼、吴语、仓颉乃至中古汉语拼音(李白表示想点赞)的输入方案文件,善用互联网吧。
有时候可能会因为各种原因,部署的操作没有如期滑出两次提示,则部署失败了,如果确认自己的操作没有错误,那么一般来说“登出再登入”或“重启电脑”都能自动解决某些奇怪的问题。

 

四、在Windows上实现全自动同步Rime用户词库
除了安装过程稍嫌漫长之外(可能是个别现象,和我的系统有关),安装很容易,无甚可记。
最新版本似乎不支持Windows XP,因此固守XP系统的读者不妨安装weasel-0.12.0.0即小狼毫0.12版,这可能是对XP系统支持较好的最后一个版本。

给初次安装用户的特别提醒:在Linux、Mac和Windows上,都可以同时按下Ctrl +  ` (在Esc和Tab键之间) 调出选择菜单。
在别的平台上我最多只做到了半自动同步(毕竟要手动点一下Rime图标-同步),但在XP系统上我实现了全自动。

先介绍一种做法。

1) 两台Windows电脑之间,可以借助允许指定同步目录的网盘如坚果云,把设定的同步目录(例如我设定的sync目录)及其子目录,作跨电脑同步。最简单的实现方式是:两台电脑的网盘同步目录结构保持一致,并包含你设定的词库同步目录。
2) 把这样一句代码

"C:\Program Files\Rime\weasel-0.12.0\WeaselDeployer.exe" /sync

保存为 rimesync.bat 文件(当然文件名随意,扩展名正确就行)。此处注意,你的Rime安装版本和目录可能跟我的不一样,那么就有可能要按你的情况作少量修改。保存之后,双击试运行这个文件,看看小狼毫是否在同步,如果不是,可能文件中的代码里有拼写错误,仔细检查并修改之。

3) 使用Windows的任务计划来自动执行这个 rimesync.bat 文件。自动同步起作用的时间取决于你的任务计划设定的运行周期。

我个人的做法有点不同。
我的组合套装是:Rclone + webdav + bat + 任务计划,我的bat脚本如下:

d:\rclone\rclone copy --max-age 24h rime:sync\Android D:\Rimeuser\sync\Android
d:\rclone\rclone copy --max-age 24h rime:sync\Mac D:\Rimeuser\sync\Mac
"C:\Program Files\Rime\weasel-0.12.0\WeaselDeployer.exe" /sync
d:\rclone\rclone copy --max-age 24h d:\Rimeuser\sync\Win rime:sync\Win
del D:\Rimeuser\sync\Mac\*.txt /q
del D:\Rimeuser\sync\Android\*.txt /q
del D:\Rimeuser\sync\Linux\*.txt /q

以上批处理命令按顺序先后做这几件事:下载云上的用户词库、启动Rime同步功能、上传同步后的本机词库、删除处理过的多余文件。

Rclone + webdav有点小小的门槛,请读者自行探索,或者选择手动同步。

参考网址:https://rclone.org/
坚果云免费用户的流量限制对于使用其webdav来辅助实现自动同步还是非常足够的。
做完Rclone + webdav + bat的部署后,设置Windows的任务计划就可以实现自动同步了。
上述脚本中,第3行用于启动Rime同步功能:

"C:\Program Files\Rime\weasel-0.12.0\WeaselDeployer.exe" /sync

在Mac和Linux上的对应命令我都没有查到,十分忧伤。

 

五、在安卓上部署Rime(同文输入法平台TRime)
在安卓上我使用同文输入法TRime,在Rime官网可以找到链接,也可以在酷安下载,因为开发者给出的下载链接之一就指向酷安。
因为有些版本的TRime安装后并没有输入方案,此时只可以打英文,若要打中文等,第一步是进入设置-回厂-全选-恢复

第二步通过电脑连接,或者网盘下载,把自己想用的输入方案的yaml文件下载到用户目录,部署后即可使用。

例如,如果从官方链接下载好了粤拼输入方案,则把其中的几个扩展名为 yaml 的文件放进手机里的用户目录就完成这一步了。

为了方便同步,你可能需要修改手机里的 installation.yaml 文件,修改内容请参考上面的 Linux 部分。

至此,按一下手机上的“部署”,部署后再次进入设置,把这个软件调教成你喜欢的方式。

这样,你就可以在手机上使用你热爱的输入方案,和你心仪的那人,讨论万有引力和相对论了。
安卓上可以借助FolderSync + webdav实现半自动同步,毕竟还是需要手动按几下的(输入-同步)。
FolderSync请读者自行探索,这不是个彻底免费的应用,因此不好多说。
同文输入法平台TRime相当让人放心,在我的使用中不但从未有崩溃过,而且看起来,这个应用根本就不打算访问互联网,这是个很好很重要的特性。

有网友重新打包了一个方便粤语使用者的同人作品——同文粤语输入法,默认安装粤拼(26键和九宫格)、仓颉、速成、明月拼音和五笔等,比起官方版本,确实方便了一些,尤其是可以选用九宫格的粤拼(名为九宫拼音),是一亮点。

 

六、在iOS上部署Rime(第三方实现)
在iOS上安装也很容易,但传输文件是通过局域网访问设备上的网页来实现,并且不能自动覆盖旧文件,这也许是各平台中最麻烦的方式了吧。
这也不是个彻底免费的应用,因此不也好多说。
但是它的逐步联想的功能还是值得称许的。

 

七、结束语
作者在摸索过程中多少也付出了一些努力,因此对于本文,欢迎符合下述要求的传播转载,并感谢这样的扩散。

一、保持原貌;
二、注明出处,并附上本文网址。

如果觉得本文有帮助,请分享到你的朋友圈、微博,以期让更多人得到帮助,谢谢。

本文在Linux上用Rime写成,首发于博客园

特别鸣谢:Rime的作者佛振同文输入法TRime的作者osfans

 

(2019年6月9日初稿)

posted on 2019-06-09 20:41  cstylex  阅读(15881)  评论(0编辑  收藏  举报

导航