我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

软件和网站开发以及相关技术探讨
回复
头像
yq-ysy
论坛版主
帖子: 4431
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#1

帖子 yq-ysy » 2018-01-12 19:00

我是程序盲,不会写程序。
我花了一年多的时间,编写了一个“单手笔顺输入法”的码表,
https://github.com/YQ-YSY/stroke-seq_MB
然而,开源发布半年多,也没有程序员接手开发“单手笔顺输入法”的程序。我只能“从零开始学程序”了。

有网友推荐说:用 Ibus 这些都能实现,只是要单独写个模块加入订制的功能。
ibus-table 就是用 Python 写的,你可以 fork 他,改名,然后加入自己需要的功能。
viewtopic.php?f=35&t=484603

好吧,也许对于程序员来说,这是很容易的事情,但对于程序盲来说,该怎么入手?毫无头绪啊。
网上查找资料,ibus-table 已经5年没更新了,怎么安装?怎么修改?怎么调试?没有任何说明。
https://github.com/acevery/ibus-table
发邮件给其作者(厦门的 余钰炜)acevery@gmail.com 也没有回音……

虽然好不容易在一篇台湾桃园网友Francine Lin的帖子里找到安装和使用 ibus-table 的方法,
(需要翻墙才可见) francinelin.blogspot.com/2012/07/ibus.html
他还介绍了生成ibus-table专用码表db文件的命令(先转贴在这里,下次找资料不用翻墙了):
看來看去每個人的方法都差不多,但不是有夠給他X的複雜
就是都不解釋一下ibus-table-createdb這個指令是怎麼來的

小蒨本著懶人好人精神,當然又要來分享簡單又可以長遠的東西啦~
( 應該可以和 ibus 一起同進退吧……XD )
請先下載壓縮檔,解壓縮後,再照著底下的步驟做就可以了。
請點我連至Google文件下載壓縮檔
( 2014.05.30 感謝 daineseh 提供改良過的字根表,壓縮檔及readme file也一併更新)

如果你想要客製化(添加)自己的字根表,可以到下面網址參考加字根的作法,
安裝方法則是和本篇一樣的簡單又容易上手。
https://github.com/daineseh/liu_ibus_table

使用方法: (適用於任何版本 Ubuntu/Debian )
1. 先使用aptitude(或 apt-get )指令安裝 ibus-table 套件
sudo aptitude install ibus-table

2. 確定已 cd 到檔案所在的資料夾底下,在terminal輸入以下指令
sudo ibus-table-createdb -s liu_ibus_table.txt -n liu.db
(這行要跑好幾秒,請等一下, 會秀一些error訊息,不用理它)

各位可在 liu_ibus_table.txt 檔案裡,
至於 100、99、98 則是順序性(也可以視做百分比),
像是RRJ 有 茸、華、茸、鷨,分別是 100、99、98、97
你可以依個人喜好將華改成 100,茸改成99,這樣RRJ對應到的第一個字就是華

3. 把剛剛產生出來的 .db檔以及資料夾裡原有的icon複製到ibus-table資料夾底下
sudo cp liu.db /usr/share/ibus-table/tables/
sudo cp liu.png /usr/share/ibus-table/icons/

4. 重新啟動 ibus 使剛才的修改生效, 可以用下列這行指令
ibus restart
或 請登出系統再重新登入,也可達到一樣的效果

5. 登入後修改ibus偏好設定。
輸入法 -> 選取輸入法 -> 漢語 -> 嘸蝦米
-> 按下旁邊加入按鈕 -> 再關閉視窗即可
但现在有个很严重的问题就是:
我的“单手笔顺输入法”是使用数字小键盘作为输入工具,然而 ibus-table 的介绍里说:
Num1 ~ Num9 select the correspondent candidate and commit inputted string
怎么修改这个按键功能?然后怎么调试?
怎么修改这个按键功能?然后怎么调试?
怎么修改这个按键功能?然后怎么调试?
请不要和我说“把小键盘的数字键映射到字母键盘”,
请不要和我说“把小键盘的数字键映射到字母键盘”,
请不要和我说“把小键盘的数字键映射到字母键盘”,
因为“单手笔顺输入法”就是必须使用数字小键盘作为输入工具,这样最顺手!速度才快!
因为“单手笔顺输入法”就是必须使用数字小键盘作为输入工具,这样最顺手!速度才快!
因为“单手笔顺输入法”就是必须使用数字小键盘作为输入工具,这样最顺手!速度才快!
——抱歉,想解决问题却毫无头绪,心情不好,所以重要的事情说三遍。

还有,我设想中的“单手笔顺输入法”功能,
还需要用到数字小键盘里其他按键作为相应的功能键,有些按键还需要有转换功能。
如下图所示: https://github.com/YQ-YSY/stroke-seq_MB ... Sample.jpg
要做的事情看来有很多,慢慢来吧。

这里的程序员,那位有空的,回帖教教我,
如何利用、修改和调试 ibus-table输入法程序?
我一边学一边试,遇到问题再继续问吧。
谢谢了。
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#2

帖子 Ping-Wu » 2018-01-13 3:51

很抱歉,我跟几位朋友接触了一下,但沟通上有困难,过一阵子也就忘了这件事了。我个人在美国住太久了,中文看得懂,(基本上)读的出来,但“写”的话,可能已经退化到小学程度了。目前我只懂得使用拼音输入法(跟 99+% 的民众一样),也帮不上什么忙。不过我倒是有兴趣把您建立的码表移植到 ibus-pinyin 或 ibus-libpinyin 上,也许这是开发 “单手笔顺输入法” 的第一步。希望其他有能力的大牛或大牛们能拔刀相助。
头像
yq-ysy
论坛版主
帖子: 4431
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#3

