写在前面:

  第三步整理每行的结构相对来说算是最难的,我的方法是先用文本编码转换专家将文本编码转换成utf-8无BOM(linux下有转换命令不会用,一定要是无BOM否则会在linux下打开乱码),再用python脚本整理成要求的格式

1.找到自己习惯使用的词典;  //通常是文本,比如说98wubi.txt

2.分析模板里面词典部分的结构;  //标准的模板中分为三部分,第一部分为以三个井号开头的注释行;第二部分为功能设置部分(以BEGIN_DEFINITION开始,以END_DEFINITION结束),第三部分为词典部分(以BEGIN_TABLE开始,以END_TABLE结束)

3.将1中提到的词典的每一行都整理成模板中字典的结构;  //说白了就是如果模板中的字典每一行都是'bky(编码)  博客园  1(词频)',则应该将98wubi.txt中的每一行也整成这种形式

4.用处理好的文本字典替换BEGIN_TABLE和END_TABLE之间的内容;  //即将处理好的词典复制到BEGIN_TABLE和END_TABLE之间,粘贴前删除示例词典行

5.第二部分功能设置部分基本需要注意的是图标的名字(ICON=图标名),及在输入法中显示的名字(NAME.zh_CN='输入法中的显示名称');  //其它部分的设置可以参考网址:

6.生成数据库文件  ibus-table-createdb -s 文本名 -n 字典名

7.将6中生成的db数据库文件复制到/usr/share/ibus-table/tables中

8.将图标复制到/usr/share/ibus-table/icons中

9.先结束ibus进程:killall ibus-daemon  再重启Ibus进程:ibus-daemon -d

自用文件下载链接:http://pan.baidu.com/s/1bpoKmFd

文本模板:https://code.google.com/archive/p/ibus/downloads?page=2   中的ibus-table-chinese-1.4.6-Source.tar.gz

ibus介绍:http://wiki.ubuntu.org.cn/index.php?title=Ibus&variant=zh-hant#.E8.87.AA.E5.AE.9A.E4.B9.E7.A0.81.E8.A1.A8.E8.BE.93.E5.85.A5.E6.B3.95.E5.8F.8A.E8.AE.BE.E7.BD.AE.EF.BC.9A

向ibus-table-wubi里添加属于自己的输入法(98五笔)的更多相关文章

  1. 在Qt Creator 和在 vs2012 里添加信号和槽

    原文地址:http://www.cnblogs.com/li-peng/p/3644812.html 作者:李鹏 出处:http://www.cnblogs.com/li-peng/ 本文版权归作者和 ...

  2. chart.js 里添加图表的清单:

    chart.js 里添加图表的清单: var legend = myDoughnut.generateLegend(); $("#chart_legend").html(legen ...

  3. RCP:利用actionSet在菜单(menu)里添加内容

    eclipse的菜单menu.工具栏toolbar乃至视图的上下文菜单contextmenu都是使用Action或Command实现的. Action即是 org.eclipse.jface.acti ...

  4. ios 向工程里添加Fonts

    ios 向工程里添加Fonts 1.网上搜索字体文件(后缀名为.ttf,或.odf),假如你加入的字体为微软雅黑 2.把字体库导入到工程的resouce中 3.然后在你的工程的Info.plist文件 ...

  5. iOS 向模拟器里添加照片

    iOS 向模拟器里添加照片 模拟器里Photos最开始时是没有照片的,有时我们做Demo时需要Photos里面的照片做测试,这时就需要把Mac上的照片导入到模拟器里.步骤如下: 1,打开模拟器 2,选 ...

  6. iOS 在类别里添加成员变量的方法:objc_setAssociatedObject

    今天在github上查看MJPopupViewController这个项目,发现里面用到了objc_setAssociatedObject,用来为类别添加成员变量. 我百度之后,发现有人是这样说明的: ...

  7. 在html里添加视频的方法

    在html里添加本地视频的方法: <!DOCTYPE HTML><html><body><video width="320" height ...

  8. sencha动态向容器里添加控件出现重叠问题

    sencha动态向容器里添加控件出现重叠问题原因是由于动态生成控件的id有重复导致的.(js取时间到毫秒来做id,放在for里面会出现几个控件id是相同的情况.).解决掉重复id的问题就好了. 版权声 ...

  9. Azure 自动化里添加ResourceManager模块

    最近想尝试通过Azure里的自动化功能来控制VM的定时开关机,找到网上的一篇文章,  按照文章操作到"Import Azure Resource manager module"的第 ...

随机推荐

  1. 汇编程序hello world

    我们用C,C++,Java,C#等这样一些高级语言时一般会用到一个集成开发环境,啥编译链接之类的操作都集成到一起了,IDE给你自动完成了.随便点几下按钮就编译好运行起来了. 那假如是写了几行汇编代码该 ...

  2. poj 1149 PIGS(最大流经典构图)

    题目描述:迈克在一个养猪场工作,养猪场里有M 个猪圈,每个猪圈都上了锁.由于迈克没有钥匙,所以他不能打开任何一个猪圈.要买猪的顾客一个接一个来到养猪场,每个顾客有一些猪圈的钥匙,而且他们要买一定数量的 ...

  3. BZOJ 2716 Violet 3 天使玩偶 CDQ分治

    题目大意:初始给定平面上的一个点集.提供两种操作: 1.将一个点增加点集 2.查询距离一个点最小的曼哈顿距离 K-D树是啥...不会写... 我仅仅会CDQ分治 对于一个询问,查询的点与这个点的位置关 ...

  4. 【转】在Spring中基于JDBC进行数据访问时怎么控制超时

    http://www.myexception.cn/database/1651797.html 在Spring中基于JDBC进行数据访问时如何控制超时 超时分类 超时根据作用域可做如下层级划分: Tr ...

  5. leetcode String to Integer (atoi) python

    class Solution(object): def myAtoi(self, str): """ :type str: str :rtype: int "& ...

  6. Linux学习之linux目录

    文件系统的类型 LINUX有四种基本文件系统类型:普通文件.目录文件.连接文件和特殊文件,可用file命令来识别. 普通文件:如文本文件.C语言元代码.SHELL脚本.二进制的可执行文件等,可用cat ...

  7. css2实现尖角箭头式导航

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  8. spoj 1557 GSS3 - Can you answer these queries III 线段树

    题目链接 给出n个数, 2种操作, 一种是将第x个数改为y, 第二种是询问区间[x,y]内的最大连续子区间. 开4个数组, 一个是区间和, 一个是区间最大值, 一个是后缀的最大值, 一个是前缀的最大值 ...

  9. Html小插件

    1.天气预报插件 效果图: 源代码: <iframe width="650" scrolling="no" height="60" f ...

  10. 升级automake和autoconf

    <pre name="code" class="html">zjtest7-redis:/root/soft/json-c-json-c-0.12- ...