给老爹的输入法问题及记录
老爹的电脑是我来维护的,因此,安装上Linux是极其靠谱的事情。对于老爹来说,电脑的功能相对简单,反正这样的话,他有什么就用什么,有问题找我就可以了。所以,Linux系统的稳定安全来说,实在是太方便了。
然后,输入法问题,在Linux系统下,可以选择的输入法就不多。这个不多是指,和windows下相比,是不多的。但是多也好,少也好,能够用的才是最好的。
我老爹日常说的是粤语,所以,连拼音里面的模糊音都不用考虑了,有些字,他甚至没法发对合适的模糊音。粤拼的话,我都没搞懂粤语拼音方案,我老爹的水平,估计和我差不多。手写输入的话,众多国产的恶心输入板是没Linux驱动的,厂家本身都不想被这个系统识别,我们又如何呢?即使硬件能找到,识别率也相当堪忧,不然,汉王蒙恬这些厂家就可以回家种田了。
于是,可以选择的,只有简单的手机T9输入法,或者更为冷门的四角输入法。
是的,我老爹会四角编码!
T9的话,fcitx自带的两个笔画输入法,都是针对某些按键绑定。横竖点撇捺可能在键位上分崩离析,也可能毫无意义的绑定。更重要的是,我老爹的双手里面有一只手会有众多空闲。还是算了吧。给他上个四角玩玩吧。
于是,在稍微搜索了一下资料之后,大致得出以下方案。无奈,我最近要事缠身,否则就花点时间给老爹写完程序配置一下,让他老人家爽上一把。先记录一下吧。之后可以用到。
首先,四角输入法是一个码表输入法。按编码的不同,出不同的汉字。幸好,有个叫VimIM的工具,里面提供了一张四角码表。
VimIM的码表格式是这样的:
0010 主 立 童 銮 堃 壅 鏖 癯
========分割线=======
fcitx码表的格式是这样的:
0010 主
0010 立
0010 童
0010 銮
0010 堃
嘛,这是一个小小的不同,写个脚本就解决了。实在懒得写,好像有个类似的,叫极点到fcitx的码表转换工具,不知道靠谱不靠谱,这么简单的部分,上python,加上点正则匹配,应该就能解决了吧。
然后,是输入过程的操作体验。
1、fcitx只支持字母键输入,数字键选择,如果反过来,可以,慢慢hack代码吧。而且还要分裂出一个自用自己维护的版本,想这么做的话,我奉送两个字:“蛋疼”
2、老爹不用笔记本,那么小键盘的数字键太闲了。要不就把这个映射成合适的字母键来输入对应的四角编码吧。
3、xmodmap 和 fcitx 可以配合使用的。(http://lilydjwg.is-programmer.com/2013/8/23/xmodmap-and-fcitx.40487.html)
那么,理论上应该可以做到这样,在输入法开启的时候,小键盘的数字键映射成qwertyuiop等字母键,用于四角码表的输入,也可以用原本的这些字母键来输入,用主键盘区的1234567890来选字。在输入法关闭的时候,小键盘的数字键映射关闭。
如果上述做法没法在fcitx框架下做到,那么起码可以做到的是,写个脚本,实现xmodmap的交换键位功能,同时还通过fcitx-remote来切换输入法状态。
嗯。就这样。先记录下来。有空的时候就开始做吧。
然后,输入法问题,在Linux系统下,可以选择的输入法就不多。这个不多是指,和windows下相比,是不多的。但是多也好,少也好,能够用的才是最好的。
我老爹日常说的是粤语,所以,连拼音里面的模糊音都不用考虑了,有些字,他甚至没法发对合适的模糊音。粤拼的话,我都没搞懂粤语拼音方案,我老爹的水平,估计和我差不多。手写输入的话,众多国产的恶心输入板是没Linux驱动的,厂家本身都不想被这个系统识别,我们又如何呢?即使硬件能找到,识别率也相当堪忧,不然,汉王蒙恬这些厂家就可以回家种田了。
于是,可以选择的,只有简单的手机T9输入法,或者更为冷门的四角输入法。
是的,我老爹会四角编码!
T9的话,fcitx自带的两个笔画输入法,都是针对某些按键绑定。横竖点撇捺可能在键位上分崩离析,也可能毫无意义的绑定。更重要的是,我老爹的双手里面有一只手会有众多空闲。还是算了吧。给他上个四角玩玩吧。
于是,在稍微搜索了一下资料之后,大致得出以下方案。无奈,我最近要事缠身,否则就花点时间给老爹写完程序配置一下,让他老人家爽上一把。先记录一下吧。之后可以用到。
首先,四角输入法是一个码表输入法。按编码的不同,出不同的汉字。幸好,有个叫VimIM的工具,里面提供了一张四角码表。
VimIM的码表格式是这样的:
0010 主 立 童 銮 堃 壅 鏖 癯
========分割线=======
fcitx码表的格式是这样的:
0010 主
0010 立
0010 童
0010 銮
0010 堃
嘛,这是一个小小的不同,写个脚本就解决了。实在懒得写,好像有个类似的,叫极点到fcitx的码表转换工具,不知道靠谱不靠谱,这么简单的部分,上python,加上点正则匹配,应该就能解决了吧。
然后,是输入过程的操作体验。
1、fcitx只支持字母键输入,数字键选择,如果反过来,可以,慢慢hack代码吧。而且还要分裂出一个自用自己维护的版本,想这么做的话,我奉送两个字:“蛋疼”
2、老爹不用笔记本,那么小键盘的数字键太闲了。要不就把这个映射成合适的字母键来输入对应的四角编码吧。
3、xmodmap 和 fcitx 可以配合使用的。(http://lilydjwg.is-programmer.com/2013/8/23/xmodmap-and-fcitx.40487.html)
那么,理论上应该可以做到这样,在输入法开启的时候,小键盘的数字键映射成qwertyuiop等字母键,用于四角码表的输入,也可以用原本的这些字母键来输入,用主键盘区的1234567890来选字。在输入法关闭的时候,小键盘的数字键映射关闭。
如果上述做法没法在fcitx框架下做到,那么起码可以做到的是,写个脚本,实现xmodmap的交换键位功能,同时还通过fcitx-remote来切换输入法状态。
嗯。就这样。先记录下来。有空的时候就开始做吧。