帖子 yq-ysy » 2018-01-13 8:16

Ping-Wu 写了:很抱歉,我跟几位朋友接触了一下,但沟通上有困难,过一阵子也就忘了这件事了。我个人在美国住太久了,中文看得懂,(基本上)读的出来,但“写”的话,可能已经退化到小学程度了。目前我只懂得使用拼音输入法(跟 99+% 的民众一样),也帮不上什么忙。不过我倒是有兴趣把您建立的码表移植到 ibus-pinyin 或 ibus-libpinyin 上,也许这是开发 “单手笔顺输入法” 的第一步。希望其他有能力的大牛或大牛们能拔刀相助。
这很好啊,
因为“笔顺”的编码是数字,所以它可以和“拼音”同时共存,
忘记拼音时,不用切换输入法,直接在数字小键盘上就可以输入笔顺;
忘记笔顺时,不用切换输入法,直接在字母大键盘上就可以输入拼音。
关键还是:
ibus 数字小键盘的按键,功能一定要修改,这才能显现笔顺输入“顺手、快速”的特点。

我的码表里的3万单字、15万核心词汇、150万扩展词汇全都也已经带有拼音的,
可以大大补充 ibus-pinyin 和 ibus-libpinyin 的词汇量。
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#4

帖子 Ping-Wu » 2018-01-14 5:21

yq-ysy 写了:因为“笔顺”的编码是数字,所以它可以和“拼音”同时共存,
忘记拼音时,不用切换输入法,直接在数字小键盘上就可以输入笔顺;
忘记笔顺时,不用切换输入法,直接在字母大键盘上就可以输入拼音。
关键还是:
ibus 数字小键盘的按键,功能一定要修改,这才能显现笔顺输入“顺手、快速”的特点。
我个人觉得这就是您这个发明最大的特点。目前我只会用拼音,但有时候不知道怎么读的时候,有您这个“合并“式的输入法就很方便了。

重点在于,绝大部分的中国人(以及几乎所有的外国人)使用的都是拼音输入,但中国方言这么多,这套“音形混成“的中文输入法实在有积极开发的必要。
yq-ysy 写了:我的码表里的3万单字、15万核心词汇、150万扩展词汇全都也已经带有拼音的,
可以大大补充 ibus-pinyin 和 ibus-libpinyin 的词汇量。
我曾经想将搜狗拼音的词汇转成 ibus-pinyin,不知道怎么做,也没有再花时间去玩:

http://forum.ubuntu.com.cn/viewtopic.php?f=8&t=481666

新版的 ibus-libpinyin 可以直接输入文字档,以后有时间的时候会试一试。
头像
yq-ysy
论坛版主
帖子: 4431
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#5

帖子 yq-ysy » 2018-01-16 23:20

Ping-Wu 写了: 我个人觉得这就是您这个发明最大的特点。目前我只会用拼音,但有时候不知道怎么读的时候,有您这个“合并“式的输入法就很方便了。
重点在于,绝大部分的中国人(以及几乎所有的外国人)使用的都是拼音输入,但中国方言这么多,这套“音形混成“的中文输入法实在有积极开发的必要。

我曾经想将搜狗拼音的词汇转成 ibus-pinyin,不知道怎么做,也没有再花时间去玩:
新版的 ibus-libpinyin 可以直接输入文字档,以后有时间的时候会试一试。
关于利用搜狗拼音的词汇,我在做词库时已经解决了。网上找到过好几个版本的破解“搜狗拼音细胞词库”脚本,其中一个可以用,这个倒相对容易,因为是用程序解决,也就几分钟的事情。麻烦的是,细胞词库本身也是网友拼凑而得的,里掺杂有许多错误,例如:不同专业词汇,不良词汇、重复的词汇……剔除这些,这个活才累,下载的每个细胞词库都得看一遍,一目十行地看,也要花很长很长时间……。

前两天你说到 libpinyin ,我到 github 一查看,发现 libpinyin 的作者就是 peng wu ,而且他在一月四日还更新了 libpinyin ,于是我就赶快给他发了一封邮件,希望他能把这个“单手笔顺输入法”加入到 libpinyin 里,但现在还没收到回复。

唉,我在想,以后等我有钱了,我会做三件事:
(1)聘请程序员把这个“单手笔顺输入法”软件做出来;
(2)聘请设计师补充完成7万汉字的开源字体(目前思源字体仅能显示3万,且只有黑体和宋体,没有楷体、隶书、行书、仿宋、魏碑);
(3)聘请程序员完成你上次说的 LibreOffice 从架构上对中文的各种底层支持。

但很显然,我什么时候才能有钱呢?(我去年从1月1日到12月31日的全部收入是2万元人民币整。)这是个大问题。
又没途径和办法劝来说有钱的企业家来资助开源软件。(马云拍电影自己演功夫片的钱,花十分之一就能完成上面三项工作了吧?)

另一条路,政府牵头对开源软件的资助,也许不用等很久:
慢的话,2025年,有网友根据“推背图”预测的中日大海战爆发。
快的话,今年2018年6月8日星期五,知乎上有网友预测的收复台湾日子(他预测的是8日星期五,没说是哪年)。
战争期间,windows系统和苹果系统都会受限制使用,能用的就只有开源软件了。
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#6

