Skip to the content.

宇浩繁简通用字形输入法教程

朱宇浩 写于 荷兰鹿特丹 2022年3月15日

1. 初识宇浩

1.1. 汉字输入法

汉字输入法,顾名思义,就是汉字(部首、笔画)录入进电脑中的方法。大多数时候,输入的过程,有两个阶段:

  1. 用户将汉字,用一定规则,编成一串字母、数字、符号的组合,输入电脑中。
  2. 输入法会串字符,根据一定的规则,转化为对应的汉字,显示到屏幕上。

当我们用「输入法」指代第二个阶段时,一般我们指的是软件。「宇浩」可依托 Rime(小狼毫、鼠须管等)、小小输入法、大大输入法等平台实现输入。本教程后附有在各平台(Windows, Macos, 安卓,iOS)上安装并使用RIME·宇浩的方法。

而本教程中的「输入法」,特别指代上文中提到的第一阶段,亦即:用户将汉字,用一定规则,编成一串字母、数字、符号的组合,输入电脑中,并获得想要的汉字。

1.2. 输入法种类

输入法,根据其特点,一般分为三类

音码输入法,最常见的例子就是拼音。我们将汉字对应的拼音,直接输入到软件中,软件会显示对应的汉字供你选择。这其中包括了一个反馈的过程,即:输入字母——获得候选——输入数字——获得汉字。

形码输入法,最常见的例子是五笔字型。我们将汉字拆成若干部件,输入每一个部件对应的代码,软件会显示出汉字。常见的形码,还包括五笔字型,郑码,仓颉等等。这其中有时包括了一个反馈的过程,但因为形码的确定性,大多数时候是不需要确认的,即:输入字母——获得汉字。

判断一个输入法是音码还是形码的最简单的方法,就是:对于任意一个汉字,不用知道它本身的读音便能输入。

「宇浩」繁简通打输入法,便是一种形码输入法。

1.3. 形码和音码的对比

形码输入法和拼音最大的区别,在于拼音输入法,知道读音,便能输入汉字。而形码输入法,知道写法,便能输入汉字。

音码的优点,便是像说话一样去打字。你只要知道标准的发音,便可以打出字来。同时,汉语拼音也是当代人的必修课,不需要特别地学习,因此,它的学习成本近乎为零。

音码的缺点,那便是同音字很多,经常需要选字。虽然当代的不少输入软片在「智能化」上下足了工夫,但在输入一些书面语、古文、或者生僻字词时,还是需要选字。大量翻页会打输入的节奏。笔者正是因为写小说时候被翻页打断思路而使用了形码。

形码的优点,便是像写字一样去打字。你不需要知道每个字的具体读音。同时,因为编码比较离散,你甚至不怎么需要去选字。这在写作时,保证你的思路不被打断。在看打、或者打古文的时候,形码的速度很快。

形码缺点是,如果你一下字忘了这个字的写法,那就会卡住,必须临时改用拼音输入法(反查)。

至于音码和形码哪个更好?这就是仁者见仁、智者见智的问题了。当然,也依赖于你的需求和使用场合。笔者在日常对话时使用全拼,在写作时使用形码,做到扬长避短。

1.4. 宇浩的特点

「宇浩」作为一种形码输入法,除了继承了刚刚所说的形码的全部重点外,还有一些自身的特点。这些特点,自然受到了笔者偏好的影响。这里仅举例一二:

这里对比一下五笔、郑码、宇浩、虎码等笔者比较喜欢的输入法,在不同汉字字符集下的单字全码的重码数量。其中:

形碼方案 GB2312 國字常用 常用繁簡 GBK 簡體選重率 繁體選重率 繁簡選重率
鄭碼 563 311 1784 6590 0.60% 0.63% 2.40%
五筆86 537 357 1718 6582 0.34% 0.79% 2.12%
五筆98 515 329 1656 6368 0.38% 0.78% 2.16%
徐碼23 318 127 480 2902 0.11% 0.22% 0.22%
倉頡五代 422 164 606 2893 0.89% 0.49% 1.06%
虎碼 532 238 2049 7687 0.06% 0.37% 2.84%
宇浩 307 216 610 4966 0.05% 0.17% 0.21%

