仓颉输入法

本页使用了标题或全文手工转换,现处于中国大陆简体模式
求闻百科,共笔求闻
仓颉输入法
中文输入法
发明人朱邦复
发明年份1976年
类别字形输入法

仓颉输入法是一种常用的中文输入法,由有“中文电脑之父”美誉的朱邦复先生于1976年创制。初期只有繁体中文版本,原名“形意检字法”,用以解决电脑处理汉字的问题,包括汉字输入、字形输出、内码储存、汉字排序等。朱邦复发明此输入法时正值他为台军“三军大学”发展中文通讯系统之际,时任台军“三军大学”主管蒋纬国为纪念上古时期仓颉造字的精神,乃于1978年将此输入法重新定名为“仓颉输入法”。

1982年,朱邦复登报公开放弃仓颉输入法专利权,并且极力推动电脑的中文化。现今大部分操作系统,甚至一些电子辞典皆附有仓颉输入法,繁体中文键盘也大多印有仓颉输入法的字根。在繁体中文世界里,仓颉输入法是最为普及的形码输入法之一。

仓颉输入法适用于多种平台,主流的中文操作系统和大部分电子辞典均有内建。一些字典辞典或线上中文字典亦采用仓颉编码作为检索工具。

历史

仓颉系统中,仓颉码不仅用来输入固有字,也可以组合、输出字形,甚至呈现虚构字

1973年春季,朱邦复返回台湾后,欲改良中文打字机,钻研中文检索方式。花了约三年时间,并且在研究后期得到台湾大学中文系毕业生沈红莲女士协助担任助手,于1976年底发布“形意检字法”,最初使用52个中文字母作检索字母,每个汉字分拆成3个字母的编码。当时,台军“三军大学”需要无给职人员发展中文通讯系统,40岁的朱邦复立即接受此一职务,这时的他并不懂电脑,至此才开始接触程序语言。

1978年8月,朱邦复和助手沈红莲重新规划拆取字根的方法,采用“首二身三”的规则,使检索字母数由52个减至26个,以适应一般电脑键盘。在减省字母前,原先的设计是在同一键中安置两个中文字母,以Shift键区分两者。

1979年,台军“三军大学”的有线短程中文通讯实验成功,朱邦复实现以中文字母作为内码,储存汉字字矩信息,解决电脑处理汉字的问题。时任台军“三军大学”校长的蒋纬国先生将其命名为“仓颉输入法”。朱邦复在同年12月开始,与宏碁电脑合作,开发内置编程语言、中文系统及应用软件的“天龙中文电脑”,于翌年起在市面上销售,备受市场欢迎。此中文系统以仓颉码为其根本,收字数万,效率甚高。朱邦复因此获颁发台湾当局所谓“行政院长奖”。

朱邦复继续改进仓颉输入法。同年,由他成立的零壹公司发表第二代仓颉输入法,使用在他为Apple II电脑设计的“汉卡”产品上。“汉卡”为该机提供中文接口,售价新台币1500元,使得华人利用电脑处理中文的成本更低。

1982年,朱邦复在《康熙字典》里选取四万多字,改良第二代仓颉,使它适应大字集的输入,并把成果发表为第三代仓颉输入法。同年,他登报公开放弃仓颉输入法专利权,并且极力推动电脑中文化。现今大部分操作系统,甚至一些电子辞典皆附有仓颉输入法,为繁体中文世界最普及的形码输入法

朱邦复本来想根据其“汉字基因”理论,创建一套“仓颉系统”,用仓颉码统一处理汉字的形、音、义、码、序、辨等六大问题。其中仓颉码的原始目的是汉字检索及排序,其取码具有前缀字身的概念,以前缀作为分类,字身作为补充,如此便可让电脑“理解”汉字,进而达到组字、字义理解,甚至与人沟通的功能。