帖子 Ping-Wu » 2018-01-19 3:28

yq-ysy 写了:
Ping-Wu 写了: 我个人觉得这就是您这个发明最大的特点。目前我只会用拼音,但有时候不知道怎么读的时候,有您这个“合并“式的输入法就很方便了。
重点在于,绝大部分的中国人(以及几乎所有的外国人)使用的都是拼音输入,但中国方言这么多,这套“音形混成“的中文输入法实在有积极开发的必要。

我曾经想将搜狗拼音的词汇转成 ibus-pinyin,不知道怎么做,也没有再花时间去玩:
新版的 ibus-libpinyin 可以直接输入文字档,以后有时间的时候会试一试。
关于利用搜狗拼音的词汇,我在做词库时已经解决了。网上找到过好几个版本的破解“搜狗拼音细胞词库”脚本,其中一个可以用,这个倒相对容易,因为是用程序解决,也就几分钟的事情。麻烦的是,细胞词库本身也是网友拼凑而得的,里掺杂有许多错误,例如:不同专业词汇,不良词汇、重复的词汇……剔除这些,这个活才累,下载的每个细胞词库都得看一遍,一目十行地看,也要花很长很长时间……。

前两天你说到 libpinyin ,我到 github 一查看,发现 libpinyin 的作者就是 peng wu ,而且他在一月四日还更新了 libpinyin ,于是我就赶快给他发了一封邮件,希望他能把这个“单手笔顺输入法”加入到 libpinyin 里,但现在还没收到回复。

唉,我在想,以后等我有钱了,我会做三件事:
(1)聘请程序员把这个“单手笔顺输入法”软件做出来;
(2)聘请设计师补充完成7万汉字的开源字体(目前思源字体仅能显示3万,且只有黑体和宋体,没有楷体、隶书、行书、仿宋、魏碑);
(3)聘请程序员完成你上次说的 LibreOffice 从架构上对中文的各种底层支持。

但很显然,我什么时候才能有钱呢?(我去年从1月1日到12月31日的全部收入是2万元人民币整。)这是个大问题。
又没途径和办法劝来说有钱的企业家来资助开源软件。(马云拍电影自己演功夫片的钱,花十分之一就能完成上面三项工作了吧?)

另一条路,政府牵头对开源软件的资助,也许不用等很久:
慢的话,2025年,有网友根据“推背图”预测的中日大海战爆发。
快的话,今年2018年6月8日星期五,知乎上有网友预测的收复台湾日子(他预测的是8日星期五,没说是哪年)。
战争期间,windows系统和苹果系统都会受限制使用,能用的就只有开源软件了。
1. 把搜狗拼音的词汇转成本文档很容易,但 ibus-pinyin 所用词汇(sqlite 资料库)的规格,则完全缺乏资讯。搜狗拼音的词汇 =》 ibus-pinyin 不是不可能,但需要一点时间。

2. ibus-libpinyin 计划里有一项“笔画输入”的子计划,基本上依照原来的 table lookup 及 database 架构,但输入的元件,用五笔("h","n", "p", "s", "z")* 来取代拼音字母。是有一些简单的代码,但这么多年来(> 5年)没有人再去碰过,肯定是胎死腹中了。 原因如何,我们不知道,但也许您可以说服红帽考虑把这个子计划用 “单手笔顺输入法” 取代?

3. 我们都知道,任何中文输入法的适用度,最大的取决关键在于字典(即词汇)的配合--尤其是“整句”及“整词”的输入。这包括到“字典本身的强度”及“所使用资料库程序的成熟度”。ibus-pinyin 使用的资料库程序乃是 sqlite,后者已成为 python 的一部分,非常积极的在被维持。因此,虽然 ibus-pinyin 目前已没有人在维护了(”弃婴“),但我配合一个 pinyin-database 的字典,再加上我自己累积的 cache,使用起来非常的快,也非常稳定。非常好用! 如果吴鹏(Peng Wu,ibus-libpinyin 的负责人)不愿意考虑第2项的话,也许我们可以试图将 ibus-pinyin 复活。不过这是一个非常长期的计划,必须放在一个推广 Linux 桌面的大蓝图下做考量(包括基金的筹集等)。

4. 关于“战争”,现代的战争讲的主要是“贸易战”,“智权战”, “软件战”。中国人用的都是 Windows (很多还是盗版的),必须想办法改善吧?“钱”其实不是最大的问题,我们把最宝贵的“使用者经验”,无偿的完全贡献给微软,才是最应该让我们担忧的。 当然啦,没有人会去管这些事的。

*
ibus-libpinyin 里附属的“五笔”输入法.png
ibus-libpinyin 里附属的“五笔”输入法.png (7.08 KiB) 查看 14423 次
上次由 Ping-Wu 在 2018-02-04 13:51,总共编辑 2 次。
头像
yq-ysy
论坛版主
帖子: 4431
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#7

帖子 yq-ysy » 2018-01-23 20:30

Ping-Wu 写了: 1. 把搜狗拼音的词汇转成本文档很容易,但 ibus-pinyin 所用词汇(sqlite 资料库)的规格,则完全缺乏资讯。搜狗拼音的词汇 =》 ibus-pinyin 不是不可能,但需要一点时间。