可见,「宇浩」在任何字集下都有着优秀的表现。尤其在实际使用中,因为低选重率,它十分顺手。

1.5. 学习步骤

学习「宇浩」,一般从了解拆字和熟悉字根开始。

拆字,就是把汉字按照一定的规则,拆成唯一的部件组合。拆分出来的部件,便叫做「字根」。

这里所谓的「部件」,不仅包括你我熟知的「偏旁部首」,也包括了一些基本笔划,甚至是一些汉字。因此,笔画输入法(横竖撇捺折),也是一种特殊的形码。那么我们为什么要创造别的形码呢?因为一个字若用十几个、甚至几十个字母代替,太没有效率。故而,我们会截取一些比较大的部件作为字根。

对于汉语使用者,拆字并不是一件陌生的事情。我们自小就学会将一个字拆成分离的部首,进行检索。大多数时候,这是非常直观的。比如

对于「宇浩」而言,大多数的字,也是这么拆分的。并且大多数的偏旁部首,也都是「字根」。

所以恭喜你,对于大多数的汉字,你已经可以凭借直觉进行拆分了。

本教程推荐的学习步骤如下。

  1. 看字根图,大致了解「宇浩」的字根有哪些,以及它们对应的编码。
  2. 了解「宇浩」拆字的规则,学会如何得到唯一的拆分方法。
  3. 学习编码规则,学会如何将拆好的字根转化成最终的「宇浩」。
  4. 记诵最常用的50个字根的编码(在输入法「新手」模式下,可以基本输入最常用的500个汉字)。
  5. 直接在输入软件中练习前500常用字(覆盖了77%的字频),边练习边记忆字根。
  6. 阅读进阶教程,更加深入地了解一些「宇浩」的特点。

以上内容不论顺序,可以交叉或同步进行。

2. 字根编码

2.5. 常用字根

本章介绍宇浩输入法的字根。介绍之前,先说明一件事。

我注意到,最常用的50个字根,占了60%的使用频率。最常用的100个字根,占了85%的使用频率!这说明,有针对性的记忆字根,使得学习曲线更加平坦,收效更加显著。

按照使用频率降序,前50的常用字根为:

白月丶一了日龰不丿扌戈𠂇尚土人文辶亻也米冖小讠丷口儿上至刂宀尤羊目大门自刀二阝厶子丅凵寸手西女氵殳犬

前51到100的常用字根为:

灬甲力彳丁心斤乚禾又木匕走己之而八生十身𬺰彐夕豕面矢艹王见艮卜夂纟工龶巴止舌已士尸立囗竹夭户戊乙方且

所以,在接下来的学习中,请务必按照上面的次序记忆字根,而不是一股脑地背诵全部。先练熟边际收益高的字根,会显著加快上手打字的进程,增加学习乐趣和成就感。而偏僻的字根,可以等未来慢慢熟悉。

在接下来的学习中,请使用字根练习页面来练习最常用的50个字根。然后可以继续练习最常用的100个字根

2.1. 大码和小码

在「宇浩」中,每一个字根,都对应了两个字母。换句话说,「宇浩」使用的是双编码字根。这一点和郑码相同,和五笔不同。特别的:

字根的大码和小码的分布,并不是随机的,而是有一定的规律。在接下来的教程中会进行介绍。

2.2. 字根图

我们将字根的键位画出来,这便是字根图。每一个键位上的大写字母,就是大码,是一群字根的「家」。而字根右下角的小写字母,则是小码,也就是单个字根的「姓名」。将大码和小码组合起来,就是一个字根的编码了。比如:

字根图是查询字根的重要工具,初学者应当时常将它放在手边,以利用查询。以下为宇浩输入法字根图。

宇浩繁简通用输入法字根图

2.3. 字根大码的规律

字根大码,是按照字根第一笔的笔画来制定的。「宇浩」同五笔一样,字根按照笔画分区。

字根在各个区位较为随机,但还是呈现了以下的规律:

为了方便记忆,我写了一首打油诗(字根口诀):

横:

A 丁丌行右瓦,耳下打七寸。(亍丅扌)
S 草头二犬厂,辰考而有臣。(丂𠂇)
D 古來十石尤其戊,西雨不走歹豕丰, 
F 一木甫三工。  
G 大王革春夫,框面弋酉戈。(匚𡗗)
H 老上青士示兀牙,末世土干未至车。(耂龶)  

