25 Jan 2008

Python 写的输入法: scim-python

Linux 下输入法,我一开始使用的是 fcitx,后来切换到 scim 这个平台,但在 scim 里还是用得 fcitx,比较喜欢 fcitx 的输入习惯。也想过自己修改一下,或者 porting 新版的 fcitx 到 scim,但却一直没有行动。

关注 jserv's blog,经常看他提到新酷音这个注音输入法,想来使用自己亲手打造的输入法也是很爽的事情,于是参与一个输入法项目的想法越来越强烈。当再次看到 Jserv 提到《 SunPinYin 引擎改以 CDDL / LGPL 2.1 雙重授權 》,我终于决定花点时间了解一下 Linux 下的输入法,然后选择一个加入开发。

通过 SunPinyin 和新酷音这两个线索,我大体了解到比较现代的输入法都是基于统计语言模型(statistical language model, SLM)的智能引擎。而英文键盘到中文的转换方式主要有全拼、双拼、注音、五笔几种。新酷音是注音,在对岸使用。

上述这些输入法,大都使用 C++ 编写,而我对 C++ 不是不在行。又因为精力问题,也不想花太多在 C++ 上。于是,当我看到 python 写的 scim-python 输入法时,很是兴奋。Python 一直对我比较有吸引力,只是还没有等到好的切入机会。

scim-python 最开始是由 Shawn.P.Huang 在 2007 年 9 月开始开发的,他用 C++ 写了 scim 的 Python wrapper,而后在这个基础上又写了 EnglishWriter 和 Pinyin 输入法,后来 yufanyufan, 参与进来,写了整句输入。目前 scim-python 使用的是搜狗拼音输入法开放的词库,从输入效果来看,还算不错,已经达到可以使用的级别。但目前功能上还比较薄弱,设计上的变数依然很大。

--
每一个不曾起舞的日子都是对生命的辜负。
Gmail/Gtalk: jick.nan@gmail.com

2 comments:

  1. 我对于每一个在linux下自己做东西的人,不管做的东西有多大多小,一概都报以十分的崇敬,呵呵

    ReplyDelete
  2. Chen Sir, 我对每一个认真教学生的老师,无论职称多大多小,一概都报以十分的崇敬,嘿嘿

    ReplyDelete