Skip to content

1 引言

拼音输入法是中国大陆目前使用得最为广泛的输入方案,其用户比例至少在96%以上,甚至可能高达99%。确切地说,这里的拼音输入法是全拼输入,不包括双拼,因为后者使用的人非常少,相比全拼可以说是微乎其微。

在中国大陆,任何需要输入中文的设备或者操作系统,不论电脑、手机还是平板、电视,也不论Windows、MacOS、Android还是iOS,全拼输入方案都是必备的,而且是默认的中文输入方式。不管国际大公司如微软、谷歌、苹果,还是国内大厂如腾讯、百度、讯飞、华为,都推出了自己的拼音输入法。曾经那种万码奔腾的局面已经一去不复返了,大街小巷的五笔打字培训班也已经成为历史的记忆,自然码、两笔、郑码等其它原来比较知名的输入方案则越来越少为人知。笔画输入法也只有很少的人在使用,一般是功能机时代沿袭下来的。

为什么会形成全拼输入一家独大而其它输入方案几乎销声匿迹的现象呢?是全拼输入已经完美的解决了中文输入的问题,人们已经非常满意,别无他求了吗?拼音输入没有改进、优化的地方了吗?非也!而且远非如此!实际上,现在的拼音输入法还存在很多问题,有的问题可以说是怨声载道,有的问题是因为缺乏指导而使用不当造成的。

1.1 拼音输入误区

现在的拼音输入法常常被称为智能整句输入法。人们在描述输入法发展历史的时候,也常常说从字到词到句。从理论上来说,更大的语境更有利于提高音字转换的正确性。从算法上来说,通过长期的积累,已经有成熟的隐马尔科夫模型。从硬件上来说,CPU、内存、硬盘等性能大幅提升,价格大幅下降,已经不是问题。加上互联网的成熟,更可以利用大厂服务器的资源和大数据来提升智能整句输入法的能力。从用户的角度来说,使用整句输入可以没有分词的负担,还可以少按大量的空格,只需要练熟400来个音节拼式,只管一个劲地击键就行了。似乎一切都完美了!

然而,实际情况却让人大跌眼镜,绝大部分人并没有以整句为单位来输入,真正采用整句输入的人其输入的效率也并不高。最能称得上整句输入法的微软拼音整句模式,可以算是技术上的精品了,但是采用的人并不多。微软拼音在面对搜狗、百度等利用搜索引擎和网络词库的次整句输入法时,显得力不从心,用户数量越来越少。整句输入的问题出在哪里?问题出在以下几个地方,即整句输入“八宗罪”。

(1) 编码效率低

拼音作为编码来说,编码效率太低,导致平均码长过长,超过了三码。汉语拼音的设计初衷是用于注音识读,所以遵循了音素化和国际化的原则。在这些原则的指导下,由于普通话自身的特点,使得拼音字母的利用效率很低,存在大量冗余。从编码的角度来说,用26个字母表达400个音节,每个音节只需要不到2个字母,因为26×26=676,可用的编码空间远远大于400,而汉语拼音却用了超过3个字母,所以效率会低。

(2) 确认成本高

整句的转换结果在输入的过程中可能会不断地发生变化,所以不到输入结束是不能判断其正误的,能够判断正误的只有输入的拼音串,拼音串不会发生变化。然而拼音并不是文字,人们对它的识读能力是很弱的,最多只能快速找出刚才输入的一两个音节的错误。因此,在输入过程中,最多只能做到输入的拼音串尽量不要出错。在一句话输入完成后,用户不通读一遍转换结果,是无法知道对错的,即使结果完全正确,这一步都是少不了的,而且句子越长判别正误的成本越高。

(3) 键错概率大

人不是机器,人在输入编码时,击键的准确性是有限的,一般来说,在计算机标准键盘上,有95%的键准就不错了。如果在手机上操作,那么键准还会低不少。假设整句输入的平均长度为15个汉字,每字平均3键,平均每个句子用了45键,那么整句键入完全正确的概率就只有0.95^45≈9.94%,不到10%!而且,随着句子长度的增加和击键速度的加快,正确率还会进一步下降。怎么办呢?现在的拼音输入法普遍都提供了自动纠错的能力。其原理是利用全拼的高冗余,对易于混淆的键进行容错。自动纠错确实能起到一些作用,但也同时带来了新的问题,可能会弄巧成拙,把用户需要的结果误改掉。

(4) 回改成本高

如果在上屏前确认时发现了错误,就需要进行回改。错误可能发生在一句话的任何位置,可能是转换结果有错,也可能是输入的拼音串有错。发现错误的位置后,需要先定位才能修改,其定位方法一般是用左箭头键逐个音节向前移动,用右箭头键逐个字母向后移动。箭头键的位置远离本位键,操作跨度大,缓慢、费时。搜狗拼音还有一个少用的方法是用Ctrl加字母键来定位,其特点是用键次数少,但是操作难度大。

(5) 残错概率大

不少人习惯于在输入过程中监视转换结果,在输入最后一个字词时就不再观察转换结果,然而可能会正是这最后一个字词又导致前面已有的结果发生变化,导致错误。这种错误,用户往往不容易发现,使得残错率升高,因为他不自觉地会认为,前面是正确的,最后一个选择也正确的话,就不会有错了。另一种情况是,明明知道还有错误,但是因为觉得修改太麻烦了,就不愿意修改而直接上屏了;这在打字比赛之类的紧急场合和聊天之类的不严肃场合是很常见的。还有一种情况是,由于输入的内容很多,虽然仔细检查了,以为没错,但是实际上仍然还有没检查到的错误。

(6) 可重用性差

拼音输入法是以输入单位进行记忆的。以句子为单位进行输入,就是以句子为单位进行记忆。而句子,除非是很短的日常用句,在使用中重复的可能性是非常小的。输入法很难学习到用户的输入习惯,也就很难根据用户的输入习惯来改进输入效果。例如,就是前面的「也就很难根据用户的输入习惯来改进输入效果」这样一句话,是很难被再次原封不动地使用的。

(7) 自由度受限

为了提高转换的准确性,行文就不能有创意,要尽量使用大众化的表达方式。用俗话来说,就是要尽量打水文。你要说「检查错误的方法」而不要说「查错法」或者「检错法」。要使用这种简略的说法,需要事先造词,然后才能用在句子当中。造词的过程并不简单,你得先以词为单位输入一遍,在句子中输入一遍是不能造出这个词的。可是,按词输入是整句模式的弱项,选重非常麻烦。更为伤脑筋的是,你常常并不知道系统中是否有某个词。

(8) 适应性不强

在不少时候,用户无法以句子为单位来进行输入。例如,在进行文章的审校时,往往是只是对个别的字词进行修改,这时不得不以字词为单位来输入。又如,在列出人名时,也只能以名字为单位进行输入,而不是句子。再如,打购物清单的时候,也只有逐个物品的输入。所以,整句输入适应性差,不能很好地适应各种应用场景,是不完备的输入方式。