竖:

J 早日山曰田,
K 甲申由禺电,下框敲右边,重門兼繁鹵,虫贝水上见。(冂攴)
L 四口非口,(㗊)
M 巾网貝皿且具上,小目立刀卜虎骨。(罒刂)
N 方框二三竖,黑册尚止足。(囗〢〣龰)

撇:

Q 荒下没右鱼儿气,撇川竹矢凡几舟。(殳丿)
W 周圍炙顶皆同月,千鬼上身生牛头,衣下杀上谁侧缶?(⺆勹牜⺧𧘇乂隹)
E 反文人欠斤,白爪壬乌夭。(攵亻)
R 双人饣匕入舌臼,犬向夕禾微金毛。(彳饣犭)
T 八人手长二三撇,金边自用介下卯。(钅彡)
Y 冪头心合豸,阜上食九鸟。(冖𠂤)

捺:

U 兰头将左四点火,赢框广衣言亡羊,(丷丬灬礻)
I 鹿头三点立水上。(氵)
O 辛亥之宝盖,言边户点方。(宀讠丶)
P 高门麻穴文亦米,病头走之衣字旁。(辶衤)

2.4. 字根小码的规律

字根的小码,都是尽量从它汉语拼音包含的字母中随机选取。如果拼音中有ZX,那么可以选K来代替。例如:

有些字根的使用频率极高,我们把它们的小码统一设置为v(原因是拼音不用v字母,所以这个字母比较闲置)。例如:

我在这里使用大写和小写的拉丁字母,是为了区分大码和小码的概念,便于理解学习。在实际打字的过程中,不需要区分大小写。

字根字的输入

字根字有大码和小码,那么想要输入字根该怎么做呢?很简单,就是添上F

比如:

3. 拆字规则

先前说过,拆字,就是把汉字按照一定的规则,拆成唯一的字根组合。

我刚刚用的「部」字为例,说明了拆字的一般形式。这种将字拆成直观的、分离的部件的方法,足以应付大部分汉字的拆分了。但在实际使用中,遇到这个问题:一个独体字,本身不是字根,怎么办?这时候,我们要把它继续拆成更小的字根甚至笔划。比如:

有时候,独体字的拆分不是很直观。比如「再」拆成「王冂」两个字根。遇到此类字时的拆分,往往需要一些经验和练习。所以当你遇到不会拆的字时,应该主动查询它的编码,及时学习。

更麻烦的情况是,一个字好像有几种拆分方法,比如:

这种一字多拆的情况,任何形码中,都是积极避免的。因为一字多拆,会造成极大的不确定性,并造成编码的混乱。

「宇浩」借鉴了徐码的拆字规则,通过一套规则,使每一个汉字,都只有唯一的拆分方案,希望能消除不确定性。当然,汉字不是完全可以量化的,所以有时候比例原则也很重要,同其它的输入法不同的是,「宇浩」不追求完美消灭唯一拆分,尤其在大字集上,这种追求会扭曲汉字直观性,也不能兼顾不同字形。使用者需要大量尝试才能输入,这违背了大字集检字的初衷。因此,对于大字集,我会设置兼容拆分和容错码。

「宇浩」拆字规则的按优先级排序如下:

  1. 字根最少
  2. 符合笔顺
  3. 字根离散
  4. 字根相连
  5. 字根相交
  6. 笔划断开
  7. 拆分美观
  8. 字根取大

可归纳为:少>顺>散>连>交>断>美>大

取根时,如果有多种不同的拆分方式,则按优先级从高到低依次检查以上规则,选取符合条件的,排除不满足的,最终得到唯一的拆分方案。以下为规则详细介绍:

3.1. 字根最少

字根最少,意思是拆分一个字时,应该使得字根的数量最少。比如:

3.2. 符合笔顺

符合笔顺,指的是字根的每一笔,完全符合原汉字的笔顺。比如:

3.3. 字根离散

字根离散,指的是两个字根互相分离。比如:

字根离散的拆分优先于不离散的拆分。

3.4. 字根相连

字根相连,指的是两个字根互相连接。

字根相连的拆分优先于不相连的拆分。