2. ibus-libpinyin 计划里有一项“笔画输入”的子计划,基本上依照原来的 table lookup 及 database 架构,但输入的元件,用五笔("h","n", "p", "s", "z")* 来取代拼音字母。是有一些简单的代码,但这么多年来(> 5年)没有人再去碰过,肯定是胎死腹中了。 原因如何,我们不知道,但也许您可以说服红帽考虑把这个子计划用 “单手笔顺输入法” 取代?

3. 我们都知道,任何中文输入法的适用度,最大的取决关键在于字典(即词汇)的配合--尤其是“整句”及“整词”的输入。这包括到“字典本身的强度”及“所使用资料库程序的成熟度”。ibus-pinyin 使用的资料库程序乃是 sqlite,后者已成为 python 的一部分,非常积极的在被维持。因此,虽然 ibus-pinyin 目前已没有人在维护了(”弃婴“),但我配合一个 pinyin-database 的字典,再加上我自己累积的 cache,使用起来非常的快,也非常稳定。非常好用! 如果吴鹏(Peng Wu,ibus-libpinyin 的负责人)不愿意考虑第2项的话,也许我们可以试图将 ibus-pinyin 复活。不过这是一个非常长期的计划,必须放在一个推广 Linux 桌面的大蓝图下做考量(包括基金的筹集等)。

4. 关于“战争”,现代的战争讲的主要是“贸易战”,“智权战”, “软件战”。中国人用的都是 Windows (很多还是盗版的),必须想办法改善吧?“钱”其实不是最大的问题,我们把最宝贵的“使用者经验”,无偿的完全贡献给微软,才是最应该让我们担忧的。 当然啦,没有人会去管这些事的。
上周,我终于搜索到了 Ubuntu Kylin 和 Fcitx 相关开发者的信箱,给他们发邮件,建议他们开发或嵌入“单手笔顺输入法”。
结果,依然是和其它邮件一样——继续等待(不知会不会有的)回应。

确实,想要吸引别人来参与做一件事,最有力的方式就是“金钱”,没钱的,就只能“谈理想”了。
即使是志同道合的人,还得等他先解决了吃饭问题、有空余时间、有兴趣、有精力、会写程序、知晓操作系统输入法接口……所以,得之我幸,失之我命。

说服红帽?我没有信心。一不懂红帽开发主要人员信箱,二就算发了邮件给他们,结果也多半和其它邮件一样。
作为一个从来没有接触过任何项目、业务、生意的“纯软件技术应用者”来说,我想不出筹集资金的手段。
复活 ibus-pinyin 好不好,优点在哪里、缺点这哪里,我不懂程序,没有发言权。

不过,我倒是有个问题不理解,想问问,从程序上说,ibus 和 ibus-pinyin 的关系是怎么样的?
是类似火车:ibus是车头,ibus-pinyin和其它ibus-xxx是其中不同种类的车厢?
还是类似汽车:ibus是发动机,其它ibus-xxx在编写时是不是就已经包括了 ibus 所有代码在内了?

而更进一步:ibus-table及其下的各种码表输入法的关系,又是怎么样的?
因为不理解这个关系,所以,我不懂,我想修改数字小键盘的功能,是应该修改ibus程序?还是修改ibus-table程序?还是需要另外写一个外挂程序?

利用改造 ibus-pinyin 当然好,这可以做一个很好的示范:
所有的输入法都可以改造加上“单手笔顺输入法”合并使用,只要改数字小键盘的功能就行。
这其实就是一个“农村包围城市”的战术——
看上去“单手笔顺输入法”都是各个输入法的“附加功能”,但如果每个输入法都带有这个功能,就变成了“单手笔顺”是输入法普遍存在的主要功能了。

就像当年的“五笔输入法”,很多人很喜欢,于是后来就冒出了各种版本的“XX五笔”。
所以,我是想尽快有个“单手笔顺输入法”试用版出来,网友们就能体验到使用数字小键盘输入汉字的快捷和方便了,然后也许就有更多的人愿意参与制作和改善。
但现在很多人给我的建议却是:把数字键映射到字母键上就能用了呀。——唉,南辕北辙。

--------------题外话,分割线---------------

关于“战争”,我的看法是,商场像战场,更似赌场,赢钱的一方总是说是因为自己的“技术高超”,
而输钱的一方,输少时能忍,输得多了,就会抱怨对方作弊出老千,然后再继续输,自己又没有什么办法挽回局势的时候,争吵打架是最终必然的结果。
所以,中华民族“家天下”的治国外交以及“合作共赢”经济理念,与西方的“霸天下”的治国外交以及“零和游戏”的经济理念,有很大的不同。

在中国古代,有很多这样例子:
如果某年、某地闹大灾荒,当地的富豪就会大兴土木,盖戏楼、建别墅。——为什么?为了显摆自己有钱?
不是的,是为了让村里乡亲的穷人们有活干、有饭吃。——这比直接给穷人送免费午餐、发救济款,给别人留的面子大多多了。
干活拿钱,天经地义,人人都不觉得自己是在“接受救济”。

所以,为什么“亚洲基础设施投资银行”以及“一带一路”一提出就那么受欢迎?就是这个原因,有钱来、有活干、建成的设施看得见、摸得着。
比起好莱坞影星和政客轮换不停地去发放粮食,可怜巴巴地伸手拿,显然,还是干活拿钱更有面子,自己也更有成就感。

还有一个例子,不记得是谁说的了,好像是在《群书治要360》里看到过,古人说:
给穷人一块熟肉,不如给他一块生肉,他拿回去,喜欢煎、炒、蒸、炸,各种烹煮方法都可以自己选择。
同样地,给穷人一间屋,不如给他一块地,他喜欢种、养、搭、盖,各种治业方法都可以自己选择。

