拼音、五笔是我最常用的输入法。对于常用的汉字,我打五笔很快。不常用的,我就用拼音来输入。这是我多年来养成的个人习惯。
ubuntu18安装之后,系统默认安装好了两个输入法:英文、拼音。
1 Ubuntu18 的拼音输入法
不用说,我自然是先体验一把。不用不知道,真没有想到ubuntu18自带的拼音输入法这么强大,比起windows上的各种拼音输入法,强大的多了去了。而且绿色,环保无毒,不带广告!
关于拼音输入法细节,我不用说太多,上面的动画足够了。主要提示四点:
(1)在“拼音”输入法状态下,通过按快捷键来回切换中英文状态。不用切换到“英语输入法”。所以,如果你持续进行文档录入工作时,没有必要“super+空格”键、或者右上角系统菜单,来回切换到中英文输入法。这一点倒是与我之前在windows上的操作习惯一致。
(2)按照自已的喜好设置输入法快捷键是非常有必要的,可以大大提高效率。尤其是在windows操作系统上的习惯,可以很好的在ubuntu18上保留下来。
(3)模糊拼音的需要,普通话不标准的大有人在,最好“启用模糊音”。
(4)拼音模式的选择上,一定不要客气,选择自已习惯的“微软拼音、自然码、智能ABC”等等等。
在Ubuntu上可以安装的拼音输入法还有很多,也可以安装谷歌的拼音输入法。关于这方面的内容,可以自行网络搜索。
2 在ubuntu18安装五笔输入法
ubuntu安装包自带了两个五笔输入法:极点五笔和海峰五笔。两个都差不多,需要的时候安装其中一个就可以了。
3 安装五笔拼音输入法
强大的拼音输入法有了,也设置好了。五笔也安装了一个极点五笔。前面说了,拼音、五笔这两种输入法都是我习惯用的输入法,按理说是够了。但是,如果是两个输入法,经常需要来回切换的话,依然是很麻烦。既便是借助“super+空格”这个输入法快捷键,还是感觉影响效率。
我需要的是像在windows平台上的“万能输入法”这样的,在一个输入法里,既可以打拼音、又可以输入五笔字根。可惜的是,开发“万能输入法”的人没有在ubuntu平台上开发输入法安装包。(其实,如果真有的话,我也不想用,因为这个输入法近年来的广告太多了!)
经过经验人士指点,还真找到了“小岗万能五笔”:https://sourceforge.net/projects/wnwb/files/
具体下载安装的步骤如下:
(1)确定当前ubuntu安装的是“iBus输入法”框架
(2)下载2个安装包,并解压安装针对iBus的五笔拼音安装包
tar xzfv linux-wnwb2-ibus.tar.gz
生成以下几个解压文件:
linux-wnwb/xgwnwb.svg
linux-wnwb/Xgwnwb.txt
linux-wnwb/Xgwnwb.db
linux-wnwb/Readme.txt
按照readme.txt中最简单的安装说明操作。
(3)拷贝文件至ibus相关目录
cd linux-wnwb
sudo cp xgwnwb.svg /usr/share/ibus-table/icons
sudo cp Xgwnwb.db /usr/share/ibus-table/tables
(4)重启ibus
执行“ ibus-daemon -r -d -x”重启iBus。
(5)添加“小岗万能五笔”
然而,当我想用“小岗万能五笔”输入法时,失败了。我反反复复的查看安装包中的“readme.txt”文件,反反复得的试验,并在网上查证,确认自已没有做错。结果还是不能用这个输入法。
难道经历众多使用者验证的“小岗万能五笔”真的不能用吗?其实不是的,是安装包内的码表文件“Xgwnwb.db”有错。这没有关系,我们可以重建它。
其实,下面的A和B两个步骤插入到上述的“步骤(2)”和“步骤(3)”之间就可以了。
(A)修改码表源文件"Xgwnwb.txt"
ICON = /usr/share/ibus-table/icons/xgwnwb.svg
NAME = 小岗万能五笔86
(B)重新生成码表文件
ibus-table-create -s Xgwnwb.txt
这个命令成功执行后会生成新的"Xgwnwb.db"。(为安全起见,可以把安装包原有的这个文件备份一下。)
什么是输入法框架?
如何解释这个概念,其实对我这个linux菜鸟来说,也不知道该怎么说的清楚。但我可以对比一下windows来侧面说明一下我的理解。
在windows上,微软不开源,微软想乍做就乍做,你管不着。微软会为你准备多种输入法,但却可以只采用一种框架结构、一种模式来管理这些输入法。换句话说,因为你没有选择的余地,微软犯不着做出来多种多样的输入法管理程序。
可是在linux系统上就不一样了,因为是开源的,有人觉得ibus不好,就可以做出来一个scim的;同样,有人绝得scim的不爽,还可以做出fcitx的。
如果还是不好理解,可以粗浅的把linux输入法框架理解为linux上的输入法管理程序。