有鉴于以上原因,拼音输入应该以字词为单位而不是以句子为单位。实际上,除了极少数死心塌地的整句派,大多数人也是这么做的。先进行正确的分词,然后按字词进行输入,可以在一定程度上同时克服以上问题。在输入字词时可以适时地使用简拼,从而缩短码长,提高编码效率。字词的长度一般不会超过四个字,确认和回改的成本会大大降低,错误更容易发现和修改,残错率也会减小。

1.2 拼音输入改进

通常,为了在使用拼音的情况克服以上问题,人们首先想到的可能就是采用双拼。但是,双拼的门槛还是不低,需要记住30来个韵母、3个翘舌声母和零声母的表示形式,而且仍然不能解决重码多的问题。同时,双拼能够节约的用键,被无法或者难以使用简拼的缺点部分抵消掉了。

声笔拼音则另辟蹊径,以全拼为基础,进行适当的变形,只需花费比双拼小得多的代价,就可以取得相当于甚至高于双拼的输入效率。声笔拼音是一种非常「奇特」的拼音输入法,它完全颠覆了人们对拼音输入法的认识,平均码长和重码大幅度减少,翻页键很少用得着,输入效率大大提升。

声笔拼音三板斧,在传统拼音基础上实现三次大飞跃

  1. 自由编码:缩短和变换拼式、直辅笔画
  2. 固定简码:截断固定、数选固定
  3. 顶功省键:优化路径、省略空格、快速回改

image-20230819091825507

1.3 适用人群

声笔拼音适合什么样的人使用呢?声笔拼音是对现有拼音输入法的优化和改进,所以它适用于正在用拼音输入中文的所有人,可以仅花费极小的代价就获得高得多的中文输入效率,而不必花更多的时间和精力去学习双拼甚至五笔等。声笔拼音将彻底改变人们对拼音输入时重码多、效率低的刻板印象,是最佳的拼音输入法升级方案。

如果您的拼音非常糟糕,声母分不清平翘舌,对韵母的掌握一塌糊涂,同时又想有一个简单高效的输入方案,那么强烈建议您使用声笔系列码中的声笔简码,它仅使用不分平翘舌的声母和五个笔画,就能取得比声笔拼音还高的输入效率。

1.4 内容介绍

本文只涉及声笔系列码中的声笔拼音。有关声笔系列码的总体情况请参见总体介绍。有关下载、安装和配置的方法,请参见安装配置。有关声笔系列码的发展历史,请参见发展历程。对于一些常见问题的解答,请参见常见问题。声笔系列码的其它输入方案详见各自的专题。

本文是图文教程,视频教程请移步声笔输入法边播边讲 240113声笔输入法边播边讲240120,可以参照学习。

2 声笔拼音初步

2.1 快速入门

2.1.1 编码规则

声笔拼音的编码元素为声母、韵母和笔画,具体表示方法与现行拼音输入法有一定的差异,请注意以下几点。

  1. 冠零声:用v表示零声母,即作为以a e o开头的音节在形式上的声母。例如,ai ei ou就变成了vai vei vou
  2. 去翘舌:不区分平、翘舌音,即省略zh ch sh中的h。例如,zhou chao shi就变成了zou cao si
  3. 省介音:在声韵相拼的时候,声母j q x后接以 ia ie io开头的韵母如 ia ie iao ian iang iong 时,要省略i。例如,传统拼音里的 jie qiong xiang 在声笔拼音里则变成 je qon xan
  4. 截韵尾:音节长度超过3时,则截断为3。例如,biao变成bia,而guan变成gua。这也导致了不区分前后鼻音,即省略ng中的g。例如,bang zong就变成了ban zon
  5. 去鼻音:将末尾的n置换成其前面的元音字母。例如,bin变成bii,而xan变成xaa
  6. 理特例:将韵母 er 合并到 eü 合并到 uê 合并到e。例如,er 变成ve 变成nu,而ê变成ve。特别注意,ü 没有像传统拼音输入法那样用 v 来代替。
  7. 补笔画:补充笔画直至码长为6,笔画不够时重复末笔;横竖撇捺折五个笔画用eiuoa来表示。例如,「笔」的拼音为bi,追加前3个笔画后编码为biueou。又如,「将」的音节为jaa,追加前两个笔画后的编码为jaaoei。再如,「乙」的音节为yi,而「乙」只有一个笔画,所以要重复三次才能形成编码yiaaaa。需要注意的是,在实际输入的时候,一般是不用6位全码的。

通过以上简单的改造,就可以取得以下奇特的效果。

  • 拼写形式得到了缩短,例如:zhuang变成了zuamiao变成了mia
  • 可以直接追加笔画进行快速筛选,例如:依yiu 衣yio 议yioa 艺yie。虽然现有拼音输入法也可以用Tab来引导加笔画,但是只能作用于词组中的首字,而且增加了码长。
  • 音节之间界线完全明确,在连续拼写的时候根本不需要使用隔音符排除歧义,例如:xi'anshi变成了xivaasi。虽然现有拼音输入法也可以用单引号来隔音,但是增加了码长,同时也容易忘记使用。
  • 降低了学习门槛,不再需要区分平翘舌和前后鼻音。虽然现有拼音输入法也可以设置模糊音,但是会影响汉字转换的准确性,而在声笔拼音中不会有这个问题,因为声笔拼音中不再保留翘舌音和后鼻音的拼式。

下面我们通过一些例子来熟悉一下上述7条编码规则,对于每个字,依次加以运用这些规则就是了。当然,在熟悉以后,是不必每个规则都去用一下的,因为直觉会告诉你哪个或者哪些规则是适用的。

  1. 声sheng:不是零声母音,不适用规则1;用规则2去除翘舌后,拼式变成seng;没有介音,不适用规则3;用规则4截去韵尾后,拼式变成sen;用规则5去掉鼻音后,拼式变成see;不是特例,不适用规则6;用规则7补充笔画后,拼式变成seeeie。
  2. 将jiang:不是零声母音,不适用规则1;不是翘舌音,不适用规则2;用规则3去掉介音后,拼式变成jang;用规则4截去韵尾后,拼式变成jan;用规则5去掉鼻音后,拼式变成jaa;不是特例,不适用规则6;用规则7补充笔画后,拼式变成jaaoei。
  3. 快kuai:不是零声母音,不适用规则1;不是翘舌音,不适用规则2;没有介音,不适用规则3;用规则4截去韵尾后,拼式变成kua;没鼻音,不适用规则5;不是特例,不适用规则6;用规则7补充笔画后,拼式变成kuaooi。
  4. 儿er:用规则1添加零声母后,拼式变成ver;规则2、3、4、5都不适用;用规则6后,拼式变成ve;用规则7后,拼式变成veuaaa。
  5. 虐nüe:规则1、2、3、4、5都不适用;用规则6后,拼式变成nue;用规则7后,拼式变成nueiea。
  6. 创chuang:用规则1后,拼式变成cuang;用规则4后,拼式变成cua;用规则7后,拼式变成cuauoa。

2.1.2 助记方法