说到这里,我觉得,很多人喜欢钱,其实喜欢的是“赚到钱的过程”。
当然,也会有觉得“赚钱太累”的时候,那是因为你不喜欢“努力了这么多,仅赚到那么一点钱的过程”。

开源软件,很多人在享受“成就一种程序,实现一种功能”的过程,
而我的“单手笔顺输入法”并不在他们想实现的功能范围之内,所以,求人很难。
也许,我太想得到这个程序有这个功能的这个“结果”了,因此,我感受不到快乐。
我倒很希望微软能率先做出这个“单手笔顺输入法”呢。

最宝贵的“使用者经验”,就犹如一部好的电影创意梗概,如果没人投资拍摄,始终是一叠废纸。
而如果公开了,别人依据这个创意改了改,形成剧本(法律上不侵权),拍成了电影赚了钱,原创自己又喊亏了(真是没有成就感)。
但回过头来细想,原创自己损失了什么呢?损失了一个赚钱的机会?损失了一个出名的机会?
——没有,本来仅仅靠自己的这个创意点子,自己根本就没有赚钱或出名的机会。
只有能把“点子”变成“成品”的人,才能赚到这个钱,才能出这个名。

我不在乎“单手笔顺输入法”能否为我自己赚来钱,我甚至希望有人能靠这个码表赚到钱,
就像我有一部好的电影创意梗概,如果真有人拿去拍成了电影,我没赚到钱不要紧,
而能在电影院看到自己的创意梗概变成影片,这已经是我赚了。
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#8

帖子 Ping-Wu » 2018-02-04 8:37

yq-ysy 写了: 说服红帽?我没有信心。
这跟 “信心” 无关,而是如何 “建立” 我们的 “实力”,让我们讲的话有 ”说服“ 力。

上个礼拜我参加了一个大型的国际电信会议(Pacific Telecommunications Conference),国内的电信大户如中国电信,中国联通,和记(香港),中信(CITIC),华为技术,中华电信(台湾)等都派了高级主管率团参与。今年红帽(Red Hat),英特尔(Intel),甲骨文(Oracle), 微软(Microsoft)等电脑软硬体公司也有派团参加。很有意思的,去年这个会议里还有人谈到 Linux,今年我发现,根本没有人在谈了。这么快就失去兴趣了?刚好完全相反。现在全世界的电信界讲的是虚拟系统,如 SDN (software defined network),VNF (virtualized network functions)*,SD-WAN 等。一提到虚拟 “系统”,那就完全是 Linux 的天下了。问这个问题一定会被笑的。
笔顺输入法.a.jpg
我跟几位与会人士谈了一下您发明的单手笔顺输入法,他们第一个问题总是:谁会去使用呢?如果大家的预设前提(preconception)已经被套牢在 ”没有人会去学习新的输入系统“,有谁会有兴趣去协助开发呢?花钱请人来写也不是解决办法。第一,这不是写代码(code)的问题,而是表达运算法则(algorithm)的问题。美国人常常说,会写代码的人一毛钱可以请到一打(coders are a dime a dozen),但会把一套复杂的发明清楚的转换成 algorithm,则少之又少。第二,代码初稿写出来了,以后除臭虫,修改功能,以及其他维护等的费用怎么办?后者的费用跟前者比例一般是 90 : 10!

当时我谈话的对象都是管理人士,而且时间很短,因此不能代表一般的想法。不过有一个地方倒是引起他们的注意:目前我们在视窗里使用的中文输入,不管是微软预设的或搜狗,都可以把我们打入的字 cache 去。久而久之,一不注意,我们的习惯,想法,还有其他隐私(以及公司机密!)都会被包装起来卖给出价最高的人。这是一颗很恐怖的定时炸弹,但没有发生以前,谁也不会去注意的。

我们是否需要一套更好的中文输入法呢?答案一定是肯定的。但开发出来以后,有多少人会日常的使用来回馈 “使用者经验” 呢?根据我的经验,答案是 “零”! 缺乏这种回馈机制,根本无法开发出任何可使用的软件。这就跟 Linux 桌面一样,很多人都觉得 Linux 桌面很重要,但有多少人愿意花时间,真正的去改善 Linux 桌面可被接受的环境呢?答案也是很令人沮丧!我所谓的 “Linux 桌面可被接受的环境” 主要是指 Linux 环境下的应用套件。东西是有,但真正有使用经验,可以提供 “付费” 服务的专业人员,好像还没有。

因为缺乏专业的 Linux 桌面套件服务人才,没有公司会接受 Linux 桌面系统。反过来讲,没有后者,前者也无法培养。Linux 伺服器跟桌面最大不同点之一,在于伺服器的使用者常常本身就是开发者(例如我们很早以前写了一个RAID5套件)。Linux 桌面使用者,“几乎” 唯一可以贡献的地方,在于收集使用者经验(不只是自己的)提供给套件开发者。不过像这么简单的事,也没有人愿意花功夫作。另外一个贡献管道,就是出钱啦。不过,捐给谁呢?