3.5. 字根相交

字根相交,指的是两个字根互相交叉。比如:

字根相交的拆分优先于不相交的拆分。

3.6. 笔划断开

笔划断开,指的是将一个笔划断开。比如:

笔划断开的拆分,往往是为了减少字根而不得已的操作。

3.7. 拆分美观

拆分美观,或者说拆分直观,指的是一个拆分,一个人一看就应该这样拆。

「宇浩」的字根允许一些变化,比如:

我们应当避免这种不直观的拆分。比如:

当然,「直观」是个比较主观的标准,为了避免规则不确定性,它的等级很低,并且还有以下的规则:

3.8. 字根取大

字根取大,指的是按照笔顺拆字时,让靠前的字根的笔划数尽量地多。比如:

「取大原则」,按定义,是一个兜底原则。它保证了最终只有一个候选方案能够胜出。

3.9. 拆字举例

实际拆字时,如果你感觉拆分方法不唯一,那么可以用以下方法找到最优解:

以下通过部分例字来说明拆分规则:

3.9.1. 「重」字

「重」字,候选拆分「丿车一」和「千日二」。

依照「少>顺>散>连>交>断>美>大」的规则比较。

3.9.2. 「朱」字

「朱」字,候选拆分「丿未」和「牛八」。

依照「少>顺>散>连>交>断>美>大」的规则比较。

4. 单字编码规则

学习了「宇浩」的拆字规则后,我们可以将任何一个汉字拆成唯一的字根组合。最后一步,便是把字根转为「宇浩」编码。

单字的编码一般是由4个字母构成,部分情况下是2个或3个字母。

在「宇浩」中,无论一个字能拆成几个字根,我们只关心其中的四个根,分别是:

这同五笔输入法相同,和郑码、徐码不同。

单字编码规则如下:

  1. 依次取一、二、三、末根大码。
  2. 不足四码时,补上末根小码。
  3. 仍然不足四码时,补上首根小码(如果小码是v则不用补)。

最后一条,只有双根字中会出现。第二条,只有三根字中会出现。

举例说明:

末尾添加首根的小码,只是为了补齐四码的作用,只有在双根字中才会出现。它不需要像徐码和郑码一样,不管几码字,都要判断首根的性质以决定取不取倒数第二根。所以思维负担显著降低。这也是我开发宇浩输入法的重要原因。

4.1. 字根字和代表根

字根字,依次取其大小码,再加上f即可出字。比如:

很多的字根因为字形近似,被归为一个字根,由其中一个常用字为统摄,称为「代表根」,其它的字根为「被代表根」。

如果要单独输入「被代表根」,只要在大小码后加ff即可。这类汉字并不多,举例:

4.2. 空格键的使用

在很多输入法软件中,空格键(以下用_表示)用来上屏首选字。

根据以上的学习内容,我们发现:「宇浩」的编码最长不超过4个字母。由于这个特性,我们在输入完编码后,不一定需要按空格键将字打上屏幕。

空格键只在以下情况需要使用:

以下情况,不需要使用空格键:

5. 简码设置

学完了「宇浩」的单字编码,我们发现,「宇浩」的单字码长一般是2到4位之间。不少常用的字,码长是4位,比如字频第一的「的」字,编码为EWOd

一种科学的输入策略,应该使得常用字的码长更低,从而加快输入的速度。试想,如果输入「的」字,每次都要按EWOd四下按键,真是太浪费时间了。

形码对此的优化方式,就是设置简码,也就是给部分汉字设置更短的编码:比如,我们在输入「的」时,只要按上一个字母和空格键,就能实现输入。

在「宇浩」中,简码的设置十分科学,使得每一个字简码和全码的编码规则保持一致。当然,这也和文本环境有关。比如简体和繁体环境下,字频不同,简码也不相同。这里主要介绍的是基于简体现代文字频的简码设置。

5.1. 一级简码字

一级简码字,又称一简字,指的是用一个字母为编码实现输入的汉字。「宇浩」中,有25个高频汉字设置为一简字,只要按下一个字母,加上空格,即可上屏。在我们的日常交流中,一简字大约占据了25%的使用频率。只需要按两个按键,可以有效提升输入速度。

一简字的编码,就是该字全码的第一个字母。比如:

从A到Y排列,一级简码字分别是过那也不的一大地没是上中小回就这我得在个着了然出。在字根图中,一简字就是每个字母方框的左上角的汉字。

宇浩的字根设计,使得最高频的汉字分布在最容易按的键上,比如:「的」在E上,「一」在F上,「了」在V上,「没」在I上,「不」在D上,「上」在K上。

5.2. 二级简码字

二级简码字,又称二简字,指的是用两个字母为编码实现输入的汉字。「宇浩」中,有676个高频汉字设置为二简字,只要按下两个字母,加上空格,即可上屏。

一简字的编码,就是该字全码的前两个字母。比如:

5.3. 三级简码字

三级简码字,又称三简字,指的是用三个字母为编码实现输入的汉字,只要按下三个字母,加上空格,即可上屏。

三简字的编码,就是该字全码的前三个字母。这里不再举例。

注意到,三简字需要按四个按键才能上屏,同输入单字全码按键数一样,因此,三简字的设置主要为了腾出四码码位,实现避重。

三级简码字,可在打字时进行熟悉,不需要特别去记忆。

6. 词语编码规则

除了设置简码,「宇浩」还将常用的词语,也编成4个字母的编码。这样可以降低每一个字的平均码长,提高打字速度。

「宇浩」的词语编码规则,分为三种情况。

6.1. 两字词

两字词,取每个字全码的前两码即可。比如:

6.2. 三字词

三字词,取前两字的第一码,和第三个字的前两码即可。比如:

6.3. 四字词及以上

四字词及以上,取前三字的第一码,和最后一个字的第一码即可。比如:

6.4. 词语输入的优缺点

用词语的方式进行输入,优点在于降低了每个字的平均码长。试想「我们今天一起吃饭」这个句子。

可以看到,词语全码有效降低了按键的次数。

但是,词语输入也有其缺点,最主要的缺点包括:

因此,精简词库,熟悉词库,打单字和打词语相结合,是形码高手们的修炼之路。

7. 进阶教程

7.1. 字根排序规则

将汉字拆分后,我们需要将它们进行排序。大多数时候,因为「符合笔顺」这条规则的存在,排序是非常直观的。但有时并非如此,我在此进行定义。

「宇浩」字根排序规则,是字根首笔符合笔顺,意思是拆分一个汉字时,所有字根的首个笔划,符合这个汉字的笔顺。比如:

请注意,「宇浩」最终的字根排序,只要求字根的首笔符合笔顺,而不是要求字根每一笔都符合笔顺,比如:

7.2. 口囗之辨

口(音kǒu),编码为Lv,是个主根。囗(音wéi),编码为Nw,是个副根。这两个根如何区分?

答案是,如果方框里有完整的笔画,用「囗」Nw。否则一律用「口」Lv。例如:

7.3. 「日」「曰」字根的选取原则

不少输入法对与「日」「曰」两字的区分,比较复杂。大概有两种情况:

我们必须注意到,在汉字中,存在「日曰」对立的字形,只有三组,分别为:「日曰」、「汨汩」、「曶㫚」。在其他的情况下,不存在对立,也就不存在混淆问题。

因此,我基于实用主义原则,对这两个字根不多加以区分,而采取更简单的方法。即:除了上述三组对立情况外,全部取「日」根。换句话说,「曰」根只需要在对立情况下才会使用,包括:「曰」「汩」「㫚」「旮」「旯」

这样一来,可以显著降低使用者的记忆和学习负担。

7.4. 勹𠂊之辨

「旬」的外框「勹」,同「敖」左下的「𠂊」都是撇加横折钩,宇浩不做区分。

8. 适合才是最好的

引言中,我介绍了输入法的确定性(重码率),但这不是唯一的评价标准。输入法好不好,还取决于其他的维度。这就是为什么拼音重码高,但大多数人还是会使用拼音,因为它的学习成本基本为零。你选择学习输入法,一定要符合自己的需求,要综合考虑多方面因素,例如:

特别的,「低重码」、「规则简易」、「字根分布有规律」,是个不可能三角,一个输入法只能在一者做到突出,或者两者都不错,但不可能三者都达到很好。这里,说一下几个笔者喜欢的输入法的优缺点,希望能帮你选择。