虽然声笔拼音已经简单,基本上没有什么学习门槛,但是为了进一步减轻初学者的记忆负担,在手机上提供了助记皮肤,可以长按N键打开或者关闭助记。在打开时,给出了笔画和零声母用键(aeuiov)的提示,如下图所示。如果是在电脑上,则可以把该图放在电脑桌面上,在打字的时候帮助记忆,一般几分钟就记住了。

image-20230813150253295

2.1.3 基本输入

声笔拼音的输入方法非常简单。每个字用前1至6码,顺序组合进行输入。Tab和Shift Tab分别用于向前和向后翻页。Esc用于清除所有编码,退格键用于删除光标前的一个编码。首选项用空格上屏,重码项用23789上屏,而不是传统的123456,这样更便于操作,而且23789有时候是与笔画对应的。光标定位用1和0进行,重复按1逐字定位到未确定字的编码后,循环进行,按0则始终定位到所有编码的最后。在字数多于2时,可以用单引号直接定位到第二字的编码之后。

例如,「中国」一词按以下任何一种方式输入均可以!

image-20240518065635522

上图是两字都用全码,包括补充的笔画。

image-20240518065717205

上图是两字都用拼音部分,不包括补充的笔画。

image-20240518065743044

上图是首字都用全拼,次字用简拼。

image-20240518065812372

上图是首字都用简拼,次字用全拼。

image-20240518065844124

上图是两字都只用前两码。

image-20240518065909869

上图是首字用前两码,次字用简拼。

image-20240518065943884

上图是首字用简拼,次字用前两码。

image-20240518070048612

上图是两字都只用前简拼。

以上还仅仅是36种二字词输入格式中的8种而已。可见,声笔拼音的输入方式比现在的任何其它拼音输入法都灵活多变,但是并非每种方式都是同等重要的,它们可能适用于不同的场合,需要科学、合理、高效地加以使用才行,不能滥用这种高度的灵活性。从本章第三节开始,将分别针对单字、二字词、三字词和多字词的输入方法提供一些建议和技巧,并与搜狗拼音等进行对比,以展示声笔拼音的优势。

2.1.4 反查方法

在使用声笔拼音时,特别是在学习声笔拼音之初,有时会遇到不会打的字。怎么办呢?声笔程序提供了丰富的反查手段,可以通过笔画和一般拼音来反查编码,还可以采用字海两分来反查和输入非 GBK 汉字。

2.1.4.1 拼音反查

在知道一般拼音而不知道字形时用 a 引导拼音反查。

例如,要反查「防」字的编码,就在输入 a 之后再输入它的拼音fang,所以实际的输入为 afang,结果如下图所示。反查出「防」字的编码为 faaaio。如果是多音字,那么就会有多个编码,如图中的「房」字就有 faaoaepaaoae 两个编码。

image-20240705061303401

对于零声母字,如「案」字,在反查时除了用a 引导还需要在正常拼音的前面加 v,因为 an 是零声母音,所以实际的输入为 avan。在下图中提示出的案vaaooa,表示「案」字的编码为 vaaooa

image-20240705061802901

2.1.4.2 笔画反查

在完全不知道读音的时候,直接用 aeuio 按顺序输入笔画进行反查,无需引导。

在下面的笔画反查的例子中,不用引导而直接输入 uuao 后,出现了以这四个笔画开头的字。第一项是反faauua,表示「反」字的编码为 faauua。第二项为般baauua pouuao paauua,说明「般」是个多音字,有三个编码。

image-20240705084437753

2.1.4.3 两分反查

通过 i 引导的拼音还支持用字海两分法来进行反查, 支持查找八万多汉字,一般用于反查难读而易于两分的字或者输入 GBK 以外的字。GBK 以外的字,声笔拼音不提供正常编码,不能按正常方式输入,只能在两分查找到后选择输入。引导字母i可以理解为英文inquire(询问)的首字母,以便记忆

下面是字海两分法查找的例子。第一个例子是反查「龖」字的编码,在输入到第二部分拼音的第一码时就出来了。第二个例子是通过输入「尸」和「水」的拼音来反查「尿」的编码,输入了两部分完整的拼音。

image-20240705062008469

image-20240705062034581

对于非 GBK 字集里的「㕛」字,它是没有编码的,只能用两分法来输入,如下所示。

image-20240705085022495

2.2 单字的输入

在中文里,有数以万计的汉字,而拼音音节不带声调时只有400来个,所以同音字是非常多的。故而,单字的输入,对于传统拼音输入法来说,是一个非常头痛和痛苦的事情,可以说是想尽了一切办法企图来解决这个问题。

搜狗和百度之类的拼音输入法利用巨型互联网词库,在输入一般性的文本时,可以大大减少对单字输入的依赖。但是,单字的输入始终是不可避免的,在有的场合还用得比较多。这时,绝大多数人是通过翻页查找的方式来定位和选择同音字。在遇到输入同音现象严重的罕见字时,往往需要翻页数次,每页都要查看多个选项,严重影响输入效率。少数有经验的人,可能知道通过以词定字的方式来输入单字,或者通过加TAB后追加笔画或者部件来筛选重码字。然而,以词定字只是一种权宜之计,不是普适性的,有时候根本想不到适合的词。TAB后加码的方式是具有普适性的,但是操作很不方便,而且还增加了码长。另外,由于这些手段用得很少,偶而使用的时候,显得很生疏,无法做到快速操作。

2.2.1 重码问题

例如,在用搜狗拼音输入「疫」字时,可以在输入yi以后按TAB键再输入笔画dhpn,「疫」字就出现在当页的选项中了。

image-20211120064658859

现在,对比一下声笔拼音在输入「疫」字时的情况。在输入yi后,无需用难操作的TAB而是直接输入笔画oeu,「疫」字就出现在当页选项中。而且,在声笔拼音中,笔画的使用是非常频繁的,用户很容易对aeuio表示的笔画形成条件反射,从而加快操作速度。

image-20240518070127037

把单字重码问题暴露得最充分的,当数赵元任先生的「施氏食狮史」了,以下分别用搜狗拼音和声笔拼音将标题里的这五个字输入一下,进行对比,以目标字出现在首页为度,以考验它们的重码筛选能力。

image-20211121161656105

image-20240518070327918

image-20240518070402941

image-20240518070423197

image-20240518070446908

显然,声笔拼音(下图)比搜狗拼音(上图)要便捷得多,特别是每个字都节约了难操作的TAB键。合并平翘舌音后降低了学习难度,因为归并重音而产生的重码被追加的笔画有效地离散开了,并没有增加选择重码的负担。

2.2.2 码长问题

搜狗拼音输入「幢」字时,在输入zhuang后按TAB再输入该字的首笔竖,可以把它定位在首页。然而,zhuang这个音节有6个字母之多,加上额外的TAB键,码长非常不理想。

image-20211120071430095

相比之下,用声笔拼音输入「幢」字的话,只需在zua之后直接追加该字的首笔竖,就可以把它定位在首页。可见,从码长上来说,节约了四键,效率的提升是极为显著的。

image-20240518070553948

2.2.3 模糊问题