我觉得您这么有热忱想改善中文输入结构,应该稍微忍耐一下目前不利的客观环境*,把眼光放远一点,从改善 Linux 桌面套件的接受度这方面着手,先打造一个环境让更多的人能接受 Linux 桌面。使用的人多了,讲话就比较大声,提出的建议,Linux 公司像红帽等也比较愿意考虑。 不过这种事绝对不可能只是一个人在干,对 Linux 桌面有兴趣的人也必须踊跃的出钱出力。如果方向正确(即可以促进公司及ZF机构考虑 Linux 桌面),我可以提供一点种子基金(额度 $1,500USD,~1万人民币)。 以后慢慢熬把 ibus-libpinyin 的 algorithm 搞熟了,再来开发笔顺法就容易了。(我敢挂保单到时候你就可以自己写程序了,更重要以后的维持的问题也不必烦恼了。) 我们应该都知道战国时代围魏救赵的故事吧?爱因斯坦的相对论也指出,直线距离并不一定是最短的。

* 我在这里提到很多次,我们以前办了一个相当成功的老人电脑班(学员们包括退休的医生,公司领导,大学教授,蓝领工人等)。我觉得我们成功的最大因素乃是一开始我就规定成员必须先买一台我指定新的(但很便宜)笔记电脑,作业系统则是我根据一般需要,配合先前收集的使用者经验,烧出来的 customized Ubuntu LiveUSB。“学生” 们把进门的功夫练好了,当然可以使用自己买的电脑(包括 Mac),装设自己的系统,但很少人有这个需要。唯读的 LiveUSB 使用起来一般比从硬盘开机还要快,而且不必烦恼电脑病毒,这就是 Linux 桌面最大的优点之一。做得好的话,很容易推广。

反观目前大部分的 Linux 论坛,不同的软体硬体到处泛滥。有经验的大牛们,把时间放在帮助解决零零散散(有些甚至是
esoteric)的问题上,对整个 Linux 桌面的进展,大体上完全没有帮助。举个例子,今天我们这个论坛上有两个关于中文输入及中文乱码的问题。我在 Ubuntu 18.04 里无法重复他们的问题(表示已解决了),老调重谈很浪费宝贵的资源。开源软件是一个 “双向道路”,基础乃是建立在 "有取有给" 这个精神上,但很少人这么想。大多数人来这里,拉个屎,撒泡尿,卫生纸是免费的(感谢坛主们!),有人还期望我们可敬的大牛老牛们帮他们擦屁屁。

* 2018中国SDN/NFV大会 将在 4月17-18日 在 北京新云南皇冠假日酒店 举行:

http://www.infoexevents.com.cn/chinasdn/sponsor_c.htm
上次由 Ping-Wu 在 2018-03-08 13:02,总共编辑 1 次。
头像
yq-ysy
论坛版主
帖子: 4431
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#9

帖子 yq-ysy » 2018-02-08 12:58

Ping-Wu 写了: 这跟 “信心” 无关,而是如何 “建立” 我们的 “实力”,让我们讲的话有 ”说服“ 力。
上个礼拜我参加了一个大型的国际电信会议(Pacific Telecommunications Conference),
我跟几位与会人士谈了一下您发明的单手笔顺输入法,
感谢您向业内人士推荐“单手笔顺输入法”。看了您的叙述,不论是输入法,还是桌面套件,我觉得我们都需要研究三个关键问题:
(1)谁需要——是否符合用户的需求;
(2)谁来做——他是否能从中获取利益;
(3)如何做——万事开头难。
Ping-Wu 写了: 他们第一个问题总是:谁会去使用呢?如果大家的预设前提(preconception)已经被套牢在 ”没有人会去学习新的输入系统“,
(1)谁需要——是否符合用户的需求;
这些天,我学习到两个知识点,一是细化拆分用户需求,就能逐步发现潜在的市场需求,然后开发出能帮助他们解决问题的产品。二是所谓“创新”并不是普通人理解的那样,非得全部推到重来、搞一个别人没见过的东西才是“创新”,其实,在已有的产品上改善用户体验、改进功能,这也是“创新”。

就输入法来说,在电脑和手机里输入中文汉字,这是基本的用户需求。目前拼音输入是主流,但重码多、找字难;曾经红极一时的五笔输入法现在几乎没人用了;手机上的语音转换功能适合懒人,但在很多场合下不想泄漏隐私还是得打字;手写输入适合不会拼音的老人,但一笔一笔写仍是缓慢乏力。但是,目前有没有像拼音一样不用学习就会用、不用背字根、又比拼音更准确更快、既能在电脑使用、也能在手机上使用的输入法呢?没有。

乔布斯曾说:靠用户调查来设计产品太难,很多时候,要等到你把产品摆在面前,用户才知道想要什么。(但显然这样也会耗费大量的失败成本)。就输入法来说,各种各样的输入法有很多,但似乎只有我的“单手笔顺输入法”刚好能兼顾上述这些问题。而且,单手笔顺输入法和拼音输入法一样,每个人在上小学时就已经会了,不用再另花时间学习,不用背字根。我目前从事的是影视行业,一部影片,每个画面都要考虑到:“如何吸引观众继续看下去?”

