Fcitx走向新生

Posted: 七月 12th, 2007 | Author: | Filed under: 文章 | Tags: , , | 1 Comment »

Fcitx 是运行在Linux中的一种中文输入法,开发者是Yuking。前天,Yuking在fcitx网站发帖,决定终止fcitx的开发

Fcitx是我最喜欢用的输入法,现在就在用。有一点可以让我拿出来显摆的是,其中的双拼功能是我极力鼓吹加入的,而且当初我也帮助进行了双拼的测试。与Yuking六年多的辛勤劳动比起来,我做的根本不值一提,之所以腆着脸说一下,是为了表达我对于Fcitx的感情。Linuxsir.org与Fcitx的渊源更为深厚,感兴趣的可以看看北南南北的回顾

Yuking终止Fcitx的开发,作为一个用户,我当然觉得惋惜。好事者在探究Yuking做出这个决定的原因,也有很多人充满正义感地揪出所谓的“祸首”,为Yuking打抱不平。据我了解的情况,被人喷一身口水只是Yuking停步的诱因,真正的原因我们无须那么八卦地去打听。实际上,Yuking萌生退意决不是近期的事情,早在三年前他已经表示了这种想法。尽管Yuking的放手让人不忍,但是作为一个用户,强人所难地让他坚持下去,不免有自私的嫌疑,所以我很赞同“感谢你的付出,尊重你的决定”这种态度。

讲起Fcitx的时候,常常免不了要提到另一个Linux输入法平台——SCIM。很多人容易把Fcitx和SCIM都当作输入法,但它们俩并不是同一类的东西。Fcitx是输入法的具体实现,其底层的结构是XIM,而SCIM的目标是对输入法功能进行抽象并构建一个新的输入法开发框架,输入法的具体实现并不是SCIM关心的问题。尽管如此,从项目开发的角度把这两个项目进行一下比较还是能给我们一些启示。

首先,开发者的背景不同。Yuking是业余程序员,编程出于爱好;SCIM的发起者苏哲是专业程序员,几年来一直在不同公司从事开源软件的开发工作。我不懂代码,但是从两个人不同的背景上,我可以理解一些人对于Fcitx代码质量的批评。在一个群体合作的基础上编码,要更多地考虑程序的规范性、可维护性,但如果是一个人的话,也许编码会更自由、更加信马由缰,带来的问题自然是缺乏严谨性、他人接手维护困难。

再者,项目的目标不同。Fcitx的目标很简单,就是为了解决Linux系统的中文输入问题,所以功能设置上非常贴近用户的需要,在输入法的具体实现上也做得很好。SCIM的目标则远大得多,它是想成为一个平台,以此为基础容纳其他各种输入法,并减少输入法开发的难度。简单地说,Fcitx只是针对中文用户,所以在配置文件中用中文变量名并不见得是个缺点。而SCIM针对的是全球用户,无论是韩文、日文还是其他文字,只要有对英文键盘输入进行转换的需要,就能在SCIM的基础上开发出对应的输入法模块。

第三,开发团队不同。Fcitx到目前为止,可以算是一个人的项目,尽管也有一些热心人贡献了一些代码,但主要还是Yuking一个人在独力支撑。这种状况与我最喜欢的Slackware倒是有点相似。SCIM则一直面向国际开源社区,尽管一开始是苏哲做的开创工作,但现在已经形成了一个国际化的开发团队。我用Slackware最担心Patrick哪一天撂挑子不干,Debian用户则绝对不会有这种担心,Fcitx与SCIM也可作如是观。

主要由于以上后两点的不同,两个项目的传播范围也大相径庭。Fcitx仍然主要由中文用户自己下载安装,而SCIM已经被整合进主要的发行版之中,走向了世界。当然,由于目标用户不同,在覆盖面上进行比较对Fcitx并不公平,但至少可以帮助我们看出一个开源项目被国际社区接受的一些必要条件。

令人欣慰的是,已经有热心人开始接手Fcitx的准备,对于广大喜爱Fcitx的用户来说无疑是个福音。但是,Fcitx从一个人的项目变成社区合作的项目,一定有许多需要克服的障碍,需要深入细致、点滴入微的工夫,并不是靠一时的热情就可以支撑下去的。尽管看起来像是兜头的一盆冷水,但我其实是希望上面的分析能对后来者有所帮助,希望大家共同认真思考一下如何让Fcitx更加顺畅地融入开源社区。祝Fcitx在开源社区更广泛的合作之下如浴火凤凰般重新展翅翱翔。


One Comment on “Fcitx走向新生”

  1. 1 vvoody said at 9:09 下午 on 九月 29th, 2007:

    Pat如果哪天不干了,slk会怎么办?交给社区?


Leave a Reply