QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1946|回复: 12

fcitx 整棵树均存在的BUG,不知从何入手。

[复制链接]
发表于 2008-3-18 16:53:57 | 显示全部楼层 |阅读模式
  1. 07年5月开始使用Linux,系统安装完后直接装的Fcitx作为中文输入法,我使用的是“冰蟾全息”,然而不幸的是,挂上码表后无法输入“,。”,向yuking兄请教了数次,yuking兄不厌其烦的回答了我一堆很菜的问题,也在他的机器上装了我的码表,一切正常,但在我这就是不行,加之工作忙,一度停用linux长达半年之久,十一又开始尝试安装,发现yuking发了070703版,居然把我的“冰蟾全息”作为一种输入法做进安装包中,解决了我的大问题,感激之情无以言表。
  2.       顺便简单介绍一下“冰蟾全息”,他是由杜冰蟾发明的一种输入法(关于杜冰蟾大家可以在网上搜一下就知道了),属于形音码的一种,是将汉字严格按照笔顺和规范的部首进行分解,并把这些部首的声母与键盘相对应,并制定了相应的组词规则。该输入法的特点:1是拆字时尊重了汉字的意,不会出现一些莫名其妙的“字根”;2是严格按照笔顺拆字,不会造成手写汉字时的倒插笔。3是将100个部首按照声母与键盘对应,避免了狂背字根,一段时间不用后对字根与键盘的对应关系又易忘记的情况。4是形音码是先分解汉字,这样对于不认识的字也能照输不误。
  3.       这一输入法我用了15年了,希望能与大家分享,向yuking兄学习,好东西要拿来和大家分享的。
  4.       再次感谢yuking兄的帮助,有机会来北京的话,我请你吃饭,我的e-mail:[email protected]
复制代码


关于fcitx挂上特定的码表无法输入“,。”的BUG的确存在,主要是fcitx使用这些码表使用时,只要输入条激活,做为翻页键的按钮将只能用于翻页,这个BUG很是奇怪。

伴随以上BUG,还有一个怪问题: fcitx默认就使用“,。”做为翻页键,而且非常困惑的是,虽然config配置表中明明写着上一页和下一页默认使用“- =”,但第一次启动fcitx如果你没有自行地修改~/.fcitx/config,那么fcitx将无视config下的配置继续使用“,。”做为翻页键。这个BUG在你把配置上一页和下一页改成“,。”后就正常了。

综合以上的BUG,MagicLinux 的编译的fcitx黑色星期五对fcitx-3.5/src/tools.c进行了修改:

-    fprintf (fp, "上一页=-\n");
-    fprintf (fp, "下一页==\n");
+    fprintf (fp, "上一页=,\n");
+    fprintf (fp, "下一页=.\n");

可惜这种修改治标不治本,第一个BUG仍不能解决,第二个BUG被和谐掉了。
发表于 2008-3-18 20:39:00 | 显示全部楼层
config 读取的问题。我认为,应该是 config 文件控制的代码编写失误。
一个软件在没有家目录的配置文件的时候,应该首先使用 /etc 里面的配置文件,之后复制一个到个人目录。
我觉得应该是 fcitx 这部分处理代码有失误。
回复

使用道具 举报

 楼主| 发表于 2008-3-18 22:19:58 | 显示全部楼层
不仅仅是这个错误,config读取错误先放一边,主要是某些码表使用翻页键时异常,这个BUG经我下载测试,2005年的版本都有这个错误。
回复

使用道具 举报

发表于 2008-3-19 20:12:18 | 显示全部楼层
码表能导致异常?
难道是传说中的外星人 gcc 代码攻击?

是不是码表的算法没有考虑到部分码表会使用 27 个英文字母之外的按键?
回复

使用道具 举报

 楼主| 发表于 2008-3-20 10:11:52 | 显示全部楼层
唉,我已经描述很清楚了,你自己用两个字母键设置为翻页键,然后你再试下翻页键还能否用来输出拼字的首个字母。
回复

使用道具 举报

发表于 2008-3-20 17:30:37 | 显示全部楼层
只用 scim
回复

使用道具 举报

发表于 2008-5-1 14:41:51 | 显示全部楼层
fcitx的这个问题太愁人了。
回复

使用道具 举报

 楼主| 发表于 2008-5-1 18:14:37 | 显示全部楼层
原帖由 sejishikong 于 2008-5-1 14:41 发表
fcitx的这个问题太愁人了。


在用了一段SCIM后,我重新打包过FCITX,删除掉三个特定码表工作就正常了,这叫眼不见心不烦。。。

这几个码表为:五笔拼音,这个码表没有多大意义,因为五笔码表可以按Z键开头进行拼音查询录入;晚风,不知道这个输入法怎么个用法,SCIM应该也没服务过这个码表;苍颉,这个码表在早期的FCITX就有服务,但所有的FCITX树的苍颉码表工作存在翻页冲突。
回复

使用道具 举报

发表于 2008-5-1 20:23:04 | 显示全部楼层
就这三个?五笔拼音意义不大,晚风好像有人用,仓颉是台湾用的比较多。去掉应该没什么问题。
回复

使用道具 举报

发表于 2008-5-2 16:39:08 | 显示全部楼层
到目录/usr/share/fcitx/data
对照 其中的 tables.conf 删除相应的码表,
再删除 tables.conf 中的对应项就可以。

要不就把fcitx的rpm包解开,自己删除里边不想要那几个东西,重新打个自己用的包也可以。

当然你也可以往里边添加码表。

我是用全拼和五笔98的,
为什么不用scim呢,自己用起来感觉比fcitx占资源少多了。
想要添加输入法和fcitx一样容易。
回复

使用道具 举报

 楼主| 发表于 2008-5-4 05:42:05 | 显示全部楼层
原帖由 hellothere 于 2008-5-2 16:39 发表
到目录/usr/share/fcitx/data
对照 其中的 tables.conf 删除相应的码表,
再删除 tables.conf 中的对应项就可以。

要不就把fcitx的rpm包解开,自己删除里边不想要那几个东西,重新打个自己用的包也 ...


scim对于使用五笔的用户来说是不方便的,fcitx可以很容易地进行拼音查询五笔编码,这是scim目前还没能做到的地方,scim在拼写过程中会输出字符对一些朋友造成一定的困扰。
回复

使用道具 举报

发表于 2008-5-4 13:05:06 | 显示全部楼层
scim对于使用五笔的用户来说是不方便的,fcitx可以很容易地进行拼音查询五笔编码,这是scim目前还没能做到的地方,scim在拼写过程中会输出字符对一些朋友造成一定的困扰。


也是,我现在scim,  98五笔也不太熟,还不得留着拼音,打不出的字还要用拼音............

想查询只能是在桌面放个字根表的图片,时不时还得打开看一下.................
回复

使用道具 举报

发表于 2008-5-4 14:07:55 | 显示全部楼层
用五笔的还是fcitx方便,另外scim和部分程序有冲突。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-23 22:39 , Processed in 0.051283 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表