五笔字码反查字典 ZDic for Palm 制作方法

五笔字码表反查字典可以从这里获得:

http://braveo.blogbus.com/logs/24519222.html

本文主要是介绍这个字码表的制作方法。以作抛砖引玉之用。

1. 从scim字码库中获取字码表

scim的字码库在/usr/share/scim/tables目录下,其中Wubi.bin就是五笔字码表的二进制文件。使用scim-make-table可以生成字码表:

scim-make-table Wubi.bin -o Wubi.txt

2. 把utf8转成gbk码

scim出来的字码表采用的是utf8编码。由于Palm/Treo不支持utf8编码,所以我们需要转译成gbk编码。其方法是采用Linux下的iconv命令来实现。

iconv -f UTF-8 -t GBK Wubi.txt -o Wubi_gbk.txt

3. 删除前后无用数据

用vim打开数据库,很容易发现前后都有一些scim的metadata信息,删除并保存即可。

4. 分割、合并

对我们来说,文件中只有第一列和第二列数据有用,其中第一列为编码,第二列为字/词。要做成字典,需要第一列为字/词,第二列才是编码。所以要做分割和合并。采用cut命令和paste命令就可完成这件事。

cat Wubi_gbk.txt | cut -f 1 > Wubi_gbk_code.txt
cat Wubi_gbk.txt | cut -f 2 > Wubi_gbk_char.txt
past Wubi_gbk_char.txt Wubi_gbk_code.txt > Wubi_gbk_reorder.txt

5. 添加一个回车

如果直接拿Wubi_gbk_reorder.txt来生成字典,会发现字码表和汉字离得很近,有点难看。可以在字码表前面加一个回车。可以采用sed命令来实现。这里采用-i参数,使改动直接in place在原文件上,而原文件备份到.bak上:

sed -i.bak -e s///t///tn/g Wubi_gbk_reorder.txt

6. 生成字典

./gendic -l -n WuBiScim -o WuBiScim.pdb Wubi_gbk_reorder.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值