马黑黑 发表于 2026-1-9 13:11

小议字海两分输入法对捺笔画的处理机制

<style>
        .artBox { font-size: 20px; margin: 30px auto; max-width: 1200px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: #333; }
        .artBox h2 { color: #1a73e8; border-bottom: 2px solid #eee; padding-bottom: 8px; margin-bottom: 20px; }
        .artBox > p { margin: 15px 0; line-height: 1.8; text-align: justify; }
        .artBox blockquote { background: #f9f9f9; border-left: 4px solid #1a73e8; padding: 15px 20px; margin: 20px 0; color: #555; }
        .artBox code { background: #eee; padding: 2px 6px; border-radius: 3px; font-family: 'Consolas', 'Monaco', monospace; font-size: 0.95em; }
        .datatab { margin: auto; width: 60%; border-collapse: collapse; font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;white-space: pre-wrap; tab-size: 4; box-sizing: border-box; background: #eee; position: relative; }
        .datatab tr:first-child { position: sticky; top: 0; }
        .datatab th, .datatab td { padding: 8px 10px; border: 1px solid #999; }
        .datatab th { padding: 16px 10px; background: rgba(173,216,230); font-weight: bold; font-size: 1.2em; text-align: center; }
        .datatab td { font-size: 1em; }
        .datatab td:first-child { text-align: center; }
        .datatab tr { background: rgba(173,216,230,.05); }
        .datatab tr:hover { background: rgba(173,216,230, .35); }
</style>

<div class="artBox">
        <p>汉字输入法世界里有一个笔画输入法,因为速度问题没有流行开来,但它将汉字近40个笔画简化为“横竖折撇点”的方案被主流输入法广泛接受,形码、音码、形音码、音形码编码或辅助编码依据大多离不开此方案或深受其启发。字海两分输入法可以列入形音编码:“形”为视每一个汉字由两个字元组成,“音”乃编码取拆分出来的两个字元的拼音。两分输入法对“形”的处理自然绕不开笔画作为字元的情形,由此,也得面对点和捺这两个笔画以形成编码机制。</p>
        <p>前面提到的笔画输入法,将点和捺归类为点,即<code>丶=㇏</code>,无疑极大降低了编码难度。两分输入法对捺笔画的处理则颇有讲究:</p>
        <blockquote>
                <strong>&#128210;字海两分输入法对捺笔画的三种处理方式:</strong><br><br>
                ⚀ <strong>视为点</strong>        (丶)<code>【例】八 字元『丿丶』,编码『piedian』</code><br>
                ⚁ <strong>视为水</strong>         (水)<code>【例】人 字元『丿水』,编码『pieshui』</code><br>
                ⚂ <strong>视为捺</strong>         (㇏)<code>【例】&#148720; 字元『厂㇏』,编码『changna』</code><br>
        </blockquote>
        <p>捺视为点是遵循了笔画输入法的编码规范,视为“水”则应该是“看形”而取捺笔的流水貌,视为捺则是归于捺的原本。或许字海两分输入法制定捺笔画视作点、水、捺存在内部的优化诉求,但其文档并没有此类描述,使用者只能全凭猜测去理解捺笔何时为点、为水、为捺,输入过程中碰上捺笔时经常需要回退重来。</p>
        <p>个人认为两分输入法复杂化处理捺笔画的机制并不合理。</p>
        <p>首先,这容易造成输入混乱、增加使用者拆字负担。以上面三种处理捺笔画机制的字例为例,即 “八”、“人”、“&#148720;” 这三个字,它们的第二个字元都是捺,形似程度极高,但以现有处理捺笔的机制会令使用者无从精准判断字的第二个字元到底是什么,给输入带来极大的困惑。以捺笔画作为第二字元的字不论多寡都不必细分为点水捺,统一编码为点(dian)即可——两分输入法开发定位当是冲着无字不能输入的问题,重码不是重点考虑的编码逻辑。</p>
        <p>输入法是输入工具,应在处理相同、相似字元方面尽可能遵循归一化规则,简化编码制定依据,没有必要纠结字源上这个字元当时是怎么书写的——毕竟现在上屏的字已经定型、输入法使用者也没必要去追溯这一捺的历史写法、更没必要掌握字元的具体变迁。尊重当下字的统一形态进而依此统一编码更符合输入法的使用需求,字源探究和输入法编码规则不应存在过于紧密的联系。当然,字海两分输入法受众预期定位也许都是对字源有深厚功底的专家学者,即便如此,我个人仍然坚信,输入是针对当下的字而非字的书写渊源,输入时直观判断字的样貌先于对字源知识体系的认知驱动,所以考究编码的依据仍然还是以现时的字样为主而非其过去的历史概貌。</p>
        <p>其次,细分捺笔为点水捺也给编码增加麻烦。编码者当然是对字源研究深透的专家学者,对字源了如指掌,可是试想一下:归一化现时形态相同或极度相似的字元为统一的编码是不是比细分为三种类型的编码更省事?输入法使用者也从中受益,皆大欢喜。</p>
        <p>或许,编码者出于内部优化做出了很多考量才如此决定细分捺笔画字元(以及其他存在类似情形的字元编码处理),例如避免过多的重码存在于某些特定编码中。若是如此,也属顾此失彼的做法。以增加输入难度换取某个层面的优化总体来说并不划算——公开的输入法是让人用的,编码规则得考虑编使用者的学习成本,否则输入法的最终受众群体几近无人,输入法的公开意义就会大打折扣。</p>
        <p>第三,捺笔画已在输入法业内统一视为点笔画,还保留单独的捺笔画编码或许显得专业但也很另类。流行的未必专业,但流行是因为得到受众认可,受众认可了才有流行的资本。专业输入法即使不需要流行,但它的存在价值总是在使用中才能得以体现。</p>
        <p>其实,捺笔画的保留,在业已发布的两字元编码中其实并不多,不到四十个,其主要以生僻字和繁体字的构字部件出现,完全可以视作点笔画消化在已有编码中,并不会构成太多的重码。以下是检索到的第二字元以捺笔画编码的字的汇总,应该没有什么遗漏:</p>
        <table class="datatab">
                <tr><th width="80">序号</th><th width="100">字</th><th>编码</th></tr>
                <tr><td>1</td><td>&#132359;</td><td>bana</td></tr>
                <tr><td>2</td><td>&#156502;</td><td>bana</td></tr>
                <tr><td>3</td><td>&#150865;</td><td>bingna</td></tr>
                <tr><td>4</td><td>&#158500;</td><td>caona</td></tr>
                <tr><td>5</td><td>&#136718;</td><td>dana</td></tr>
                <tr><td>6</td><td>㸦</td><td>dingna</td></tr>
                <tr><td>7</td><td>&#140193;</td><td>gongna</td></tr>
                <tr><td>8</td><td>&#170550;</td><td>guna</td></tr>
                <tr><td>9</td><td>&#162855;</td><td>hengna</td></tr>
                <tr><td>10</td><td>&#131234;</td><td>changna</td></tr>
                <tr><td>11</td><td>&#148720;</td><td>changna</td></tr>
                <tr><td>12</td><td>&#164931;</td><td>changna</td></tr>
                <tr><td>13</td><td>&#139364;</td><td>jinna</td></tr>
                <tr><td>14</td><td>&#131413;</td><td>jiaona</td></tr>
                <tr><td>15</td><td>&#134761;</td><td>junna</td></tr>
                <tr><td>16</td><td>&#134074;</td><td>kouna</td></tr>
                <tr><td>17</td><td>&#134076;</td><td>kouna</td></tr>
                <tr><td>18</td><td>&#134081;</td><td>kouna</td></tr>
                <tr><td>19</td><td>&#170092;</td><td>mana</td></tr>
                <tr><td>20</td><td>&#144347;</td><td>muna</td></tr>
                <tr><td>21</td><td>&#144761;</td><td>muna</td></tr>
                <tr><td>22</td><td>&#161287;</td><td>piena</td></tr>
                <tr><td>23</td><td>㐅</td><td>piena</td></tr>
                <tr><td>24</td><td>&#131530;</td><td>renna</td></tr>
                <tr><td>25</td><td>&#166999;</td><td>renna</td></tr>
                <tr><td>26</td><td>&#155545;</td><td>sina</td></tr>
                <tr><td>27</td><td>&#155545;</td><td>sina</td></tr>
                <tr><td>28</td><td>&#155829;</td><td>sina</td></tr>
                <tr><td>29</td><td>&#150660;</td><td>tianna</td></tr>
                <tr><td>30</td><td>&#138898;</td><td>shanna</td></tr>
                <tr><td>31</td><td>&#162856;</td><td>shanna</td></tr>
                <tr><td>32</td><td>&#146579;</td><td>shuina</td></tr>
                <tr><td>33</td><td>&#147277;</td><td>shuina</td></tr>
                <tr><td>34</td><td>&#133625;</td><td>zhanna</td></tr>
                <tr><td>35</td><td>&#154346;</td><td>zhuna</td></tr>
                <tr><td>36</td><td>&#168098;</td><td>yuna</td></tr>
                <tr><td>37</td><td>&#163795;</td><td>zuna</td></tr>       
        </table>
        <p>若考虑到后续给新增字编码,捺笔画的编码存在也没有多少意义——对10多万汉字编码,重码率实在无法绕开。</p>
        <p>给汉字编码是一件繁重的工作,感谢字海网的老师们,他们为两分输入法付出了艰辛的劳动,获得了巨大的成功。本文纯属基于外行基础的探讨,不当之处还请理解。</p>
</div>

<script>
        const charAr = ['&#132359;','bana'], ['&#156502;','bana'], ['&#150865;','bingna'], ['&#158500;','caona'], ['&#136718;','dana'], ['㸦','dingna'], ['&#140193;','gongna'], ['&#170550;','guna'], ['&#162855;','hengna'], ['&#131234;','changna'], ['&#148720;','changna'], ['&#164931;','changna'], ['&#139364;','jinna'], ['&#131413;','jiaona'], ['&#134761;','junna'], ['&#134074;','kouna'], ['&#134076;','kouna'], ['&#134081;','kouna'], ['&#170092;','mana'], ['&#144347;','muna'], ['&#144761;','muna'], ['&#161287;','piena'], ['㐅','piena'], ['&#131530;','renna'], ['&#166999;','renna'], ['&#155545;','sina'], ['&#155545;','sina'], ['&#155829;','sina'], ['&#150660;','tianna'], ['&#138898;','shanna'], ['&#162856;','shanna'], ['&#146579;','shuina'], ['&#147277;','shuina'], ['&#133625;','zhanna'], ['&#154346;','zhuna'], ['&#168098;','yuna'], ['&#163795;','zuna'];
       
</script>

梦江南 发表于 2026-1-9 14:08

谢谢黑黑老师分享。{:4_187:}

杨帆 发表于 2026-1-9 16:00

本帖最后由 杨帆 于 2026-1-9 16:02 编辑

感谢字海网的老师们探索两分输入法取得的巨大成功{:4_199:}

感谢马老师分享对两分输入法处理捺笔画机制的真知灼见{:4_190:}

马黑黑 发表于 2026-1-9 18:11

杨帆 发表于 2026-1-9 16:00
感谢字海网的老师们探索两分输入法取得的巨大成功

感谢马老师分享对两分输入法处理捺笔画机制 ...

{:4_190:}

马黑黑 发表于 2026-1-9 18:11

梦江南 发表于 2026-1-9 14:08
谢谢黑黑老师分享。

{:4_190:}

花飞飞 发表于 2026-1-9 18:39

我滴天老爷耶。。这一个笔划这么复杂。。
偷偷说一下,手机看第一列只显示出三四个,电脑看到是很壮观,全部显示。。
都不认识哪。。。这些个古董们。。

花飞飞 发表于 2026-1-9 18:53

意味着当我输入changna时,它会出现三个同样的字,然后再重新挑一下。

再回头看了一遍,开篇提到的这个笔画输入法好玩,细想一下是学着快打着慢,笔 画都太多了。{:4_173:}

这个汇总好,看着拆好的去想一想,中间有些笔划是碎片忽略了。

花飞飞 发表于 2026-1-9 18:54

今天两分输入法多了字海二字

马黑黑 发表于 2026-1-9 20:18

花飞飞 发表于 2026-1-9 18:54
今天两分输入法多了字海二字

两分输入法就是字海网出品的。

马黑黑 发表于 2026-1-9 20:18

花飞飞 发表于 2026-1-9 18:53
意味着当我输入changna时,它会出现三个同样的字,然后再重新挑一下。

再回头看了一遍,开篇提到的这个 ...

理解正确

马黑黑 发表于 2026-1-9 20:19

花飞飞 发表于 2026-1-9 18:39
我滴天老爷耶。。这一个笔划这么复杂。。
偷偷说一下,手机看第一列只显示出三四个,电脑看到是很壮观,全 ...

你手机的字体可能出于性能需求没有支持扩展字库

樵歌 发表于 2026-1-9 20:24

厉害,这些字从没见过,更没用过。

马黑黑 发表于 2026-1-9 20:29

樵歌 发表于 2026-1-9 20:24
厉害,这些字从没见过,更没用过。
这个正常。汉字博大精深,曾经存在过的至少有十几万。而绝大多数人认得的和使用的字也就几千。

霜染枫丹 发表于 2026-1-9 22:54

看马老师的帖子涨知识,这些字我认识个6个,其余都不知道,很有趣味。笔画输入在老年人中有不少人再用,开发者做了很大的贡献。

感谢马老师分享,晚上好!{:4_204:}{:4_190:}

红影 发表于 2026-1-9 23:39

感觉重码好像不只这点吧,比如piena ,感觉很多字都能拆分成这个读音呢。

红影 发表于 2026-1-9 23:39

黑黑辛苦了,学习了{:4_187:}

马黑黑 发表于 2026-1-10 11:17

<div class="quote"><blockquote><font size="2"><a href="forum.php?mod=redirect&amp;goto=findpost&amp;pid=2484968&amp;ptid=89712" target="_blank"><font color="#999999">红影 发表于 2026-1-9 23:39</font></a></font><br>感觉重码好像不只这点吧,比如piena ,感觉很多字都能拆分成这个读音呢。</blockquote></div><br>5.0两分码表中,piena 两个:㐅、&#161287;,piedian 15个。去掉捺笔编码,piedian 17个,并无多大影响。<br><br>两元拆字法不是看笔画:先看部件有没有常用字,没有才看笔画。所以,拆成撇捺两字元的字,没有你想想的那么多。

马黑黑 发表于 2026-1-10 11:18

红影 发表于 2026-1-9 23:39
黑黑辛苦了,学习了

{:4_190:}

马黑黑 发表于 2026-1-10 11:19

霜染枫丹 发表于 2026-1-9 22:54
看马老师的帖子涨知识,这些字我认识个6个,其余都不知道,很有趣味。笔画输入在老年人中有不少人再用,开 ...

认识六个已经很厉害了,半个专家了

花飞飞 发表于 2026-1-10 16:59

马黑黑 发表于 2026-1-9 20:18
两分输入法就是字海网出品的。

{:4_173:}叫它收录辣么多生僻字
特殊输入法对应特殊字库。
页: [1] 2 3
查看完整版本: 小议字海两分输入法对捺笔画的处理机制