我写过一篇关于鼠须管自定义小鹤双拼加形码计划的经历,在那里:
【鼠须管】自定义的小鹤双拼加形码计划_rime吧计划和码表都放在那里:
zecy/flypy_double · GitHub若是有兴趣本身来做,但有觉得无从下手的,能够参照那个文档:
Rime_collections/Rime_description.md at master · LEOYoon-Tsaw/Rime_collections · GitHub那份文档现实上 Google 项目页上面是有的,不外藏的比力深。
需要自行实现的功用(来自 Windows 的拼音加加)
1. 字间接辅助码:即输入音码后接着输入形码即可出字,不需要其他按键。
2. 词辅助码:即输入音码后,通过特定按键进入辅助码形式,从首字起为每个字添加辅助码。在组生词的时候尤其有用。
3. 分号和单引号选二三重码上屏。
4. Shift 切换中英文输入时已有的编码不上屏:用于快速肃清输错的内容,不消按比力远的 Esc。
1. 字间接辅助码
通过小鹤双拼官网供给的码表来修改实现,参照了吧友 P1461 实现的计划。
官网供给的码表形式是如许的:
保留单字,其他全数删掉(以下全数用 vim 实现,能够用其他文本编纂器):
:g/=.{2,}/d然后换一下位置,趁便把 1 和 = 去掉:
:%s/\(\w\+\),\d=\(.\)/\2\t\1能够收集或者其他体例把内容换成繁体的,做一个繁体码表。我用的是 OS X 自带的转换办事,可能不怎么准确,不外我不怎么用繁体,所以没有关系,因为条目不多,所以费事点用收集转换也能够,好比 opencc 的收集转换,每次能够转大约 1000 条:
開放中文轉換 Open Chinese Convert (OpenCC)。 Rime 也是用的那个项目,所以准确性应该会比力好。
然后,用本来的码表再做一个常用词语表:
:v/=.\{2,}/d:%s/\(\w\+\),\d=\(.\)/\2\t\1如许造做的码表就能够利用间接的字辅助码。
2. 词辅助码
根本上把文档都读过一遍之后发现都没有法子间接实现。若是要实现词辅助码,就需要在输入完音码之后,切换到能够承受辅助码的形式,再操纵切分音节,把辅助码插到每一个音节后面。
因为 Rime 目前是没有单字形式的(就是搜狗等输入法在按 0 后进入的形式,进入后输入法会独立处置每个音节,便利长句输入时选字选词),所以就曲线救国——用光标挪动来做。
Rime 是能够自定义快速键的,同时,Rime 撑持通过标的目的键挪动光标,如许就能够编纂每一个音节,或者在音节中参加内容。
好比如许的:
那时我们能够接着输入形码到达利用辅助码的效果:
标的目的键太费事了,达不到我们需要的效果。那时就轮到「自定义快速键」退场,间接把其他输入法常用于切换到输入快速键的「 tab 」键改成标的目的键。
要点是 composing 和 has_menu 两项都要设置,因为光标挪动到音节串尾部的时候就会进入 composing ,若是只设置 has_menu ,那么 tab 键的 binding 就会失效。若是嫌费事能够间接设成 always ,不外可能会有没必要要的费事。
目前那个计划根本能够运做的,略微有点费事的处所是似乎无法设置按键数词是,好比设置成类似「Right * 2」之类的。所以要多按一次 tab。若是现实上是能够设置次数的,请务必告诉我。
那些做完之后只要加条 speller 规则就能够用了。
3. 分号和单引号选二三重码上屏
那个简单,间接设置就能够了,按键的名称请看顶楼的文档。因为那个是固定习惯,所以我间接放到 default.custom 里面了。
4. Shift 清码
也很简单,如今已经间接撑持了,在切换项间接改成 clear 就能够了。那个也是放在 default.custom。