|
说到输入法,想来大家都了解。但对于输入法平台,相信多数人不甚了然,或有一个模糊的认识,但对其细节的认识却可能并不准确。
自然,我个人认识甚浅,只因发现这儿关于输入法本身的贴子较少,故此抛块陋砖,望引来高人落玉,自是幸事。
现在不少的人对输入法有着较深的认识,但苦于不会编程,因此,空有好想法却做不出真正的输入法。而输入法平台,就是给输入法码表提供支持,使其升变成能用的输入法。这样打个比方,即输入法码表像手机卡,而输入法平台则像手机本身,当较准确。
由上可见,输入法平台,核心就是对码表的支持能力,然后是依此而来的各种外延功能。因此,当说一下输入法的码表种类及特性。依个人浅见,从输入法平台的角度,输入法码表可分为以下几种:
一、按单字的全码码长,可分为单字全码码长固定类型、单字全码非固定类型。
(一)单字全码码长固定类型的,典型的便属传统五笔,传统五笔的单字全码码长是四(也有少数字是三,如“去”这样非字根且取码信息量少的)。单字固定码长的,基本是单字全码为四。但在词上,则又可分为词码长固定与非固定类型。
1、词码长固定类型。较典型的也是传统五笔。传统五笔的词码长也是四码。这样字词全是四码的类型的特点往往是单字能力较出色,至于在词量上则或中型或小型。但就此种码表的特点来说,字词能力还是较均衡的,总的来说是字重于词。
2、词码长非固定类型。
此种又可分为每个字词皆打空格确定型和前部连续四码连打型。
a、每个字词皆打空格确定型。因为词码长不固定,因此“连累”了1类中单字能四码直接上屏的功能不能实现,因此,需要每打一个字或词,都得用空格或别的键确定。这种类型的码表是支持的词能力大大增强,单字的能力也能得到一定的保证。总的来说是词重于字。
b、有人由于看到了a中模式中需要按大量的空格(对于熟手来说,空格也是累赘),因此,提出连续打时,前部四码自动一切分,遇到超过四码的词后,即打空格确定。此即“超级字词”模式。比如说自然码中有此模式,酷极有此模式。这种模式可能理解的人不多,我便举个例子说一下:
比如说有以下几个字词:
abcd 甲字(单字)
ef 乙字(单字)
efgh 乙词(词)
abcde 丙词(词)
若你按的码是abcd时,提示行上出现的是四码中的甲字,再接着打e,出现的是abcde代表的丙词——似乎没什么出奇的?再接下来打f,提示行上出现的却是“甲字”和“乙字”的组合,即因为是空码,因此自动四码一切分了。再打gh,即你打的码是abcdefgh,则你应该能推算出,提示行中是abcd甲字和efgh乙词的组合了。
这种模式的好处很明显,即相当于在过去的四码字词一顶的基础上,加入了长码词空格送出的功能。但损失了单字的一级简码的自动顶功能——这不出奇,没有无副作用的东西的。
(二)单字全码码长非固定类型
单字全码码长不固定类型的,最典型的自然是全拼,全拼单字的全码码长少则一,多则六。现在来说,单纯打全码的全拼已经基本没有了,因为本身的码表的效率过低,因此往往以简拼及智能性作弥补。我觉得作为输入法平台来说,不宜搞全拼的,虽然用者最众,但毕竟先天效率低下(就算加了智能亦如此,即只能在闲聊时能应付,别的方面实在不行),因此,对全拼,只是这样提一下,不再多讲。
单字全码码长不固定的还有别的类型的,比如说声笔码(包括声笔飞码),这个留待下边讲,因为这种编码有其特殊性。
二、按码表是否含“顶功”特性,可分为传统式码表和顶功码表。传统式码表,上面说的都是,不再多讲,这儿就说一下一种新型的码表,即顶功式码表。
所谓顶功,就是打了上字的码,不用空格送出,就可以直接打下边的码,从而上字的码被顶出,所谓“顶”功。
就技术来讲,顶功就是通过“空码时自动截空码前的内容”来实现的。就编码手段来说,顶功是通过分离出若干字母不参与正常编码,而作为一种特殊的小规则,并结合设定正常码自动截断的码长,来实现的。这样说,估计很多人看不明白,还是举例吧:
比如说上面说的“声笔飞码”,它是分离出aeiou五个字母作为笔画码,并设定正常的码两码一截(它的正常码的结构是“声母”+“部首”+“笔画”+“笔画”……)。举例:“夫”,声笔飞码中是“fa”(a为横),打fa后,再打“人”的第一码“r”,因为aeiou不作为正常编码,即这几个字母的后面不能跟正常的码,因此打r后,“夫”直接上屏,无须再打空格送出。还有,由于在正常编码方面设定的是两码一截(即不能连续打三个正常码),因此,打了两个正常码后,再打正常码,就会将前字顶出,无需空格。这样的好处是很明显的,即可以弄出来大量的一级简码(声笔飞码中是五百来个),从而使得打普通的文本时,由于五百个常用字的覆盖面已经相当大,因此纯单字的平均码长的很低的(大概能比五笔的单字码长短上35%左右)。不好处也是很明显的,即由于正常的码两码一截,因此使得编码空间过小,不是很常用的字的码长就有很长的,编码长短不大均衡,而且词能力基本没有了。当然,由于纯单字码长已经够短,再加上单字的确定性远比词好,因此,声笔飞码的效率还是很高的。
我自己做的“丁丁码”也是顶功特性的码,不同的是丁丁是用的eiaov来作为五个笔画码,正常码是三码一截,正常码也不是用的部首,而是用的按笔顺来的前两个部件。和声笔飞码比,不好处是很明显的,即一级简码的数量大为降低(一百来个),打普通的文字时,纯单字的码长略有降低。好处也是很明显的,即二级简码的数量大为增强,使得多数字都是三码打出的,码长的规律均衡性更好(不会出现一个还算较常用的字需要打四码以上才能出来),词能力也增强了很多(当然,还是不能和传统的编码比的)。
由此可见,顶功的码表都是在纯单字上很强,但在词能力上则削弱了很多,总的效率和传统的码表各有千秋,但确实是一种别样的体验。
先说这些吧,匆忙间,漏的肯定不少,欢迎指正。 |
|