在拼音输入法中,一般都有模糊拼音设置。对于南方人来说,很多都会设置模糊三对平翘舌音,因为他们的普通话可能不太标准。前后鼻音的区分,对不少人来说,也是个大问题了。设置模糊音后,不管输入哪一个音都能够打出来,相当于降低了学习门槛。但是,这样做也有副作用,那就是牺牲了编码空间,同时也增加了重码。

在声笔拼音中,也采用了模糊音,但是其目的不仅仅在于降低学习门槛,而且还在于提高输入效率,明确编码界线,所以它的模糊是强制的。声笔拼音对韵母的模糊更加激进,不仅仅是不区分前后鼻音,而且韵母的长度不会超过2。例如,biao会截断为bia,xiong会变为xoo,shuang会变为sua。不过,l与n,f与h,r与l,这几对是没有模糊的。另外,在输入编码的时候会显示出前缀相同的所有字。例如,输入bi后,还可能出现bian、bie、bing等发音的字。这有利于缩短常用字的码长。

当然,这样的模糊拼音会产生不少的同音字词,但是由于声笔拼音有直接追加笔画的手段,可以有效地抵消同音重码的副作用。

image-20240518070634092

而在搜狗拼音中,输入bi后只会出现发音相同的字,而有的字并不一定很常见。

image-20211121105341246

2.3 二字词输入

二字词在现代中文里是最常见的。根据北京航空航天大学等单位承担的“七五”国家重点科技攻关项目“现代汉语词频统计”所得的结果,二字词所占累计字数比例超过了一半,高达53.32%。

image-20211120103634307

在使用全拼的情况下,由于汉语的音节只有400来个,所以二字词的编码空间大概有400×400=160,000个码位。这个空间看起来还是不小了,但是因为分布极不均匀,因而重码现象也是相当严重的。随着收词数量的增加,当量级到达数十万甚至上百万时,重码现象还会越来越严重。

2.3.1 重码问题

例如,用搜狗拼音输入「时势」,会出现在第五页的最后一项。由于重码词的顺序会有动态调整,不同的用户的结果可能会有所差异,但是不会影响我们理解这个事实的存在。

image-20211120114341884

为了避免多次翻页查找,搜狗拼音提供了一种通过笔画过滤重码的方法,即先用TAB引导,再输入首字的笔画,这样可以将「时势」提前到首页,如下所示。

image-20211120115857337

这种过滤重码的方式比起翻页查找要好得多,但是仍然不理想,因为TAB不好操作,而且增加了一次击键。

反观声笔拼音,如果不增加笔画的话,重码现象会更加严重,因为它是不分平翘舌的,「时势」一词会出现在第五页的第1项。当然,声笔拼音的重码顺序也是动态变化的,可能你的结果会有差异,但是不会影响我们对原理的理解。

image-20240518070751806

image-20240518070804764

image-20240518070818613

image-20240518070837765

image-20240518070852229

然而,声笔拼音拥有极为方便的直接笔画筛选功能,使得它无需为重码而发愁,而且码长更短。它在筛选重码加笔画时,无需TAB引导,既可加在首字后面,也可加在末字后面,还可以同时加在首字和末字后面,非常灵活方便和快捷,如下所示。

image-20240518071015757

image-20240518071030117

2.3.2 输入格式

拼音输入法在输入二字词的时候,格式可以非常灵活,可以都用全拼,可以简拼加全拼,可以全拼加简拼,也可以都用简拼。下面,以输入「创新」一词为例来说明这个问题。

在搜狗拼音中,可以用以下几种格式来输入。注意,用cx时的结果是经过一次翻页的。

image-20211121111457117

image-20211121111541724

image-20211121111633345

image-20211121111740791

在声笔拼音中,由于能在任意字后添加笔画,任意字都可以使用1至5码,所以可用的格式就更加丰富了。

image-20240518071121333

image-20240518071250181

image-20240518071308805

image-20240518071325469

image-20240518071341357

那么,问题来了。面对如此灵活的输入格式,有的高效,有的低效,用户该怎么选择运用呢?通过对拼音输入法用户使用方法的长期观察和总结,可以归纳出以下启发式的原则。

首先预判待输入二字词的常用程度。如果是很常用的词,那么就先输入两字的首码,即全用简拼。如果当页命中就选择上屏,否则继续输入第二字的韵母。例如,要输入「才行」一词,预判觉得它挺常用的,但首页没有,需要继续输入韵母。

在搜狗拼音中,输入的情况如下。在加入韵母后,「才行」出现在首页的首位了。

image-20211121132440814

image-20211121132515467

但是,如果想要输入的是「串行」而不是「才行」的话,就需要翻页几次才能找到了。

image-20211121134502442

image-20211121134538622

image-20211121135551615

image-20211121135634005

image-20211121135717689

所以,预判不准的代价有时候是比较大的。不过,在声笔拼音,可以有更多的办法,输入韵母后还可以再追加笔画,从而减少翻页操作,如下所示。

image-20240518071445772

image-20240518071612158

image-20240518071625125

运气好的话,可能加一个笔画就出来了。但是,运气不好的时候,还是需要多加笔画,此后都可能还是需要多次翻页。预判不准的成本仍然是很高的。

因而,除非特别有把握,一般的人倾向于先输入首字全拼加第二字简拼。如果当页命中就选择上屏,否则继续输入第二字的韵母。这样的话,可以大大地提高命中率,但是付出了增加码长的代价。现在,以输入「双唇」一词为例说明一下。

在搜狗拼音中,输入的情况如下。在加入韵母后,「双唇」出现在首页的首位了。

image-20211121141401327

image-20211121141540096

在声笔拼音中,输入第二字的声母,「双唇」就出现了,追加韵母,就成了首选。

image-20240518071819333

image-20240518071914757

但是,可以看出,声笔拼音的码长短了很多。这得益于声笔拼音采用的压缩编码和前缀模糊特性。

即使是不常见的二字词,如果刚按照上述方式输入过了,那么在当前的局部语境下,仍然可以采用先输入简拼的形式来输入,能够节约用键。比如,上例中的「双唇」,在最近输入过以后,只用sc就可以了。

image-20240518072013397

2.3.3 模糊问题

模糊拼音的作用在词组中的体现比在单字中更加充分。在声笔拼音中,不仅可以像一般拼音输入法那样模糊平翘舌声母和前后鼻音,而且是强制性的,必须模糊,以便提高编码空间的利用率,也便于简化输入规则。更进一步,声笔拼音采用了激进的前缀模糊法,即每个字输入1-6码都可以,远比一般拼音输入法灵活多样。

例如,输入「疫情」一词时,采用的输入码形式最多可以有6×6=36种之多,包括yq yqi yiq yiqii yiqi yioq等等。但是,并不是任何一种形式在任何情况下都是同等的有效。弄清楚在哪种形式下适合采用哪种形式,是一个非常关键的问题。建议采用上一小节介绍的启发式原则,结合自己的使用经验来加以灵活运用。对于「疫情」一词来说,第一次输入的时候,采用yioq是最有效的。

image-20240518072045023

而采用yiq输入则会较多重码,第二页才有「疫情」出现。

image-20240518072119678

image-20240518072133295

但加入韵母后,就出现在第一页了。

