红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Ubuntu

在linux下制作拼音五笔输入法

发布时间:2014-03-17 18:32:34来源:红联作者:tioced
  学习参考。

  Ubuntu下的scim输入法很是不错,自带了五笔、拼音等输入法。然而以前在windows系统的时候一直是用万能五笔或是极点五笔的。万能五笔最方便的地方就是当遇到不会打的字可以直接采用拼音输入法,而不需要切换到拼音输入法。现在在linux下的scim的五笔就没有这样的功能,每次遇到实在是打不出来的字,都要切换到拼音输入法下去打字,很是麻烦。在网上也找了很久,没有找到理想的输入法。想起几年前自己就做过windows下的拼音五笔,试想在linux下也应该可以。尝试制作了一下,终于可以使用了。

  首页要有拼音及五笔两种输入法的码表

  一,拼音码表
  1,在windows系统下
  我采用的是windows下的全拼码表,因为我没有找到智能ABC拼音的码表,只好采用了全拼码表。
  得到windows的全拼码表并不难,可以通过windows自带的码表生成器来完成。
  运行IMEGEN.EXE程序,将 WINPY.MB 逆转换成winpy.txt文件。
  这样就得到了拼音的码表文件。
  这只是windows格式的码表文件,如果想被scim采用,还需要转换成scim格式。
  2,在linux系统下
  通过mb2scim工具可以将 winpy.txt 文件转换成scim格式的码表文件。
  解开mb2scim工具后,进入到mb2scim,执行下面的命令:
chmod +x mb2scim
  将mb2scim设置为可执行文件。
  然后再执行:
./mb2scim WINPY.TXT winpyx.txt
  这样就得到了支持scim格式的拼音码表文件winpyx.txt。

  二,五笔码表
  获取五笔码表文件很简单,只要将scim内的五笔码表转换出来就行了。
  进入SCIM码表存放的目录:/usr/share/scim/tables,执行
scim-make-table Wubi.bin -o Wubi.txt
  这样就得到逆转换后的五笔的码表。

  三,合并码表文件
  在linux下用gedit分别打开拼音码表文件winpyx.txt 及 五笔码表文件 Wubi.txt
将winpyx.txt内的内容整合到Wubi.txt文件中。
  将winpyx.txt文件中
BEGIN_CHAR_PROMPTS_DEFINITION
....要复制的内容...
END_CHAR_PROMPTS_DEFINITIO
内容复制到Wubi.txt的这个区域,建议放到END_CHAR_PROMPTS_DEFINITIO这一行的前面。
  将winpyx.txt文件中码表正方区域
BEGIN_TABLE
....要复制的内容...
END_TABLE
  内容复制到Wubi.txt的这个区域,建议放到END_TABLE这一行的前面。

  四,复改Wubi.txt文件的UUID的值
  在终端执行:uuidgen 
  将得到一个文本串码,将这个串码替换掉Wubi.txt文件中的UUID的值。
  请将 MAX_KEY_LENGTH的值改为12,原来是4。改过就可以打多个字了。

  五,修改输入名称及图标
  可以将ICON、NAME、NAME.zh_CN 等值改成你想要起的名字。

  六,生成scim的输入法可执行码表文件
  完成上面五个过程,你的拼音五笔输入法基本上就是完成了。这个时候只要将执行:
scim-make-table Wubi.txt -b -o /usr/share/scim/tables/XWubi.bin
  就生成了拼音五笔输入法。

  重启x-window,试一下吧,系统中就多了一个可以输入五笔,也可以输入拼音的,拼音五笔输入法了。
文章评论

共有 3 条评论

  1. XCalvin 于 2014-03-21 11:57:53发表:

    楼主高手!我是来膜拜一下的!mark一个以后可能用的上……

  2. 流浪的自由 于 2014-03-19 15:12:20发表:

    谢谢分享

  3. 王中云 于 2014-03-18 15:04:58发表:

    不错