[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: xcin input method



On Mon, Jan 03, 2000 at 10:11:25PM -0700, Anthony Fok wrote:
>   1. 小弟想改良一下行列30的支援,就是除了 w 起头的输入码外,其他的
>      都可以以数字选字上字,而不会把该数字当作输入码的一部份。其中一个
>      缓冲 (?) 的办法是取掉 %keyname 里 0-9 的数字键,但这样一来,
>      那些 w0 ~ w9 的 shortcut 就用不到了。请问如果要改 xcin 的 source,
>      是否应从 gen_inp 着手,加个 flag 来增加这项功能?(抑或另起炉灶,
>      用自己独立的 module?

是的,我正计画要改写 gen_inp, 看能否也加入行列 30 的这项需求。
但我在想如果要写的话就写得完善一点,不要只是行列 30 just work
就好了。目前还没有腹案,有人可以提供建议吗? :-))

>   2. 有没有人有兴趣增加「行列40」、「客家拼音」等输入法?
>      又,大家喜欢「带调拼音」(如 zh_TW.Big5/pinyin.cin)
>      抑或「无调拼音」(如 zh_CN.GB2312/pinyin.cin)?
>      客家拼音也许可以从 John Jenkins 维护的 Unihan.txt 中抽出制成。
>      带调的广东拼音也可以,不过懂得广东拼音 6 个或 9 个声调的香港人,
>      实在少之又少,倒可以解决过多重覆字的问题。

其实我就是「行列 40」的用户 :-)) 但我的「行列 40」已经有点走味了,
反正我觉得用不习惯就改。但因为我不知道行列 40 到底能不能自由使用,
所以我一直没有将 .cin 档放出来。如果可以的话,我当然乐意加入。

至于其他的输入法我就不熟了,能否请熟悉的朋友帮忙追踪一下,然后再寄
来给我?我都很乐意加入。

另外,我在想在 xcin 主程式中是不是一定要放入这么多的 .cin 档?是不
是应该将大部分的 .cin 档抽出来另外做一个 tarball, 而主程式的那个
tarball 只放几个最常见的 table (如 cj.cin) 或根本不放任何 .cin
table? 大家可以给我意见吗?

>   3. bimsphore、tabe 等将来可否配合 pinyin、cantonese 或其他输入法应用,
>      作智能选字? ^_^ (抑或这已经是 FAQ 了? ^_^)

有考虑过。先说拼音,有人建议可以将拼音写入 libtabe 里头,或说是 libbims
里头,当做是另一个 mode 来用,而实做上不会太难,只要将输入的拼音码转成
注音码,直接喂给 libbims, libtabe, 则现成的猜字演算法马上可以派上用场。

但如果是修改 gen_inp 来呼叫 tabe 的函式的话,则只能做到有限度的猜字。
基本上 gen_inp 是 table 导向的,它适用的是重复字数少的输入法,而这类输
入法是否有猜字功能似乎显得不很重要,因此我不太愿意为它重写一个猜字演算
法来用,换句话说,可以的话我暂不考虑在 gen_inp 中加入猜字的功能,或者
说如果真的要猜字的话,顶多就只有简单的查查 table, 选词频或字频最高的
来用。但若要复杂到可以分析语句、往前修改 .... 的话,我希望能尽量用
libbims 的话就尽量用。

基本上, bimsphone 只是一个壳,它呼叫 libbims (libtabe 的一部分) 来工
作, libbims 是注音猜字演算法的核心,它呼叫 libtabe 来工作, libtabe
则管理庞大的字词,同时也有词频等资料。不幸的是,目前它们几乎都是给 Big5
码用的,若要给其他内码用还得费一番手脚。但如果是 Big5 的话,我相信只要
O靠「音」来输入法的,如注音、拼音 .... 等,应该都可以直接使用 libbims。

至于使用 GB 码的朋友是否需要「会猜字」的输入法?我不清楚,我印象中他们
大都使用 table 形式的输入法,甚至他们的拼音输入法,需要打入一个 key
stroke, 结果跑出一个词。如 sky ==> 天空。目前 gen_inp 做不到,但我计
画下一步改写时要加入这个功能,因为已经有大陆朋友向我抱怨,少了这个的
拼音输入法对他们而言几乎是「无用」的 :-))

但如果仍然需要 GB 的猜字形的输入法时怎么办?或者我暂时先自私一点好了,
假如是 Big5 使用者,临时要打 GB 码的话呢?有人建议我要在 xcin 里头内建
一层转码层,让我们现在用 Big5 输入法打字,喂出去的却是 GB 码。这转码层
做起来似乎很容易,但若要写得很完善恐怕也要一番功夫。所谓很完善意思是我
们要考虑的不只是 Big5 <==> GB 双向而已,我希望做到的是可扩充性,就像载
入 module 或 .tab 档一样,需要时才载入某些 table 做某二内码间的转码。

Sorry, 一下子说太多了,还是一步步来吧 :-))


T.H.Hsieh


-- 
[ This mail was originally sent to  debian-chinese@lists.debian.org ]
[ and was forwarded to this list automatically. Big5 characters are ]
[ also converted to GB at the same time, Please note that there may ]
[ be errors during the conversion as this is not done by a human!   ]


Reply to: