From 24e69bcfeffe011a553c8b4dedc2d4dfec827460 Mon Sep 17 00:00:00 2001 From: "Yuhao Zhu, PhD, FRM" Date: Fri, 17 Nov 2023 00:25:27 +0100 Subject: [PATCH] Update tutorial --- docs/learn.md | 72 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 47 insertions(+), 25 deletions(-) diff --git a/docs/learn.md b/docs/learn.md index 394e872..7a6f4b9 100644 --- a/docs/learn.md +++ b/docs/learn.md @@ -334,6 +334,9 @@ nav_order: 12 取根时,如果有多种不同的拆分方式,则按**优先级从高到低**依次检查以上规则,选取符合条件的,排除不满足的,最终得到唯一的拆分方案。以下为规则详细介绍: +{: .note} +在进行拆分前,首先需要「确认」某个字根到底存不存在,是否合规,也就是检查字根的「内在属性」。比如「土」「士」,两横的长度直接决定了字根的异同,再比如「王」中间如果被笔画「穿心」,则不再是「王」。核心规则有三条:散件不分割、竖向不包夹、横间不穿心。这部分的讨论作为进阶内容,故而于此处跳过。若有兴趣,可以在后续章节阅读。 + ### 字根最少 @@ -690,7 +693,7 @@ nav_order: 12 上面我们提到了宇浩输入法拆字规则的优先级。其实,在「字根最少」之上,还有一个隐藏的原则,也就是:**字根的内在属性**。 -何为字根的内置属性?其实就是指某一个字根区别于另一个字根的内在特点。 +何为字根的内在属性?其实就是指某一个字根区别于另一个字根的内在特点。 {: .example } 用例子说明:「吉」拆成「士口」而不是「土口」,这是因为「土」的下面一笔更长,而「士」的下面一笔更短。这是区别两个字根的本质原因和内在属性。 @@ -703,7 +706,7 @@ nav_order: 12 在这个章节,我们就详细讨论字根的内在属性,从而让某些字的拆分原因更加明确。 -#### 字根的连续性 +#### 散件不分割 {: .no_toc } 有一部分字根,本身存在离散的部件,比如「戈」字右上的点、「犬」字的右上的点、「三」字的三个横等等。为了保证拆字的直观,保证检字(尤其是大字集下)的便捷性,我们需要对字根的连续性做出要求,并将它认定为字根的内在属性。 @@ -719,7 +722,43 @@ nav_order: 12 >- 「曵」字不拆「囗戈」而拆成「电丿丶」,因为「戈」字右上方的点被全包围结构分割。 -#### 口囗之辨 +#### 竖向不包夹 +{: .no_toc } + +不少字根中存在若干分散的部件,比如: + +- 「二」和「三」中的横画是分离的。 +- 「合」分为了「一」「一」「口」三个部分。 +- 「儿」分为了「丿」「乚」两个部分。 + +这给了它们包夹其他字根的可能。如「亘」可看成「二」包夹「日」。 + +为了防止拆分不直观,我们做出规定,一个字根**可以横向包夹,但不能纵向包夹**,例如: + +- 卿 = 卯彐厶 +- 胤 = 儿幺月 +- 亘 = 一日一 +- 僵 = 亻一田一田一 + +这是因为,汉字的左右对称多于上下对称。左右包夹是可预测的,但上下包夹往往不可预测,必须要观察到最下方。比如,某些输入法设置了「衣」字根,但「亠」和「𧘇」的出现并不总是成对的,必须看到最下方才能正确判断。 + + +#### 横间不穿心 + +为了使拆分更加直观,符合笔顺,防止字根交叉粘连,我们规定: + +「工土士干千禾キ王壬龶丰末未生古矢缶早羊虫」等字根不允许在「一一」间穿插(交)其他字根。 + +这个规定在常用字中比较少用。列举如下: + +- 「再」不拆「王冂」,而拆「一冂土」 +- 「垂」不拆「壬龷」,而拆「丿𠀎丄」 +- 「華」不拆「艹干龷」,而拆「艹𠀎十」 +- 「夀」不拆「龶乛口口寸」,而拆「二乛口丄口寸」 +- 「禹」不拆「丿虫冂」,而拆「丿口冂<丄丶>」 + + +#### 口中无整画 {: .no_toc } 口(音`kǒu`),囗(音`wéi`)。这两个根如何区分? @@ -738,6 +777,10 @@ nav_order: 12 - 「合」下的「口」中如果包含完整的笔画,应该拆如「人一囗」。例如:「會」中間的「口」中有「小」,故而应该拆成「人一𫩏丷日」。 + + #### 日曰之辨 {: .no_toc } @@ -757,7 +800,7 @@ nav_order: 12 #### 勹𠂊之辨 {: .no_toc } -「旬」的外框「勹」,同「敖」左下的「𠂊」都是撇加横折钩。宇浩输入法不做区分,都视为「月」的附属根`Wy`。 +「旬」的外框「勹」,同「敖」左下的「𠂊」都是撇加横折钩。宇浩输入法不做区分。 #### 点 @@ -785,27 +828,6 @@ nav_order: 12 - 凡左撇低于右捺,作「入」。 - 凡左撇右捺分离,或者中间被其他笔画隔开,作「八」。 - -#### 字根包夹 -{: .no_toc } - -不少字根中存在若干分散的部件,比如: - -- 「二」和「三」中的横画是分离的。 -- 「合」分为了「一」「一」「口」三个部分。 -- 「儿」分为了「丿」「乚」两个部分。 - -这给了它们包夹其他字根的可能。如「亘」可看成「二」包夹「日」。 - -为了防止拆分不直观,我们做出规定,一个字根**可以横向包夹,但不能纵向包夹**,例如: - -- 卿 = 卯彐厶 -- 胤 = 儿幺月 -- 亘 = 一日一 -- 僵 = 亻一田一田一 - -这是因为,汉字的左右对称多于上下对称。左右包夹是可预测的,但上下包夹往往不可预测,必须要观察到最下方。比如,某些输入法设置了「衣」字根,但「亠」和「𧘇」的出现并不总是成对的,必须看到最下方才能正确判断。 - ## 脚注 [^one_division]: 当然,汉字不是完全可以量化的,不同字形下,也会出现不同的拆分可能。除了良好的定义外,有时候比例原则也很重要。尤其在大字集上,追求单一拆分方法会扭曲汉字直观性,不能兼顾不同字形,让使用者需要大量尝试才能找到想要的字,这违背了大字集检字的初衷。因此,对于大字集,我也会设置兼容拆分和容错码。