image-20240518072217085

这时,再追加一个末字的笔画,就可以把「疫情」变为首选项。这就是前缀模糊法的强大之处。

image-20240518072321246

2.3.4 隔音问题

在一般拼音输入法中,有的拼写形式是有歧义的。为了明确音节界线,在电脑上需要加隔音符',在手机上则需要用专门的分词键。

例如,在全拼的时候xian还可能是xi'an。使用搜狗拼音时的输入情况入下:

image-20211124064402027

image-20211124064454676

如果上例采用混合显示也基本上能解决问题的话,那么下例输入「实话实说」时就完全不管用了。这两例都是用的搜狗拼音,图中上面的是没手动加分隔符的,下面的是手动加了的。没有手动加分隔符时,简拼就失效了。

image-20211124064915359

image-20211124064955179

我们分析一下就知道,上文前一个例子的音节歧义是由零声母音引起的,而后一个例子的音节歧义是由翘舌音引起的。如何才能分清音节界线呢?声笔拼音的解决办法是,用v来表示零声母,同时将翘舌音归并到平舌音,即zh ch sh分别归并到z c s。这样以上两例的输入将变为如下图所示,在输入的时候就一定明确了音节界线,无论是全拼还是简拼都是这样。

image-20240518072358814

image-20240518072411856

image-20240518072426486

2.3.5 定位修改

在发生输入错误而需要定位修改时,一般拼音输入法是通过用箭头键移动光标或者Ctrl+音节首字母来定位的,但是这些方法效率低、操作难度大。声笔拼音提供了一种快速、方便的定位方法,可以利用数字 1将光标逐字定位到待定的第 1-n个字的编码之后,用 0 将光标定位到最后。

例如:如果本来想输入「御用」,但是输成了yiyoo,发现有错,用退格键删除四个字母后进行修改的话成本太高,用Esc键清提示行重新输入也不划算。

image-20240518072539990

于是,按1定位到yi之后。

image-20240518072608030

接着,按一次退格键删除i,再输入u。

image-20240518072658133

最后,按0定位到编码的末尾,就完成了修改。

image-20240518072727164

2.4 三字词输入

使用拼音输入三字词时,与输入单字和二字词相比,面临着很不一样的问题。

2.4.1 重码问题

对于三字词而言,如果采用全拼,那么编码信息已经足够丰富了,重码已经不是一个问题。这时,问题的症结在于码长太长而导致的效率低下。

例如,「互联网」一词,用搜狗全拼的话,需要10码,加上空格的话需要11键才能上屏。

image-20211124072703027

即使采用声笔拼音,拼写形式得到了一些压缩,仍然需要8码。

image-20240518072807901

所以,为了提高三字词的输入效率,人们在实践中往往采用其它输入格式来缩短码长。

2.4.2 输入格式

声笔拼音输入三字词时的格式可以多达6×6×6=216种,采用哪种格式最好呢?推荐的方法是,先采用简拼输入。查看当前页的候选项是否命中,没有则逐码追加末字的编码并观察候选项的变化。有则选择上屏,若已有二字词或单字候选项出现,那么说明系统中没有该词。这时,要用按1定位到第一后,或单引号定位到第二字后,进行修改,补充编码,以输入正确的字词,选择上屏后,光标回到末字后。重复以上操作直至完全正确为止。

例如,要输入「计算机」一词,一般只需要输入jsj,该词就会出现在首位可以用空格键上屏。如果当前页的重码项,那么可以用数字选择上屏。

image-20240518072838838

但是,若要输入的是「脚手架」,输入jsj后在当页候选中没有。这时,再补充一码,该词就出现了,可以用2选择上屏。

image-20240518072912911

可是,再假设要输入的是「鉴赏家」,输入jsja后在当页候选中仍然没有。这时,再补充一码末字的首笔,该词就出现了,可以用7选择上屏。

image-20240518072947327

然而,如果要输入的是「建设奖」,输入到jsjaaoe后在当页候选中仍然没有。这时,发现前两字是一个常见的二字词,于是按单引号定位到前两字后,准备进行修改。

image-20240518073026862

image-20240518073049255

这时,可以用7选择「建设」上屏,也可在js后追加「设」字的编码,前两字就便成了「建设」,再空格上屏。

image-20240518073339175

此时,「奖」已经在当前页,用2选择上屏即可。这样,也就同时造好了这个系统中原本不存在的三字词。

image-20240518073512038

以后,接下来用jsj就可以输入「建设奖」了。

image-20240518073600102

2.4.3 模糊问题

声笔拼音特有的前缀模糊法在上一小节追加末字编码时已经有所运用。前缀模糊在输入三字词时的另一种用途是,当觉得重码可能会很多,可能会不出现在首页时,首字可以用2、3码,而不是1码。

比如,声笔拼音输入「军事家」可以只用jusj,其中「军」的拼式只有前面两码,同样提示了这个词。

image-20240518073651031

但是,对于搜狗拼音来说,前缀模糊在多数情况下是不管用的,输入jusj后,不能提示「军事家」。

Snipaste_2021-11-28_17-03-25

只有在输入完整的拼式jun后,才会提示「军事家」,如下所示。

Snipaste_2021-11-28_17-04-25

2.4.4 隔音问题

声笔拼音的音节界线是完全确定、毫不含糊的,它的韵母没有辅音字母,而且零声母必须用v来表示,不会产生音节混淆的问题,因此也就用不着使用隔音符。

比如,声笔拼音输入「公安局」,用简拼为gvj,清晰明了。

image-20240518073719895

然而,在百度拼音中,是无法用简拼gaj来输入「公安局」的。

Snipaste_2021-11-28_17-11-18

必须在a之前手动地加入隔音符',而且「安」字的拼式要输入完整,才能提示「公安局」一词。

image-20211204074051291

2.4.5 定位修改

对于三字词来说,定位修改除了用于出错时而外,还常常用于预估系统中没有将要输入的三字词时。这时,最好是三个字都用全拼。比如,假设知道系统中没有「多字词」,就可以先使用这三个字的全拼。

image-20240518073840279

由于系统确实没有需要的词组,于是按1定位到duo之后。

image-20240518073945223

用空格选择「三」字上屏后,光标回到末字后面。

image-20240518074044575

此时可以直接选择8上屏「字词」,或再追加末字首笔,首选项即变成了「字词」,于是用空格上屏就完成了新词的输入。

image-20240518074127359

2.5 多字词输入

2.5.1 重码问题

对于四及以上字构成的多字词而言,如果采用全拼,那么编码信息比三字词更加丰富,几乎没有重码问题。但是,码长太长而导致的效率低下问题则突显了出来。

例如,输入「风光无限」,若使用全拼,肯定是没有重码的,但是即使用声笔拼音也需要11码之多,效率堪忧。

image-20240518074159063

所以,这时要考虑要更紧凑的输入格式来提高输入效率才行。

2.5.2 输入格式

在输入已知的多字词时,应首先考虑用简拼格式来进行输入。同样是输入「风光无限」一词,使用简拼的话,四码就够了。

image-20240518074225871

