Ping-Wu 写了: ↑2019-09-11 12:38
我没有注意到单字txt码表里面的字频。
字频读进去以后 (定为 f3 ),把旧的指令稍微改成:
do printf '%s\t%s\t\%s\n' "$f2" "$f1" "$f3"
就可以把 字频参数放到 ibus-libpinyin 词库了。
这是一个相当令人振奋的进展!
(待续)
如果使用的是“单字_六全码_29685个.txt”或者“单字_笔顺码_29685个.txt”,那么字频参数是最后一列,也就是第 5 列,f5。
如果使用的是“单字_四合一_29685个.txt”,其中第 7 行和第 9 列分别是“六全码”和“笔顺码”的字频,只使用 f7 或者 f9 一个就行。
注意:我这个字频是按笔顺输入的使用频率来排列的,所以用在拼音里,有些字也许会排列不正确(但大部分应该都适用)。
因为汉字有很多是多音字,所以在拼音输入法里,又牵涉到“同一个汉字在另一个拼音里的使用频率”问题。
我的“单字_四合一_29685个.txt”码表里带有拼音,其中第 10 列是显示用的拼音(带音标),第 11 列输入用的拼音(带音标序号)
例如:“见”这个字,第10列是: jiàn/jian/xiàn ,第 11列是:jian4/jian0/xian4
显然,输入 jian4 时,常用的“见”字应该排在前面,而输入xian4 时,排在前面的应该是“现”字,“见”字只用在古诗“风吹草低见牛羊”上。
jian0 用得就更少了。因此,如果是按拼音来排列字频,理论上一个字的三个发音,还应该为每个发音再列一个字频。
笔顺输入的单字重码很少,所以几乎遇不到这种问题,而且有重码的那些字,我也早已排好了字频。
例如:“人”和“入”,都是一撇一捺,当然是“人”的字频排在最前面啦。
笔顺输入的词组可以说几乎是 0 重码,笔画越多,重码越少。相对于拼音输入,优势就体现出来了,不用翻页选择,省事啊。
哈哈,为什么说“几乎”?词组还是有几个重码的,例如:人口,入口。
就算有重码,也不会重好几个,最多重一二个,还没见过重三个的,不会像拼音那样,翻了好几页还没找到要用的字词。
还有一个问题,就是,同音字,是否需要拆分、排列,才能导入 ibus-libpinyin 的码表?
也就是说,“见”这个字,第 11列是:jian4/jian0/xian4 是否需要拆分成三行?
见 jian4
见 jian0
见 xian4
还是 ibus-libpinyin 的码表有它自己规定的同音字分隔符,只要转换一下就行?
例如: 见 jian4'jian0'xian4 ?
-------------------
最后,我看到之前说的 德国网友 mike fabian,他开发有一个 ibus-typing-booster,
https://github.com/mike-fabian/ibus-typing-booster
支持多种语言,也支持小键盘输入,不知道能不能改造用来实现“单手笔顺输入法”?
之前在他的 ibus-table 项目中和他的交流出现了障碍,他不再答复我了,所以我也不好意思再向他提要求。