由于本以汉字检索为目的,仓颉取码依据视觉辨识原理,能反映汉字的细微特征,同一汉字的不同字形异体字,许多时都会有不同的编码,因此重码率为当今中文输入法最低者。仓颉输入法亦为一般系统中支持字库最大者,几乎所有系统可见的汉字,皆可用仓颉输入法(系统)键入,因此也成为汉字文化工作者选用的主要输入法。然而,当今Windows系统只提供仓颉输入法,没有采用整套仓颉系统,因此许多原先的设计理念,如仓颉内码、字体产生器与极大字库等,都没有实现。

优缺点

由于开发甚早,又无版权,仓颉输入法的普及度在中文电脑系统中十分高,号称“只要有中文系统,就必定有仓颉输入法的存在”,所以人们学习仓颉后,理论上是不用担心无法使用它的。此外仓颉的重码率为所有中文输入法中最低,这就让用户只需要看着稿子或键盘就能打字,不需要紧盯着萤光幕来选字,实现“盲打”。仓颉输入法字根较许多形码输入法少和简单,容易记忆。它不依靠四排按键——即使没有把键盘上的数字键、符号键都用作中文字根键,输入时手指活动幅度与英文打字相若也免除输入符号、数字时的困扰,以及在笔记本电脑键盘上遇到的移位问题。它对汉字的拆分规则清晰严谨,只要熟悉拆码规则,绝大多数汉字的拆码都没有争议。仓颉输入法支持的字库极大,能输入几乎所有系统能呈现的汉字。

仓颉输入法虽然具备以上优点,但也受到许多批评,例如为了顾及检索而令编码规则相对较繁复,没有容错编码等问题。在朱邦复设计的“仓颉系统”中,仓颉码作为内码使用,所以字符和仓颉码只能是一对一的关系,不能有一对多的情况,这是朱邦复不设容错码的原因。但繁体中文Windows系统,或倚天、国乔等中文系统,系以Big5Unicode作为内码,因此此种一对一的限制非属必要,所以派生的仓颉输入法,常出现容错码。

仓颉还有一些特色,常被竞争对手或批评者视为缺点,但有研究输入法的人士并不同意有关批评。包括:依字形来取码,而非依书写的笔画和笔顺取码;同一笔画可以剪开(例如“里”字的仓颉码为“田土”)等。批评者认为它违反汉字逻辑,令汉字走上“歧途”,是缺点[1]


版本与平台

版本

目前仓颉输入法通行的最新公开版本是第五代,而流传最广泛、最常使用版本是第三代。三代仓颉与五代仓颉相差不大。第五代增加了两个字根,增减了数个复合字和复合前缀,以及改变少数字拆码时的取形。其余皆与第三代一样。

朱邦复的多年助手沈红莲,另行设计苍颉检字法,坊间多称之为“第六代”仓颉,但实际使用上,一般都不把它视为仓颉输入法的新版本,相反更像另一款由仓颉派生而来的新输入法。它与三代仓颉或五代仓颉相差较大,字根明显增多,拆码规则也有不少改变。它应用于朱、沈二人开发的仓颉系统上,该系统字库完整收录了历代文献用字十万以上,以苍颉码作为内码,重码率低于5%。虽然仓颉输入法爱好者向朱邦复工作室索取到苍颉检字法编码,但它尚未正式发布。

版本演进

  • 1977年,朱邦复在台湾发表第一代仓颉,根据一万二千字的台湾教育部门的《“国语”辞典》所设计。
  • 1980年,发表第二代仓颉,仅将第一代仓颉略作调整。
  • 1982年,发表第三代仓颉,是以《康熙字典》为范围,选取其中四万字,将第二代加以改良的结果。
  • 1985年,在美国发表第四代仓颉。
  • 1987年,返中国大陆深圳科技园,任两仪文化科技公司总经理,发表聚珍大字库、第五代仓颉输入法。第五代将繁、简体字统一处理,共收集了约六万字,同时增加一些辅助字形及修正了少许的取码。在朱邦复工作室网站上的《第五代仓颉输入法手册》一书中提供了第三代、第五代改码字的对照表。
  • 1990年,与台湾“资策会”合作开发Windows 3.x,采用仓颉系统的概念。后来朱邦复与微软的合作关系破裂,之后Windows系统改采其他的汉字编码系统,并自行更新第三代仓颉输入法(修改了一些异体字及加入了部分香港字,但有错码),成为目前所见的主流版本。目前一般所称的“三代仓颉”多指此版。
  • 2002年,朱邦复在其论坛提及:“仓颉输入法最后一版本——第六代已完成,并据之设计中文CPU”。因为朱邦复已不理输入法之事,转交沈红莲女士负责。第六代仓颉输入法改名为“苍颉检字法”,原本并不公开,仅供与朱邦复工作室有工作关系之专家学者使用,直至2013年才释出予仓颉输入法爱好者。虽然通称“六代”,但实际使用上,一般都不把它视为仓颉输入法的新版本,相反更像另一款由仓颉派生而来的新输入法。