2.5.3 模糊问题

对于多字词来说,采用前缀模糊来输入的意义不大,用键仍然过多,对增加确定性的作用也不大。

image-20240518074259359

2.5.4 隔音问题

由于多字词一般采用简拼来输入,声笔拼音拼式的明确性体现的优势就特别明显。

例如,「斗志昂扬」一词,用声笔拼音的简拼是没有歧义的。

image-20240518074323880

而使用百度拼音时,则成了下面这样了。只能通过在a之前加隔音符来解决,但是有时候会忘记加隔音符,回改起来很麻烦。

image-20211204084243800

2.5.5 定位修改

在输入新的多字词时,经常会用到定位修改。这时一般先用全拼输入,如果转换不正确,再进行修改。

例如,首次输入「声笔拼音」时,按照全拼试输,结果如下。

image-20240518074501407

用1定位在首字之后,用7可以选择「声」上屏。

image-20240518074619168

光标回到编码的末尾。

image-20240518074711808

再用1定位到第一个未转换的音节之后,补充「笔」字的首笔u(撇)。

image-20240518074755504

用空格上屏「笔」字后,「声笔拼音」一词就确定了,再次可用空格整体上屏。

image-20240518074834025

2.6 构造新词

在上一节中,讲到了如何通过定位修改来输入「声笔拼音」,这是因为系统并没有该词。在按照此方式输入之后,系统实际上就构造好了这个新词。

但是,这里有一个问题。如果下次要输入「声笔简码」,还得单个地选择「声笔」两个字,因为在造「声笔拼音」时,并没有造出「声笔」。同理,在输入「声笔双拼」时后,虽然造好了「声笔双拼」,还是造不出「声笔」。如果先单独输入「声笔」,则会有效得多,因为造出的「声笔」这个词可以被后面的输入重复利用。

所以,在预计到某个较小的新词今后会用于构造更大的词时,就应该先造出这个小词,也就是说新词的颗粒度应该尽量小,以便提高新词的复用度。

2.7 后置选项

声笔拼音在默认情况下,编码前缀相同的字词,如果频率高,就会一直处在首选,这会大大地影响加码去除重码的能力。比如,「不」和「布」字的编码全部五码都是相同的,由于「不」字的频率高于「布」字,那么即使输入完五码,「不」字仍然处于首位,「布」是没有机会提前的,这显然很不理想。

image-20240304160257262

于是,声笔拼音提供了一个选项,使得已经在首选出现过的选项,在加码的时候后置,把机会留给频率紧随其后的字词,这样就能快速筛选出用户需要的重码字词了。比如,「布」字在输入三码时就可以被提前到首选。

image-20240304160352981

按F4选择2后,在菜单中再将默认的前置改为后置,就能实现后置的功能了。

image-20240304161340690

若需要默认为后置,则需要修改sbpy.schema.yaml文件,把switches中postpone一项下的reset改为1,保存后重新部署。

2.8 频率调整

现代拼音输入法的动态特性非常强,给它带来了更大的灵活性,降低了初学者的门槛,还能尽量缩短码长,减少用键。

例如,使用百度拼音输入了g后,本来的选项如下:

image-20211121084635743

这时,如果继续输入gao后,选项如下:

image-20211121084714538

在用空格上屏「高」字后(有时需要输入多次),再输入g的话,选项就可能变成:

image-20211121084752630

声笔拼音在默认状态下也是这样,字词输入码都是根据用户的使用情况而动态变化的,越常用的其频率值就会被调高,在重码中就会越靠前,甚至码长就会越短。反之,不常用的字词就会朝相反的方向调整。这对初学者是非常有利的。

但是,这只是问题的一个方面。问题的另一个方面是,人作为生物是具有记忆特性的,经常重复的行为,就会形成条件反射。如果在某个位置上固定了某个高频字词,那么经过一段时间的使用,用户就可以不假思索地将该字词打出来,而不必观察提示行,这样就减少了人机交互时间,提高了击键速度,从而提高了打字效率。如果不固定的话,这种快速的条件反射操作所上屏的字词很可能就不是操作者想要的,不得不进行费时的回改,反而影响了打字速度。

在码长和键速之间如何进行选择?这是输入法设计随时都会遇到的问题。不同的输入方案会有不同的选择。但是,长期的实践证明,对于拼音输入法来说,高频字词是肯定应该固定的。即使对于一般用户来讲,得到的击键提升都比码长的节约还划算,对熟练用户来说更是如此。

什么是固定字词?如何固定字词?固定哪些字词?这些问题就是在下一章声笔拼音进阶要解决的问题。

3 声笔拼音进阶

3.1 固定介绍

习惯上,将字词固定在首选位的做法被称为固顶,一般用鼠标悬停在某个重码字词上,在弹出菜单中选择固顶就行了。下图是搜狗拼音的固顶方法。

image-20230124084714880

如果还要把字词固定在其它位置,那么就需要使用自定义短语。自定义短语这个说法不正确,因为单字也是可以自定义,所以应该改为自定义字词才确切。当然,词组的长度理论上是可以很长的。

image-20230112140258889

百度拼音和搜狗拼音都提供了固顶和自定义短语的能力,但是它们默认情况下并没有固定任何字词,究竟应该固定哪些字词完全由用户决定。这种做法看似非常灵活,实则将责任推卸给了用户,因为绝大多数用户都不是输入法的专家,无法对需要固定的字词做出最佳的判断,甚至根本就不会使用固顶和自定义短语,更不用说确定字词的编码和位置了。即使是会用且有主见的人,要精选出成千上万的字词来确定编码和位置,也是一项十分艰巨的工作。个别的人即使做出来了,也没有通用性,其他人无法使用。

有鉴于此,声笔拼音对固定字词进行了精心的设计,基于字词频率数据,结合对顶功的支持,使得越常用的字词获得越短的码长,可以大大提高拼音输入的效率上限,而且让用户不必进行任何额外的工作就能够享有最佳的固定字词体验。

声笔拼音的固定字词分为前缀固定、数选固定和组合固定三种。要使用固定字词,需要打开固定选项。要临时打开固定,在电脑上按F4或者Ctrl+~,选择2,再选择固定即可。

image-20230712104437147

在手机上临时打开固定更简单,在候选栏上点选到出现固定选项为止。如果希望默认为固定状态,则需要修改sbpy.schema.yaml文件,将其中的options中的reset值改为1。

image-20230712104333535

3.2 前缀固定

前缀固定可以看成是一般拼音输入法固顶功能的推广。一般的固顶,要么固定简拼,要么固定全拼,而声笔拼音可以利用前1-2码来固顶,可以是不完整的拼音,与五笔之类传统字词输入方案的简码类似。

3.2.1 简字

在声笔拼音中,用首码固定的高频字称为一简字,一共有21个,它们是:不b 平p 没m 发f 的d 他t 你n 了l 个g 可k 和h 就j 去q 下x 在z 出c 是s 人r y一 我w 而v

