LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3984|回复: 24

请教: 基于XIM的T9输入法的实现

[复制链接]
发表于 2006-6-28 14:34:33 | 显示全部楼层 |阅读模式
大家好,
我目前需要在Linux智能手机上实现T9输入法.由于以前没有作输入法的经验,甚至是linux的开发经验,所以有很多地方不明白.

1, 使用XIM还是使用IIIMF. 尽管网上有人提出IIIMF是XIM的后续版本,但是考虑到手机上的实际需求,个人感觉XIM已经可以完全满足需要. 但是我想知道,基于这两种方法的实现难度有多少? 基于IIIMF可以减少工作量嘛?

2, 个人对XIM的理解,请指正: XIM适合于东方语系的输入,也就是需要预处理的语言输入, 尽管英语不需要预处理,但是由于手机按键的限制,手机上的T9输入法也需要一个预处理的过程,所以XIM也是适用于手机上输入英文单词的.这样理解是否正确?

3, 使用IMdKit实现T9输入法的server需要自己去实现界面嘛?我是在这里论坛上的一个帖子看到有人这样讲的. 但是, 在Gtk+上不是已经实现了关于输入法的两个控件了嘛?如果这两个控件已经满足了我的需要,还需要去自己实现嘛? 或者说我还需要对Gtk作什么工作嘛?

4, XIM使用的是linux下的字库文件, 但是T9已经把字库封装在T9内部了,如果不使用linux的字库是否可行? 如果可以应该怎样作?

5, 请问那位高手有过基于IMdKit的开发经验,是否可以共享一些经验和代码? 不胜感激!


因为刚刚开始接收输入法模块,有很多地方不明白,如果问题中有弱智级的错误,还请各位海涵^^
发表于 2006-6-28 17:57:05 | 显示全部楼层
你的手机上用X window ? O_O
xim只能在X 里用,iiimf不是
还有一个输入法接口gtkim module,可以在gtk上用,不依赖于X
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-6-29 08:29:42 | 显示全部楼层
是的, 我们准备使用TinyX作为X Server
gtkim?你是不是指得GtkIMContext — Base class for input method contexts里面的接口?
这些接口是针对IIIMF嘛?我原来认为只要是一个输入法的engine通过这个接口就可以提供支持呢.
可否给一些具体的说明呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-5 09:53:01 | 显示全部楼层
现在公司计划有些变化,我可以自己评价各个输入法架构并选择使用了。现在想比较一下XIM,SCIM, IIIMF等,请问各位可否给些建议
回复 支持 反对

使用道具 举报

发表于 2006-7-5 23:49:32 | 显示全部楼层
Post by multinet
现在公司计划有些变化,我可以自己评价各个输入法架构并选择使用了。现在想比较一下XIM,SCIM, IIIMF等,请问各位可否给些建议

XIM跟SCIM能进行比较吗?
XIM是输入法协议,而SCIM是输入法平台,它可以使用XIM来跟应用程序通讯,也可以使用其他的接口,如gtkim module,或者qt immodule来跟程序进行通讯。
IIIMF没用过,不大清楚。不过据苏大侠说在至少现阶段SCIM要优于IIIMF,而且从各个发行版的接受程度来看,也是这样的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-6 09:49:30 | 显示全部楼层
也许是用词不当,我不是想说XIM协议,而是指得利用IMdKit的架构开发基于XIM协议的输入法模块,包括平台和engine。engine的问题不大,就是用T9了,可是用什么平台就很麻烦了。
看过SCIM的一些代码,感觉架构不错,就是文档太少:(
我也搞不清楚现在IIIMF作的如何了,架构很简洁,文档较多,但是好像应用的还比较少。

最麻烦的是,这些平台是不是适用于手机。
刚开始接手输入法,还有很多不明白的地方,多谢指正和帮助。
回复 支持 反对

使用道具 举报

发表于 2006-7-14 09:49:10 | 显示全部楼层
T9已经把字库封装在T9内部了?这个不太懂。我觉得输入法只会包含码表吧。怎么还包含
字库。看来我还真是需要多学习了
XIM是linux下xserver支持外挂输入法的协议。scim是支持XIM协议的一个输入法
IIIMF不知道
回复 支持 反对

使用道具 举报

发表于 2006-7-14 09:58:54 | 显示全部楼层
XIM输入法的编写相对还是比较简单的,比window下编写输入法简单多了。只要学习一下
chinput或者fctix,依样画葫芦就可以做出一个输入法。scim程序结构太复杂。不太好
回复 支持 反对

使用道具 举报

发表于 2006-7-14 10:59:27 | 显示全部楼层
只有精力旺盛的人才有兴趣学习 XIM 输入法协议 的 底层用法。

一般人,包括 scim xcin 等输入法作者,都是用日本人: Hidetoshi Tajima 写的
Imdkit 。 我的歪林输入法也是用这个库。用了之后,就不必理会 X 底层的东西。

在歪林输入的程式包里面,有个 sampleIM 目录,我写了一个超级简单的程序,
去演示怎样用 Imdkit ,它能对 xterm 输出 你好吗( 繁体), 因为我是香港人。
里面的 READmE 档案也是英文的。
回复 支持 反对

使用道具 举报

发表于 2006-7-15 07:24:04 | 显示全部楼层
ylam: it seems to me WaiLin is very similar to scim-tables, any interest to collaborate?

in addition, using scim has the advantages of supporting more platforms (rather than tied to X), such as Gtk and Qt
回复 支持 反对

使用道具 举报

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

本版积分规则

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