由“面”、“非”两字即可辨别是第三代、第五代仓颉或者苍颉检字法:

  • 三代:“面”字取码MWYL( );“非”字取码LMYYY(
  • 五代:“面”字取码MWSL( );“非”字取码LMSY( 
  • 苍检:“面”字取码MWS(  );“非”字取码LSY(  

软件支持

仓颉输入法所有字根在电脑键盘上的排列
Microsoft Windows
Windows 95/98/NT/ME/2000/XP操作系统中内建的仓颉输入法是第三代的修改版;Windows Vista/7/8内建的仓颉输入法则兼容第三代和第五代(预设情况下,仅支持第三代;设定使用CNS11643中文标准交换码字根后,可同时支持第三代和第五代)。Windows 10 内建的仓颉输入法则仅支持三代,并不兼容五代。
Macintosh
Mac OS X 10.4内附的为第五代。

取码方法

仓颉键盘

键上同时印有仓颉字母与英文字母的键盘,是台湾香港澳门地区常见的键盘类型

仓颉字母即仓颉输入法的主要字根(主根),分为四大类,共24个,另有2个特殊键。这些键与26个英文字母一一对应(以下括号内的中文字为字母之代表字[2]):

哲理类
  • 日(A)
  • 月(B)
  • 金(C)
  • 木(D)
  • 水(E)
  • 火(F)
  • 土(G)
笔画类
  • 竹(H)
  • 戈(I)
  • 十(J)
  • 大(K)
  • 中(L)
  • 一(M)
  • 弓(N)
人体类
  • 人(O)
  • 心(P)
  • 手(Q)
  • 口(R)
字形类
  • 尸(S)
  • 廿(T)
  • 山(U)
  • 女(V)
  • 田(W)
  • 卜(Y)
特殊键
  • 难(X),用于特殊的“难字”,如:      等。注︰输入    并不会输出“难”字。
  • 重(Z),原本用于重码字,但从第三代开始不再使用。部分系统改用作输入标点符号,如句号 ,或者被一些自制仓颉当作特殊键用,写法不一,有写作“重”、“片”、“符”、“标”等。

例如,“妲”字由仓颉字母“女、日、一”组成,输入时就敲打“女(V)、日(A)、一(M)”三键。

这24个仓颉字母还可再变化、派生出“辅助字形”(辅助字根、辅根),来组合所有的中文字。例如:“水”派生出“氵”(三点水);“手”派生出“扌”(提手旁);“中”派生出“丨”(主干是竖笔);“弓”派生出“亅”(重点为钩形);“田”派生出外围的“”(音ㄨㄟˊ;框内有东西,与‘口’不同)等等。详情可见维基教科书上的说明。

这里举出一个运用辅助字形的例子:“泗”字由辅根“氵、囗、“儿”的变种”组成,由于“氵”隶属“水”,“囗”隶属“田”,““儿”的变种”隶属“金”,输入时就敲打“水(E)、田(W)、金(C)”三键。

实际应用时,仓颉字母和辅助字形通常会混用,比如“烟”字由主根“火”、辅根“囗”(隶属“田”)和主根“大”组成;“桐”字由主根“木”、辅根“冂”(隶属“月”)和主根“一”、“口”组成;“银”字由主根“金”、“日”和辅根““艮”字底”(隶属“女”)组成。

取码概要

仓颉输入法的取码示例

凭视觉(非字义或笔顺)把汉字分割为前缀及字身,前缀为最左、最上、最外部分,剩余部分为字身。若字身可以再分,则分为次前缀和次字身。各部分再分拆为有限个字码(中间部分省略),以不破坏字形特征和视觉容易辨识为准。

前缀最多取二码,字身最多取三码;无法明确分割为前缀、字身者(如“东”),则全取。一个汉字最少用一码输入,最长则为五码。取码以后再按下空白键(组字键),即可输出字符(字形)。

例如:

汉字 分割 码数 取码 键盘上的按键
整体字,无法分割 最多取 4 码 中中 LL
前缀:王 . 字身:里 最多取 2 . 3 码 一土 . 田土 MGWG
前缀:艹 . 次前缀:女 . 次字身:古 最多取 2 . 1 . 2 码 廿 . 女 . 十口 廿 TVJR
前缀:言 . 次前缀:五 . 次字身:口 最多取 2 . 2 . 1 码 卜口 . 一一 . 口 YRMMR

注:以上数字为取码类型。基本上,只要将字形一分为二,最左、最上、最外的前缀部分,取首、尾二码;其余的字身部分,依规则取三码,则可拆解所有汉字。

繁简输出

仓颉输入法是少数能同时输出繁体、简体的输入法,但部分平台(如微软Windows)上的简体仓颉拆字并不标准,部分违反了原本的拆码规则,或者使用了非简体字习惯字形,用户需要稍作适应。一些外挂的仓颉输入法会改用朱邦复工作室的标准仓颉编码,不会出现下述的问题码;或者采取加入容错码,令同一字可能有超过一种拆码方法。

例如:

简体字 字码 注译
金一大 微软依照字的传统写法来拆码,首码为“金”而非“廿”,全码为“金一大”。标准仓颉依简化字习惯写法,取“廿大”。
戈弓 言字旁作前缀时,微软取码为“戈弓”,如“订”的编码是“戈弓一弓”。但标准仓颉取“戈女”,如“订”字取“戈女一弓”。

不过,大部分字如                等,均符合繁体仓颉的取码原则,毋须重新适应。

其他特色

字形输入法的比较
输入法 时间(年) 辅助字根数 大五码常用字重码率
仓颉 1976 140个(含难字根) 三代:
郑码 1980 约170个 不明
五笔 1983 约200个
大易 1988 约250个 三码:
四码:
呒虾米 1989 基本字根约350个
简速字根约150个
行列 1992 超过300个

仓颉和速成也能输入标点符号,方法是输入 ,速成则取头尾码,或选择全角后直接按键盘上相应的半角标点符号。另外同时按下Ctrl+Alt+, 会弹出符号表。

第一个只能为 A、B、C 其中一个,第二个只能为 A 至 Y 其中一个。

比较常用的为 ,以及 

使用状况

  • 台湾:2011年波仕特的调查报告指出,台湾使用仓颉输入法的比例为9.9%。其他则是注音输入法70%、呒虾米输入法10.7%。[3]
  • 港、澳:由于回归前,两地并无全面推行普通话的教育,且普遍市民不懂注音或普通话拼音,而粤语拼音亦不流行,故以字形取码的仓颉输入法最多人使用。香港无全面统计数据。据输入法硏究者李祥于2000年所述,香港用户最多的输入法是仓颉输入法。该年年初,在中文大学举办的研讨会上,现场近三百名教师有90%以上使用仓颉输入法。[4]而2001年“香港中学校际中文输入大赛”中,1288人里,有761人使用仓颉输入法,其次为速成输入法,有317人选用。其他输入法皆不足4%。[5]澳门也普遍使用仓颉输入法,是大多数中小学校的必修课程,公营机构澳门生产力暨科技转移中心下辖的中文输入技能评核中心设有初级中文打字认证,就是以仓颉输入法及速成输入法作为考试的工具。[6]

参考资料

外部链接