仓颉输入法/取码原则
基本取码 | ◄ | 仓颉输入法 取码原则 |
► | 例外字 |
汉字有时会有两种或以上取码方式,因此仓颉输入法制订了一些取码原则,以决定“正确且唯一”的编码,如下:
- 完整原则:取码应反映字形特征且尽量精简。[1]
- 精简原则:选择码数最少的取码方式。
- 先繁后简原则:码数已最少时,先取大字根,后取小字根。
- 字形特征原则:取码时必须尽量保留字形特征,包括——[2]
- 区块分则:取码时优先以“区块”方式,在字根相接处分割。
- 转角分则:码数已最少时,优先选择能保留笔画转角的字根。
- 跨越分则:为减少码数及反映字形特征,字根在某些情况可相互跨越。
- 省略原则:汉字分割后,各部分取码时皆不得超出应取码数的限制。
- 局部省略:先假定全取,再略去超出限定码数的字码。
- 包含省略:取字首、字身、次字首、次字身最后一码时,省略包含在内的部分。
完整原则
编辑完整原则要求:取码应尽可能涵盖完整字形、保留字形特征、且避免增加码数。
此原则较抽象,可分为以下细则:
精简原则
编辑精简原则是指,当一个字有多种取码方式时,选择码数最少的取法。此原则之用意在于,有覆盖面较大的字根,避免细分成更小字根,以提高打字效率,及避免把字形分解得太零碎。[3]
例如“丰”字,取码“十十十”()不如“手十”()精简,故应取后者。
又如“衣”字,取码“卜竹女人”()不如“卜竹女”(),故应取后者。
以下为更多例字:
例字 | 图解 | 正确取码 | 错误取码 |
---|---|---|---|
王 | 一土() | 一十一() | |
百 | 一日() | 一竹日() | |
光 | 火一山() | 火一竹山() | |
五 | 一木一() | 一十弓一() | |
幸 | 土廿十() | 土金一十() | |
句 | 心口() | 竹尸口() | |
宜 | 十月一() | 戈月月一() | |
主 | 卜土() | 戈一土() | |
共 | 廿金() | 廿一金() | |
走 | 土卜人() | 十一卜人() |
注意:套用精简原则时,不可跨越字首与字身或次字首与次字身的分界。例如“華”字,“”是字首,“”是字身,取码“廿・一廿十”(・)。若把字首连同字身的第一笔一起取“”而作“廿廿十”(),就不正确。
先繁后简原则
编辑先繁后简原则是指,当一个字有多种取码方式码数相等时,先取较繁复、涵盖面较大的字根,再取较简单、涵盖面较小的字根。[4]
例如“丰”字,取“十手”()或取“手十”()都符合精简原则,但根据本原则,应先取涵盖面大的“”,故应取后者。
又如“衣”字,取“戈一女”()或取“卜竹女”()都符合精简原则,但根据本原则,应先取涵盖面大的“”,故应取后者。
以下为更多例字:
例字 | 图解 | 正确取码 | 错误取码 |
---|---|---|---|
青 | 手一月() | 十土月() | |
堇 | 廿中手一() | 廿中十土() | |
亡 | 卜女() | 戈尸() | |
毛 | 竹手山() | 竹十心() | |
豕 | 一尸竹人() | 一心竹人() | |
先 | 竹土竹山() | 竹十一山() | |
方 | 卜竹尸() | 戈一尸() | |
畢 | 田廿十() | 田廿手() | |
垂 | 竹十廿一() | 竹十廿土() | |
廿中手人() | 廿中十大() |
字形特征原则
编辑字形特征原则是指,取码时必须尽量保留字形特征。因为保留字形特征较符合视觉辨识的原理,且更能区别形似汉字。[5]
此原则的具体细节大致可归纳为以下几项:[2]
区块分则
编辑一、取码时,优先以“区块”的方式,在字根的相接处分割,避免字根互相跨越。[6]
例如“失”字应在相接处分割作“竹手人”(),而非依笔顺取“人大”(),否则会导致“人”()和“大”()互相跨越。
此分则优先权极高,先于前述之精简原则及先繁后简原则。例如“失”取码“人大”比取码“竹手人”更符合精简原则,但由于前者不符合此分则的要求,因而取后者。
以下是更多例子:
例字 | |||||
---|---|---|---|---|---|
正确取码 | 火木() | 火手() | 一火十() | 竹火木() | 人十山() |
错误取码 | 木金() | 手金() | 一十金() | 竹木金() | 人山一() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 心木() | 心廿() | 十山() | 木大() | 中月大() |
错误取码 | 木山() | 心山() | 山一() | 大弓() | 大月() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 十大日() | 十大() | 卜人弓大() | 心大大() | 竹田大大() |
错误取码 | 土竹日() | 大人() | 卜人弓人() | 心竹竹戈() | 竹田大竹() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 中田() | 田中() | 中田中() | 十田十() | 中田心() |
错误取码 | 十田() | 日中() | 中一() | 手日() | 心日() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 一中田大() | 大中田山() | 十中大() | 十中中弓() | 中田中女()[7] |
错误取码 | 一大日() | 大山日() | 大口人() | 木口尸一() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 竹水() | 竹尸() | 竹月口() | 竹手() | 竹手一() |
错误取码 | 弓人() | 竹尸()[8] | 人尸口() | 人十() | 人土() |
有些字根会埋在其他字根的凹陷位置,如“喪”字在“土”的凹陷处有“口”;“巫”字在“工”的凹陷处有“人”;“业”字在“”的凹陷处有“”字根;甚至像“匚”、“冂”、“凵”这类外框更专门在内部收藏其他字根。由于“土”、“工”、“”等形状并未与其他字根互相跨越,因而也都符合区块分则。
转角分则
编辑二、当一个字有多种取码方式码数相等时,优先选择能保留笔画转角的字根。[9]
例如“九”字,可以取码“大山”()或“大弓”(),由于后者保留了笔画转角,故应取后者。
以下为更多例字:
例字 | ||||
---|---|---|---|---|
正确取码 | 戈弓水() | 戈弓人() | 戈弓火() | 弓大() |
错误取码 | 戈一水() | 卜竹人()[10] | 卜竹火()[11] | 一大() |
例字 | ||||
---|---|---|---|---|
正确取码 | 大尸() | 大弓() | 戈大弓火() | 竹弓() |
错误取码 | 大弓() | 大山() | 戈大竹火() | 竹一山() |
例字 | ||||
---|---|---|---|---|
正确取码 | 口女弓大() | 一女大山() | 一女木竹() | 一一女尸() |
错误取码 | 口中弓大() 口女中大() |
一中大山() | 一中木竹() | 一一中尸() |
转角分则是优先权较低的原则。以上各例在套用转角分则时并未造成取码数增加;而如果保留笔画转角势必增加取码数,则应以精简码数优先。如以下各字:
例字 | ||||
---|---|---|---|---|
正确取码 | 卜尸火() | 卜尸一() | 手弓戈() | 大木() |
错误取码 | 卜女尸火() | 卜女尸一() | 手女弓戈() | 大女木() |
跨越分则
编辑三、为减少码数及反映字形特征,在某些情况下,可允许字根相互跨越。[12]
如前“区块分则”所述,取码时原则上应避免让字根互相重叠。然而对于一些封闭类字形,如、、、、、、、、、……等,书写时常会有笔画穿过,若要求其他字根不得跨越这些字形,只能切出大量琐碎且无法反映字形特征的笔画,如此便违反了“完整原则”的本意。故此时允许其他字根跨越这些字形。如以下例字:
例字 | |||||
---|---|---|---|---|---|
正确取码 | 十月() | 月十月() | 戈十月() | 十戈月戈() | 戈中月() |
错误取码 | 十月中() | 月十月中() | 戈十月手() | 戈中月手() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 中月() | 中月山() | 人月土() | 中中弓() | 金弓中竹() |
错误取码 | 中月中 |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 人月() | 人月人() | 一人月() | 土月() | 一土月() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 一中月人() | 一中月卜() | 一金田() | 一人人月() | 一山月() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 月尸木() | 尸大口() | 月卜() | 竹月卜戈() | 田卜戈() |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 廿田() | 廿月金() | 田廿十() | 卜戈廿木() | 廿一廿十() |
※“”、“”、“”、“”、“”、“”、“”、“”几个字形依其定义禁止其它字根跨越其封闭区域,只能按区块分则于周边切断(或改取其他合适字根)。[13]详见〈辅助字形〉一节及区块分则中“由、甲、申、車、曳、更、奄、吏、事”等字例。
请记得完整原则的本意是兼顾字形特征及取码精简,若无法达到这些效果,便不应套用此分则。
各细则的优先权
编辑由于有些细则需要其他细则的观念,以上介绍安排了一定顺序,但统整而言,若细则彼此冲突,其优先级是:跨越分则 > 区块分则 > 精简原则 > 转角分则 > 先繁后简原则。
省略原则
编辑如〈基本取码〉一章所述,汉字分割后各部分皆规范了应取码数,当码数超出限制,就要根据此原则省略其中几码。
部分省略
编辑若汉字的某部分码数过多超出取码限制,应按原则省略其中几码,这就是“部分省略”(或称“局部省略”)。
例如鰉→魚・白・王→弓田火・竹日・一土→限取二・二・一码→弓火・竹日・土
“鰉”字的“魚”是字首,“皇”是字身,字身还可再分成次字首“白”和次字身“王”。字首“魚”全码为“弓田火”,但字首限取2码,故只取首码“弓”及尾码“火”。次字首“白”全码为“竹日”,次字身“王”全码为“一土”。因次字首为2码以上,按规则次字首取第一码“竹”及尾码“日”,次字身取尾码“土”。总此“鰉”最终取码为“弓火・竹日・土”。
部分省略尚有一关键在于:先假定完整取码,而后按规则省去中间的编码;而非直接跳到字形的尾部取码。因此根据“先繁后简原则”,前面应取涵盖较广的字根,而尾码应取涵盖较少的字根(可用“后简原则”的方式记忆)。
如以下诸例。取码中的红字,是初学者容易忘记“后简”原则而取错的码:
包含省略
编辑、、、、、、、[14]、、、、、、、、、、、、、、、、、、、、、等三面或四面的“外框”内常包含琐碎的笔画,为求易于辨识,特规定取整体字、字首、字身、次字首、次字身最后一码时,省略在“外框”内的部分。这就是“包含省略”原则。[15]
以下是几个与包含省略有关的例子:
注意:包含省略不要求外框与内部字形相互分离。只要外框符合,整体字也可以适用包含省略。例如前面的“酉”、“母”都是整体字,而非“字首‘’字身‘一’”、“字首‘’字身‘丶’”的组合字;其他如“啇”、“禺”等字形亦然。
以下为更多例子:
例字 | |||||
---|---|---|---|---|---|
正确取码 | 手・卜金月(・) | 月・女女・田(・・) | 竹田・一女尸(・) | 廿・日弓・田(・・) | 尸田・月山山(・) |
错误取码 | 手・卜金口(・) | 月・女女・大(・・) | 竹木・一女尸(・) | 廿・日弓・火(・・) | 尸中・月山山(・) |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 竹月・尸一・一(・・) | 手・山・人月(・・) | 弓中・一・口月(・・) | 手・弓月・大(・・) | 月月・山(・) |
错误取码 | 竹廿・尸一・一(・・) | 手・山・人口(・・) | 弓中・一・口中(・・) | 手・弓金・大(・・) | 月水・山(・) |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 水・廿中月(・) | 一一・月月・心(・・) | 弓月・尸竹・手(・・) | 弓弓・心口(・) | 一弓・心日(・) |
错误取码 | 水・廿中人(・) | 一一・月戈・心(・・) | 弓土・尸竹・手(・・) | 弓戈・心口(・) | 一戈・心日(・) |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 一月・一・一戈(・・) | 廿・田中月(・) | 卜山・日女(・) | 廿・戈一・尸(・・) | 月金・戈一・尸(・・) |
错误取码 | 一卜・一・一戈(・・) | 廿・田中戈(・) | 卜人・日女(・) | 廿・戈一・中(・・) | 月金・戈一・中(・・) |
复杂的外框例字
编辑例字 | |||||
---|---|---|---|---|---|
正确取码 | 竹弓・戈口(・) | 廿廿・一女弓(・) | 水・日・心女(・・) | 弓尸・月廿(・) | 廿田・日(・) |
错误取码 | 竹戈・戈口(・) | 廿廿・一女戈(・) | 水・日・心人(・・) | 弓水・月廿(・) | 廿廿・日(・) |
例字 | |||||
---|---|---|---|---|---|
正确取码 | 一田・人・田卜(・・) | 廿・人・田卜(・・) | 一月・人・田卜(・・) | 竹卜・金口(・) | 水・竹月卜(・) |
错误取码 | 一田・人・田戈(・・) | 廿・人・田戈(・・) | 一月・人・田戈(・・) | 竹戈・金口(・) 或 竹月・金口(・) | 水・竹月戈(・) |
“工、土、王”等镶嵌形空框例字
编辑三代仓颉把镶嵌在“、、、”等形块左右两边空框上的部件视为被包含;五代仓颉则取消了本规则。
例字 (三代) |
|||||
---|---|---|---|---|---|
三代取码 | 一月・口口・一(・・) | 火・一月・一(・・) | 火火・月・一土(・・) | 水・火火・土(・・) | 水・金大土(・・) |
例字 (五代) |
|||||
五代取码 | 一月・口口・人(・・) | 火・一月・人(・・) | 火火・月・一戈(・・) | 水・火火・戈(・・) | 水・金大金(・・) |
不适用包含省略的字形
编辑例字 | 正确取码 | 错误取码 | 说明 |
---|---|---|---|
翻 | 竹田・尸一・一(・・) | 竹田・尸一・尸(・・) | “羽”部件的“”不视作三面包围着的“外框”。应该是两面包围着的“外框”。 |
駐 | 尸火・卜土(・) | 尸尸・卜土(・) | “馬”部件的“”不视作三面包围着的“外框”。 |
鳧 | 竹火・竹弓(・) | 竹尸・竹弓(・) | “鳥”部件的“”不视作三面包围着的“外框”。 |
鳥 | 竹日卜火() | 竹日卜尸() | “鳥”部件的“”不视作三面包围着的“外框”。 |
燭 | 火・田中・戈(・・) | 火・田中・心(・・) | “蜀”部件的“”不视作三面包围着的“外框”。 |
敬 | 廿口・人大(・) | 廿心・人大(・) | “茍”部件的“”不视作三面包围着的“外框”。 |
盛 | 戈尸・月廿(・) | 戈竹・月廿(・) | 字首“成”部件的“戊”不视作三面包含的“外框”,其字形视作从“戈”、从部首以外的笔画。 |
感 | 戈口・心(・) | 戈竹・心(・) | 字首“咸”部件的“戊”不视作三面包含的“外框”,其字形视作从“戈”、从部首以外的笔画。 |
慼 | 戈火・心(・) | 戈竹・心(・) | 字首“戚”部件的“戊”不视作三面包含的“外框”,其字形视作从“戈”、从部首以外的笔画。 |
熱 | 土戈・火(・) | 土弓・火(・) | “丸”部件拆码“大弓戈”,其“”视作在撇笔的左边,故不算包含。 |
斆 | 竹木・人大(・) | 竹月・人大(・) | “”底部的“”不视作三面包围“外框”,与“”不同。[16] |
附注
编辑- ↑ 发明人朱邦复在《第五代仓颉输入法手册》对“完整原则”的说法是“若有两个或两个以上的符号都合于所需形状时,应该取形状较完整,能保留字形特征的一个”。《标准仓颉第二代中文输入法》及《仓颉第三代中文字母输入法》将“取码方法”分为“精简原则”、“完整原则”(“若一个字有多种取法,而码数又相等时,选择取码较完整的取法,也就是先取字形较繁复的码,再取余码。”)、“字形特征原则”。《仓颉第四代输入法手册》将“取码方法”分为“取码精简”、“取码完整”(“a・经过取码精简后,仍有超过一种取码方法时,以字形不重叠为正确。b・避免在一笔过的转角位置将字形分割开。”)、“先繁后简”。本教科书“完整原则”按五代说法视为大原则,其下细节按三代手册分类,其中的“完整原则”依其实际内涵比照四代手册更名为“先繁后简原则”。
- ↑ 2.0 2.1 字形特征原则主要按1994年《(增订版)仓颉第三代中文字母输入法》第三章第三节〈字形特征原则〉之叙述整理,各分则之名称是为方便掌握而按其精神命名。详见各部分之附注。
- ↑ 《仓颉第三代中文字母输入法》〈第二节、取码原则〉〈一、精简原则〉:“当一个字有多种解码可能时,以取码数最少者为正确”
- ↑ 《仓颉第三代中文字母输入法》〈第二节、取码原则〉〈二、完整原则〉:“若一个字有多种取法,而码数又相等时,选择取码较完整的取法,也就是先取字形较繁复的码,再取余码。”
- ↑ 1984年《仓颉第三代中文字母输入法》第二章第二节〈字形特征原则〉:“除前述两个原则外,还须注意是否最贴切地表示了该字母或辅助字形特征及完整性。亦即取码时,不能任意切割,而须保留字形的特征。”
- ↑ 1994年《(增订版)仓颉第三代中文字母输入法》第三章第三节〈字形特征原则〉:“所谓保持字形的特征就是指取码时尽量不取重叠之字形,适当的地方(即符合取形原则)就分割。”二代、五代手册亦皆有提及“者”作为保留字形特征之字例。
- ↑ 此为三代仓颉取码,五代改为据分体字的字形,取“中中・女”,详见三代与五代编码差异的说明。
- ↑ 虽然所取的码与正确取码恰巧一样,但这取码方式仍是错误的。
- ↑ 1994年《(增订版)仓颉第三代中文字母输入法》第三章第三节〈字形特征原则〉:“分割字形时,不在转角处分割;而是取两相邻字形接连处,在同一直线上之形。……因为在转角处分割不合书写常理。”五代手册亦提及“永”、“之”、“力”、“九”、“牙”等字作为保留字形特征之字例。
- ↑ “之”亦不可取码作“卜人”(),因“人”的辅助字形“”是用在如“豕”的末二笔,不适用于“之去亠”。
- ↑ “⺭”亦不可取码作“卜火”(),因“”的撇与竖起笔在同一位置,但“⺭”的撇长超过竖。
- ↑ 1994年《(增订版)仓颉第三代中文字母输入法》第三章第三节〈字形特征原则〉注二提及:“虽然我们言明尽量不取重叠字形,但为了方便,也为了简化取码数,并不禁止纵向笔划及横向笔划贯穿其他字形……”,并有“丑”、“內”、“巿”等例字。五代手册亦提及“甫”、“弗”、“弟”、“冉”、“曲”、“庸”等字作为保留字形特征之字例。
- ↑ 1994年《(增订版)仓颉第三代中文字母输入法》第三章第三节〈字形特征原则〉注一提及:“遇到曰、田等完全封闭之字形,若有其他笔划要贯穿其间时,必须分割,以保持字形的特征及完整性。”
- ↑ “⻗”的“”能视作包含外框,因为它不单以“”形作底部,其中竖与“”形相交的地方,刚好完整包含左、右的两点。但如“冥”、“旁”、“安”等字,“”形明显无法包含下方部件,故不适用包含省略原则。
- ↑ 《仓颉第四代输入法手册》:“整体字或组合字的字首、字身、次字首、次字身,若中间曾省略取码,当取至最后一码时,那字形被下列字形(……)所包围的话,则不取那字形,取其前一码,直至不被完全包围为止。”《第五代仓颉输入法手册》:“选取最后一码(‘最后一码’包括字首、次字首或字身的最后一码)时,若遇到……字形,则省略包含在内的笔画”。1994年版《仓颉第三代中文字母输入法》:“由外而内选码时,若码数不足,则优先省略包含省略内在之码。”各代对“外框”字形之定义稍有不一,此据各代手册实际编码字例补充。整体字仅“髙”一字,三代取“戈尸中月”,五代取“卜尸中月”。
- ↑ “⻗”的“”能视作包含外框,因为它不单以“”形作底部,其中竖与“”形相交的地方,刚好完整包含左、右的两点。但如“冥”、“旁”、“安”等字,“”形明显无法包含下方部件,故不适用包含省略原则。
基本取码 | ◄ | 仓颉输入法 取码原则 |
► | 例外字 |