同样地,我在做“单手笔顺输入法”的编码时,也时时在考虑着:如何让用户体验到这个输入法简单、方便、快捷?普通的手机已经带有1~5的笔顺输入,但这样的输入效率很低,我设计的0~9带边旁部首的编码,能提高输入速度。数字小键盘7在1上面都是“横”,8在2上面都是“竖”,9在3上面都是“撇”,4左6右都是“捺”,中5下0都是“折”。这些是在使用了多年原“数字五笔输入法”后,总结经验改进的成果。如何让用户“不必背字根”也能记住边旁部首的编码?——这是我在设计0~9笔顺编码时首先考虑的问题,对于第一次使用的人来说,提示信息是很重要的。如下图所示,边旁部首的编码位置也是符合笔顺规律的,并且兼顾了人类的视觉和记忆习惯,所以不必费心记忆,一边打字就能一边很快牢记在心。
Code_Table.jpg
Ping-Wu 写了: 我们是否需要一套更好的中文输入法呢?答案一定是肯定的。但开发出来以后,有多少人会日常的使用来回馈 “使用者经验” 呢?根据我的经验,答案是 “零”! 缺乏这种回馈机制,根本无法开发出任何可使用的软件。这就跟 Linux 桌面一样,很多人都觉得 Linux 桌面很重要,但有多少人愿意花时间,真正的去改善 Linux 桌面可被接受的环境呢?答案也是很令人沮丧!我所谓的 “Linux 桌面可被接受的环境” 主要是指 Linux 环境下的应用套件。东西是有,但真正有使用经验,可以提供 “付费” 服务的专业人员,好像还没有。

因为缺乏专业的 Linux 桌面套件服务人才,没有公司会接受 Linux 桌面系统。反过来讲,没有后者,前者也无法培养。Linux 伺服器跟桌面最大不同点之一,在于伺服器的使用者常常本身就是开发者(例如我们很早以前写了一个RAID5套件)。Linux 桌面使用者,“几乎” 唯一可以贡献的地方,在于收集使用者经验(不只是自己的)提供给套件开发者。不过像这么简单的事,也没有人愿意花功夫作。另外一个贡献管道,就是出钱啦。不过,捐给谁呢?
(2)谁来做——他是否能从中获取利益;
很不幸,按佛学的术语来说,我们现在正处于“减劫”,大部分人的生存目标都是为了“追求自我利益”。(相反的“增劫”则是大部分人的生存目标是为了“帮助别人”。)所以,在现代社会,金钱确实是能让人去做某一件事情的最大驱动力。我同意您说的“花钱请人来写也不是解决办法”,是的,虽然重赏之下必有勇夫,但很多人的思想是“不必做得很完美,只要能拿到钱就行。”感谢您愿意提供种子基金,但显然,这笔钱是吸引不了优秀程序员的,他们一周的工资都不止一万元了。也许,能吸引三、四线城市的大学生参与?突然发现,一场NFL超级碗橄榄球决赛的门票钱,这中国能办很多事情呢。诶,我还是继续幻想吧,也许,已经有某个满怀热情的程序员在默默地写这个“单手笔顺输入法”程序了?(都不介意这程序是否完美、是否日后维护、修改简单了。)

我一直很想研究出Blender发展模式的成功之道,很多blender用户很积极地反馈使用经验、提出改进意见,更有很多人自愿捐款以支持Blender的发展。不过有一点不同的是,Blender之前是一个公司自己使用的商业软件,已经有了一定的成熟度,后来才开源的(类似Netscape网景浏览器,即开源后成为后来的mazilla也即Firefox火狐浏览器)。

从影视的角度看,也有类似的例子:国外的“大片”,很多电影特效都是影视公司自己聘请程序员开发专门的特效软件来实现的,而国内的影视工厂仍是在使用盗版的“准专业级”软件,甚至连开发一个plug-in插件都没有考虑,所以国产电影“五毛特效”铺天盖地——没事,中国人傻钱多,电影赚到钱了,这就行了,干嘛还浪费钱去开发什么软件呢……
Ping-Wu 写了: 有谁会有兴趣去协助开发呢?花钱请人来写也不是解决办法。第一,这不是写代码(code)的问题,而是表达运算法则(algorithm)的问题。美国人常常说,会写代码的人一毛钱可以请到一打(coders are a dime a dozen),但会把一套复杂的发明清楚的转换成 algorithm,则少之又少。第二,代码初稿写出来了,以后除臭虫,修改功能,以及其他维护等的费用怎么办?后者的费用跟前者比例一般是 90 : 10!

我觉得您这么有热忱想改善中文输入结构,应该稍微忍耐一下目前不利的客观环境,把眼光放远一点,从改善 Linux 桌面套件的接受度这方面着手,先打造一个环境让更多的人能接受 Linux 桌面。使用的人多了,讲话就比较大声,提出的建议,Linux 公司像红帽等也比较愿意考虑。 不过这种事绝对不可能只是一个人在干,对 Linux 桌面有兴趣的人也必须踊跃的出钱出力。如果方向正确(即可以促进公司及ZF机构考虑 Linux 桌面),我可以提供一点种子基金(额度 $1,500USD,~1万人民币)。 以后慢慢熬把 ibus-libpinyin 的 algorithm 搞熟了,再来开发笔顺法就容易了。(我敢挂保单到时候你就可以自己写程序了,更重要以后的维持的问题也不必烦恼了。) 我们应该都知道战国时代围魏救赵的故事吧?爱因斯坦的相对论也指出,直线距离并不一定是最短的。

我在这里提到很多次,我们以前办了一个相当成功的老人电脑班(学员们包括退休的医生,公司领导,大学教授,蓝领工人等)。我觉得我们成功的最大因素乃是一开始我就规定成员必须先买一台我指定新的(但很便宜)笔记电脑,作业系统则是我根据一般需要,配合先前收集的使用者经验,烧出来的 customized Ubuntu LiveUSB。“学生” 们把进门的功夫练好了,当然可以使用自己买的电脑(包括 Mac),装设自己的系统,但很少人有这个需要。唯读的 LiveUSB 使用起来一般比从硬盘开机还要快,而且不必烦恼电脑病毒,这就是 Linux 桌面最大的优点之一。做得好的话,很容易推广。