用前两码固定的次高频字称为二简字,一共有105个。为了充分利用宝贵的短码空间,第二码采用了字的首笔作为编码,而没有采用韵母,例如:二ve 双sa 公gu 民ma 来le 前qo ,所以又称为声笔字。由于声笔字采用了不同于正常编码的格式,为了避免用户死记,在输入首码时就进行了提示,提示方法详见下一节。

3.2.2 简词

在声笔拼音中,取两字声母作为编码的高频二字词称为二简词,也称为声声词,例如:现在xz 但是ds 建立jl。这些二简词一共有下441个,具体参见声笔基础一章中的声声词

3.3 数标固定

除了一、二简字词外,声笔简拼还有大量固定的数选字词以及少量标点字词,包括210个声数字、42个声标字和4410个声声数词,它们有助于提高声笔拼音的可盲打性,从而提高输入效率。固定字词分为有理的和无理的两组,默认情况下只提示有理组,可以设置为同时提示无理组,以下示例是设置为同时提示无理组的情况。有理组用23789代表折横撇竖捺,而无理组用';14560进行选择,与笔画无关。

例如,在输入z后,如果直接输入;'14560将顺序选择「再 真 展 之 作 主 住」几个字。

image-20240914153045463

aeuio之前的字为声笔字,输入相应字母后并不会立刻上屏。比如,输入ze时的提示如下,首选「正」是声笔字,其后跟随的字则不是固定的。

image-20240914155233471

又如,在输入zy后,如果直接输入14560将顺序选择「怎样 重要 只要 主要 终于」五个词。其中,1可以换用单引号,而0可以换用Tab。

image-20240809082951014

3.4 组合变换

由固定字词而形成的某些组合形式是固定的,它们也是完全确定的,当组合后的用键足够少时在固定字词中就没有收录它们,例如二简词中就不包含一简字的组合,因为它们可以通过两字的声母加分号进行变换来实现快捷输入。使用一个固定组合的前提是,要首先记住构成它的固定字词。

  • 两个一简字的组合用分号上屏,例如「我的wd;」「就是js;」「不是bs;」「可的kd;」。
  • 一简字和二简字的组合用分号上屏,例如「一会yhu;」「我也wya;」「他说tso;」。
  • 二简字和一简字的组合用分号或者Tab上屏,例如「高一goy;」「过了gel;」「上的sidTab」。
  • 声声词和一简字的组合用Tab上屏,例如「解放了jflTab」「幸福的xfdTab」。
  • 一简字和声声词的组合用分号上屏,例如「的时候dsh;」「是一切syq;」。
  • 二简字和声声词的组合用分号上屏,例如「会形成huxc;」「大建设dejs;」。
  • 声声词和二简字的组合用分号上屏,例如「我们也wmya;」「他们说tmso;」。
  • 声声词和声声词的组合用分号上屏,例如「我们慢慢wmmm;」「他们马上tmms;」。
  • 三个一简字的组合用单引号上屏,例如「是不是sbs’」「一个人ygr‘」。
  • 声声词和两个一简字的组合用单引号上屏,例如「我们就是wmjs’」「这个不是zgbs‘」。
  • 动态三码字和一、二简字的组合用分号上屏,例如「指的zied;」「找大zaode;」。
  • 动态声声笔二字词和一、二简字的组合用分号上屏,例如「组合的zhed;」「组合大zhede;」。
  • 除以上情况外,若一、二简字之前的编码至少有四码,则可用分号上屏编码对应的字词和一、二简字,例如「祝贺的zuhed;」「祝贺大zuhede;」「计算机是jisrjs;」「绝大部分可jtdabufk;」。

组合变换不仅增加了确定性,而且相比分别输入还能节约按键,有利于提高输入效率,应该充分地加以利用。

3.5 固定提示

在非自由模式下,在未使用固定字词编码时,若候选项有固定字词,则会提示它们的固定编码,以便用户记住在今后使用它们。

image-20241114112338481

image-20241114112405021

image-20241114113123829

但是,组合变换,若未形成固定词,是不会提示的,比如「是不是sbs‘]。

image-20241114113147981

3.6 自定词典

声笔拼音的所有固定字词,包括一简字、声笔字、声声词等,以及所有固定的标点和数选字词,都是可以修改定制的,它们位于sbpy.fixed.txt文件中。您修改保存后,重新部署一下就可以生效。

image-20241114112217321

4 声笔拼音高手

通过声笔拼音初步和进阶两节的学习,已经将拼音输入中文的效率提升了两个档次,码长得到了缩短,确定性得到了提高,还有进一步改善的空间吗?当然有!采用什么办法来进一步改善效率已经相当不错的声笔拼音,实现第三次飞跃呢?那就是顶功。欢迎来到五彩缤纷顶功世界!

顶功是声笔输入法最重要的特色和优势。声笔拼音通过深入的研究和试验,将字词型和整句型的输入方式完美地结合了起来,实现了渐进式的顶功引入,避免了陡峭的学习曲线,可以共享自动调频和自动造词的成果,也让用户有了更多的选择,在流畅与效率之间取得一定的平衡。

在开启顶功后,便于用户使用更简短的输入方式,可以省略大量的空格,顶功模式下还会强制打开固定字词选项,所以能够大大提高输入效率,强烈推荐熟练用户积极采用。

要使用顶功模式,需要打开顶功选项。要临时打开顶功,在电脑上按F4或者Ctrl+~,选择2,再根据需要选择混顶或纯顶即可。如果希望默认为顶功状态,则需要修改sbpy.schema.yaml文件,将其中的options中的reset值改为2(顶功)。

另外,建议将schema中translator项下的fix_combination子项设为true。这样,输入三个声母时,在首选项为二简字和一简字的组合,例如:应该的ygd 知道了zdl,用空格上屏,三字词则用四码输入,这样可以增加确定性和减少重码。

image-20240518075116522

为了避免歧义和便于记忆,我们将用下列类似正则表达式的精简方式来描述顶功模式下字词的输入格式。其中,s = [qwrtsdfgzxcvbyphjklnm]表示声母,b = [aeuio]表示笔画,y表示韵母中的第一个字母(即次码),x表示韵母中的第二个字母或者追加的第一个笔画(即第三码),*表示按笔顺取零个或者多个,括号表示补码,大写的S表示声母需要用大写字母。

单字:sb, syxbbb

二字词:s(yxbbb)syx

三字词:s(yx)s(yxbbb)syx

四字词:s(yx)s(yx)s(yxbbb)syx

五字及以上的词:s(yx)s(yx)sS*(yxbbb)syx

4.1 单字的输入

使用纯顶模式时,单字的顶屏能力很强,从第二码就开始顶了,也就是说只有一简字需要空格上屏,其它首选字都可以省略空格。在混顶模式时,二三简字也不能顶屏。

4.1.1 实例一

「我」是一简字,只需要声母w,要加空格上屏,在纯顶和混顶下都是这样的。

image-20240708174648251

4.1.2 实例二

「给」是二简字,只需要声母g和首笔a(相当于输入格式中的sb)即可。如果后续其它字词如「你」的声母n,那么在纯顶时,「给」就会被顶上屏幕,从而节约空格键,而在混顶时,则必须用空格上屏后才能接着输入「你」字。

