打造你专属的仓颉输入法

我是仓颉输入法的使用者,在 windows 10 之前,微软仓颉输入法是可以选择只显示 big5 字元的。但 windows 10 之後这选项便不复存在。

我想只显示 big5 是因为 unicode 有非常多的的罕用字,这导致严重的重码问题,而那些罕用字在大部分情况下根本用不着,它们只会降低我的输入速度和爽快感。

我尝试在各论坛询问是否可设定只显示 big5 字元,截至 windows 10 version 2004,还是没有办法设定的。而最接近的答案,是重新安装旧版的「微软新仓颉」输入法,详情可看这篇:

https://irregular.enzan.org/post/3292

但它有几个问题:

  1. 联想字必需按入候选字中才能显示出来,不能边打边显示。
  2. 大五码本身亦有重码的问题,例如你打「梦」字他会有 「梦甍藅蘮 」四个输出。
  3. 它是使用 IMM 架构的旧版输入法,每次更新 windows 便要重装一次…

既然要安装另一个输入法,我在想,有没有其他的仓颉输入法可以完全客制化,把那些罕用字删除,成为我心目中理想的仓颉输入法呢?

然後我找到一篇关於 dime 输入法的文章:

https://terryhung.pixnet.net/blog/post/35608897

dime 相当接近我要的东西,其可取之处在於:

  1. 它是基於新的 TSF 输入法架构,这样使输入法的安装和移除更加方便,未来的支援更有保障,而且不用每次更新 windows 便要重装。
  2. 它可以自行修改内码表,这样我便可以移除一些根本用不到的罕有字,令重码问题大幅降低。

内码表应如何制作呢?我先把已做好的内码表放在这里给大家参考,是纯文字,内容亦相当容易理解:

https://hoishing.github.io/forum/dime_cangjie.txt

我对内码表有以下的要求:

  1. 不要包含太多罕有字。
  2. 重码字常用的应在前,例如输入「人大口」,「知」应在「佑」之前。

对於问题一,我的解决方法是使用中华民国教育部编订的「常用国字标准字体表」和「次常用国字标准字体表」,其他的字暂时不包括在内,这样整个字库加起来只有11000多字。

要解决第二个问题,字库可依教育部的字频表排序

至於每个字对应的仓颉码,可到政府资料开放平台下载全字库

https://data.gov.tw/dataset/5961

就这样,我用 python 把上述的原材料整理一番後,便得出上面的代码表。然後把它载入 dime 的「自建」输入法内,一个完全客制化的仓颉便大功告成!

最後对於 dime 的使用,有以下几点注脚:

  1. windows 的 language settings 内并没有输入法的设定。先打开 notepad,然後按 ctrl \ 才可进入设定,这是 dime 最需要改善的地方。进入後,记得把 「组字区最大长度」设为 5,因仓颉最长可有五码。
  2. 如果安装後发现没有联想字,可先安装内置的「微软注音」输入法,打开「相容性:使用旧版的微软注音」,然後把 user folder 内的 appdata\roaming\dime 删除,再重装 dime 即可。
  3. 安装 dime 後,它会一拼安装注音、大易等输入法,而你要用的只是自建输入法。要移除不需要的输入法,你先要在 language setting 中把所有的 dime 输入法加上去,re-login 後再从 language settings 中移除。

<<:  第 53 天 - 研究 shell 解释器 - for each 批量停用没有用到服务

>>:  格线系统(1) DAY43

Day17 - RadioButton(二)

昨天学会使用getCheckedRadioButtonId 这功能一般都用在表单单选 例如:性别、年...

[Day01 - 简介] 成为一位孤独型玩家,从乱点技能开始

Hello 大家好我是 Edmond,大家在疫情期间是否感受到满满的孤独感呢?又是否突然发现,自己其...

DAY 22 完成管理功能与权限

新增团购讯息 add 关键字 讯息 删除团购讯息 删除 关键字 查询团购讯息 团购 手动新增团购者...

【第二十三天 - DFS 题目分析】

先简单回顾一下,今天预计分析的题目: 112. Path Sum 题目连结:https://lee...

Day 19:深度优先搜寻(DFS)与拓朴排序(topological sorting)

深度优先搜寻(depth-first search, DFS)是一种搜寻整张图所有节点的演算法。它的...