反观目前大部分的 Linux 论坛,不同的软体硬体到处泛滥。有经验的大牛们,把时间放在帮助解决零零散散(有些甚至是esoteric)的问题上,对整个 Linux 桌面的进展,大体上完全没有帮助。举个例子,今天我们这个论坛上有两个关于中文输入及中文乱码的问题。我在 Ubuntu 18.04 里无法重复他们的问题(表示已解决了),老调重谈很浪费宝贵的资源。开源软件是一个 “双向道路”,基础乃是建立在 "有取有给" 这个精神上,但很少人这么想。大多数人来这里,拉个屎,撒泡尿,卫生纸是免费的(感谢坛主们!),有人还期望我们可敬的大牛老牛们帮他们擦屁屁。
(3)如何做——万事开头难。
我设计的“单手笔顺输入法”,您提出的Linux桌面套件,以及您所说的这不是写代码(code)的问题,而是表达运算法则(algorithm)的问题。我不大理解algorithm是什么意思,之前给Rime输入法引擎的开发者“弓辰”写过邮件,他的回复是:“目前我主要精力放在輸入法算法庫及相關支持工具的開發上,具體的輸入方案已經陸續從輸入法獨立出來,由社區編寫、維護。”Rime应该是很成熟了吧?也已经有很多个输入法挂在Rime上了,但对于我这个程序盲来说,现在也并不觉得“开发笔顺输入法很容易啊”,我发这个帖子想自己写程序修改数字小键盘的功能,到现在也依然找不到一个入口啊。

您把各种Linux下软件,比喻成零散的工具,想希望整合成一个Linux 桌面套件,推广开来然后就能反过来,促进各个工具的发展。但这里有个比较严重的问题是:您说的“Linux 桌面套件”本身有没有一个庞大的用户需求?因为我是这样理解的:就像3D动画软件,很多人学会了建模,模型做得很精美,但也就这样而已了,依然找不到“能靠建模赚大钱”的工作,自己也依然没有什么名气。——为什么?因为没有“故事”。观众付钱去电影院,看的是“故事”,因为观众喜欢看故事,所以才有人投资拍电影,所以才有人聘请3D动画师来为电影做特效。而单单会3D建模人,自己很难找到“喜欢付钱看3D模型的用户”。——单单“有故事”还不行,还得是大部分观众喜欢的故事才行。所以每年电影市场上成百上千部电影,亏的是大部分,只有极少几部片子能赚到钱。要等“Linux 桌面套件”蓬勃发展起来,我已经等了20年了,是的,从1998年开始就期望着这一天了。现在发展到这个程度,已经很满意了。我觉得,开发一个“单手笔顺输入法”程序,缺的不是环境,而是人,一个和我一样看好这个输入法前途的程序员。

缺乏一个“利益导向的生态链”,所以很多事情,设想中很美好,但实施起来却举步维艰。很多年前写过一篇《完全在Linux下工作》的王垠,在近几年自己的博客里反思说“Linux其实并不完美,甚至还不如windows”,我看到他这篇文章时,我就在想,也许你能写出一个完美的操作系统,但你能让它普及开来吗?有办法能让许多人一起用这个完美的操作系统吗?同样地,手机的Android安卓系统也并不完美,但它产生出了一个“利益导向的生态链”,所以变得人人都离不开它,一边骂它,也仍在一边靠它赚钱。QQ也是这样,sogou搜狗输入法也是这样,一边骂它,也仍在一边使用它。

我觉得“Linux桌面套件”的前景并不美妙,因为现在手机的很多功能已经在替换台式电脑的工作,更何况还有一个(盗版)windows在世。我认为Linux的下一个突破口,是在“物联网”系统,例如“家电控制中心”,类似wifi路由器(或者,干脆可以直接整合进wifi/5G路由器内),然后只要家用电器带有兼容芯片(必须的硬件支持,能连接上wifi或5G路由器,这个芯片也是技术转换为金钱的重要渠道),手机和电脑就能轻易地控制家里的电器设备。回到家,饭已煮好、汤已煲好、冰箱里需要的菜已经解冻、空调已开到合适的温度、狗粮猫食已喂、开门时电视已经打开,走廊和卧室的灯已经亮起……现在已经有一些零星的设备能实现上述功能,但就如您所说,它们是在零零散散地解决各自的问题,没有整合到一起,效率不高,每个电器都要安装一个APP,用户使用反而觉得麻烦。也许已经有一些大公司在研究这样的“家电控制中心”,就像手机上先有Apple苹果公司在开发ios系统,后有Google谷歌公司开发Android安卓系统,这也是Linux的一个机会,继网络服务器系统、手机安卓系统之后的又一个机会,一个免费版的 Linux“家电控制中心”,它也是一个完整的“利益导向的生态链”,也许能让您赚到大钱(再一次,只能用“利益驱动”的方法来吸引人做这设想中的好事)——赚到大钱后,别忘了聘请程序员来写“单手笔顺输入法”程序。
头像
rosn
帖子: 1014
注册时间: 2006-01-14 18:33

Re: 我编写了一个“单手笔顺输入法”的码表,请问如何利用、修改和调试Python写的ibus-table输入法程序?

#10

帖子 rosn » 2019-03-14 21:00

我是初学python的新手,希望得到大家的耐心指教,先感谢大家对我的付出!
回复