image-20240708174858078

4.1.3 实例三

「洗」不属于一、二简字,在输入了xi后,读音就输完了,所以第三码用首笔o(相当于输入格式中的x)。这时,假设「洗」出现在首选了,那么在纯顶时,就可被顶了,而在混顶时则不能被顶。当然,因为调频的原因,xio上的首选字有可能不是「洗」,但毫不影响理解这里说的顶屏。

image-20240518075426041

4.1.4 实例四

「素」字,假设在输入suee(相当于输入格式中的syxb)四码后出现在首选了,从而无论在纯顶还是在混顶下都可以被顶。因为调频位在第三位上,下次再输入「素」字就很可能只需要sue三码了。

image-20240518075600776

4.1.5 实例五

在同音字很多的时候,很可能就需要输入五码甚至六码,才能出现在首位。

image-20240518075633682

image-20240911024152138

4.2 二字词输入

4.2.1 实例一

「我们」一词,输入两码后就出现在首选了,这时需要空格上屏。

image-20240518075922690

4.2.2 实例二

「外贸」一词,输入三码后,就出现在首选了,可以顶屏,如下所示。

image-20240518080119762

4.2.3 实例三

「干洗」一词,在输入至少三码以后,只要「干洗」出现在首位,就可以顶屏。

image-20240518080301352

4.3 三字词输入

4.3.1 实例一

「计算机」一词,输入jsji后,该词已是首选,处于顶屏位,也可以被顶。

image-20240518080324410

4.3.2 实例二

「脚手架」一词,输入jsja后,并没有出现在首选,可以数选上屏,也可以继续输入末字的编码。

image-20240518080746737

image-20240911025011231

想要的词还没有出现在首选,可以进行补码,输入首字的韵母首字母后,「脚手架」就到首选了。

image-20240911025050811

4.3.3 实例三

如果「击键率」一词,在末字输入了三码后,情况如下。

image-20240518084930397

由于候选项中没有「击键率」,于是回头追加首字的编码。

image-20240911025856024

发现已经没有三字词,开始出现二字词了,再补充第二字的编码。

image-20240911030142100

「击键」出现在候选项里了,用8选中它。

「率」可以用7选择,选中它就完成了输入过程,并造好了「击键率」这个词。

image-20240518085305915

4.4 四字词输入

4.4.1 实例一

「红光满面」一词,输入四码就是首选了,可以顶屏。

image-20240518085841426

4.4.2 实例二

要输入「永生永世」,输入四码ysys,并没有出现首页。

image-20240518090002060

此时可以翻页查找。

image-20240518090031125

更好的办法是继续输入末字的第二码i(即「世」的韵母)后,该词出现在候选项中了,此时可以选择上屏。

image-20240518090245141

也可以在末字输入完三码后,回头补充首字编码,直到「永生永世」便成为首选,以便顶屏。

image-20240518090412588

4.4.3 实例三

假设现在要输入「声笔系列」,发现在输入sbxl后,情况如下。

image-20240518090558447

没有发现该词,于是继续追加末字两码。

image-20240518090706789

由于候选项还是没有变化,所以再回头补充首字和次字的编码。

image-20240911030812147

这时,候选项中出现了「声笔」,选择后情况如下。

image-20240518090846758

候选项中「系列」也出现了,选择后,「声笔系列」上屏,同时造好了这个四字词。

4.5 多字词输入

五字及以上的词称为多字词。

4.5.1 实例一

「床前明月光」,在输入完四码后,由于有长词联想功能,它可能会已经出现在候选项中。

image-20240911031045276

如果想将它提前到首选,只需要大写输入第五字声母即可,注意提示的编码仍然是小写的。

image-20240518091056896

4.5.2 实例二

假设现在要输入「声笔系列码」,其过程如下,包括补码和组词操作。

image-20240911031822488

image-20240911032117579

image-20240911032159466

image-20240911032231699

此时,如果后面还要输入「是」字,那么输入s就会将「声笔系列码」顶上屏幕,并造好该词。 整个造词过程犹如行云流水,与常规的输入过程几乎是合而为一了。

4.5.3 实例三

如果已知某个五字及以上的长词在系统中没有而需要新造,那么采用输入首码后按Shift+Tab(手机是上滑Tab)进入缓冲模式来造词是最好的,这时只需要拆开后输入一遍这个长词即可,而不必先输入所有的声母再回头补码。

例如,要输入「顶功输入高手」,缓冲造词的情况如下。

image-20240911032854881

image-20240911033004653

image-20240911033051975

这时空格并不会上屏,而是会停留在缓冲区中。

image-20240911033127189

需要再次空格才能上屏,同时退出缓冲模式,当然也造好了这个长词。再次输入的时候,只需要前四码就会因为长词联想而出现在候选项中。

image-20240911033553068

附录:混合模式

上面第四章讲的顶功模式可以取得简捷、高效的输入效果,但是对于习惯了传统拼音的人来说,回头补码在开始的时候可能非常不习惯,所以声笔拼音又提供了一种混合模式,以便用户可以平滑过渡。

在混合模式下,可以在顶功模式的基础上兼容一种带顶功的顺序纯拼音输入方式,当然想加笔画有时也是可以的。但是,需要牺牲少量顶屏能力,即每个字在二、三码时就不能顶屏了。另外,如果需要补充非末字的笔画,也需要手动定位才行。在顺序输入的时候,词组编码以声母结尾或者末字已经输入了四码,就可以通过顶屏来省略空格,这是对非顶功模式下顺序输入的重大改进。

例如,「苍茫的大地」可以顺序输入各字的拼音即可,而且末字一般只用声母,如果没有出来才需要追加韵母和笔画。另外,如果觉得输入的内容常见,那么每个字打两码也是可以的,末字仍然只用声母。

image-20241102094051370

image-20241102095136247

如果按照「苍茫」「的」「大地」来输入,在caamaa之后需要先用空格上屏「苍茫」,再用声母d加空格上屏「的」,然后输入「大地」时因为不在首选,需要用数字选择上屏。

image-20241102095937817

image-20241102100053346

如果在接下来的文字中,又遇到了「苍茫」和「大地」,那么一般用cam和dad即可输入了,而且可以通过顶屏省略空格。

如果希望能顶声笔字,那么可以修改一下sbpy.schema.yaml,将下图中红框里的内容改为[aeuio]。这样,「中zi」之类的声笔字在输入两码后就可以被顶上屏而省略空格。然而,要想输入词组的话,首字就得输入三码了,拼音不足三码的,则要补充一个笔画。比如,「大地」就需要用daedi了。

image-20241103105321682

如果希望词组末字有三码后就开始顶,那么可以修改一下sbpy.schema.yaml,将上图中蓝框里的内容改为[aeuio]{2,}。这样,「苍茫」在输入caamaa时就可以顶屏而不用空格了。但是,此时「大地 daedi」因为末字只有两码,所以还是不能顶。

如果希望只支持顺序二字词,且从第二字的首码起顶屏,那么可如上图那样注释掉上一行并启用下一行。这样,「大地」在输入daedi时就可以顶屏而不用空格了。