[2010-01-25 更新]
有人反应在Ubuntu9.10里会有乱码问题,请9.10的同学,到此一游即止。下文你可以略过。
ibus 实在是个非常好的输入法,但是对五笔的支持有些小问题,主要是:
于是我自己折腾着试试看的想法,做了如下hack,该方法只适合五笔熟手,修改也不是很正统的办法,所以不适用于所有用户。建议大家使用官方的更新和补丁。
修改后功能支持
下面把过程介绍一下:
1.使用极点的五笔词库
shell:
cd ~ mkdir tmp cd tmp sudo apt-get install scim-modules-table sudo scim-make-table /usr/share/scim/tables/jidianwubi.bin -o jidian.txt
上面是把极点的词库导成txt的明文的格式。如果没有jidianwubi.bin http://www.fs2you.com/files/6b3cb66b-33a5-11dd-97e9-00142218fc6e/ 下载最新的极点6.1
2 下载 ibus-table-0.1.1.20081014 http://ibus.googlecode.com/files/ibus-table-0.1.1.20081014.tar.gz
cd ibus-table-0.1.1.20081014/table/zh vi wubi86.txt ### Begin Table data. BEGIN_TABLE END_TABLE 把这段的内容,用第一步导出的 jidian.txt 里begin_table到end_table的替换,保存退出
3 刪除多余的词组
cd ibus-table-0.1.1.20081014/table/zh bzip2 -d extra_phrase.txt.bz2 vi extra_phrase.txt 把不要的词都刪除掉,你会发现这里面很多繁体词组,因为词条太多,我干脆就大部分刪除了,只保留了前面100个左右。 注:这一步不是一定要这么做,只是为了不要那么多重码,不适合五笔不熟练的人。我比较懒,所以直接刪除词。(其实可以把繁体词转成简体词,不会判断繁体字,所以我做不了。)
4 修改直接上屏和右shift功能
cd ibus-table-0.1.1.20081014/engine vi table.py 第754行: 改成True 753 #self._setup_property = Property ("setup", _("Setup")) 754 self._direct_commit = True 755 self.reset () 656 def r_shift (self): 657 '''Proess Right Shift Key Event as changed between PinYin Mode and Table Mode''' 658 self._zi = u'' 659 if self._chars[0]: 660 self.commit_to_preedit () 661 return True 662 else: 663 return False 664 #self._py_mode = not (self._py_mode) 665 #return True 注:把这段改成和l_shift(self)一样,不过好像并不能右shift切换中英文,只是不会变成拼音模式了,未知原因。
5 编译,安装
make sudo apt-get install checkinstall sudo checkinstall make install sudo dpkg -i ibus-table_0.1.1.20081014-1_i386.deb
推荐ubuntu的用户使用 checkinstall这个软件,制作deb文件非常方便
6 Logout & Login. 试试,打五笔是不是特别爽了?
不想尝试以上步骤的,请直接下载我弄好的码表, wubi86.db
tar -zxvf wubi86db.tar.gz
sudo mv wubi86.db /usr/share/ibus-table/tables