纠错与提示
拼写纠错的规则与标记、自定义纠错、正确拼音提示的三个来源,以及误读表的写法
拼音打错有几种情况:字母顺序打颠倒了(想打 kaishi 打成 kiashi)或漏了一个 g(想打 gongping 打成 gonping),模糊音分不清(zong 想要「中」),或者干脆读错了音(「调研」读成 tiao yan)。这一页讲输入法怎么应对:
- 拼写纠错:打错的拼写也能出候选,候选前加一个标记,让你知道这是纠错得来的。
- 正确拼音提示:在候选里嵌上正确的拼音,如「苹(ping)果」,告诉你正确的读法。
两项都在「输入」页的「纠错与提示」分区里设置。只对拼音生效,码表方案不受影响。对应配置段是 config.toml 的 input.correction,完整键名见配置文件 · 纠错与提示。
拼写纠错
开着「拼写纠错」时,常见的打错拼写也会出候选。例如输入 gonping(漏了 g),候选里有「*公平」:
- 候选前的
*是纠错标记,表示这个候选只能靠纠错得到。同一个词不纠错也能打出来时,留下的是不带标记的那条。 - 编码栏仍显示你打的原文
gon'ping,不会改写成gong'ping。 - 上屏的是「公平」,不带标记;学习时记的是正确读音 gong ping。
- 纠错候选排在正常候选后面:只要有正常打出来的完整候选,纠错候选就不会当首选。出厂开着的几条规则都验证过:拼音打对时,首页候选和关掉纠错时一样。
- 纠错候选不参与自动上屏。
- 只纠本身不合法的拼写。一个写法如果本来就是合法音节(比如
tie),即使它像是某个音节打颠倒了,也不会被纠。 - 只用于全拼,双拼不纠(双拼两键就是一个音节,不存在字母颠倒)。混输方案里的拼音按全拼处理。
出厂开启。
纠错规则
「拼写纠错」的扩展设置里逐条开关。有的规则会和简拼或正常切分撞车,打对的输入可能被误纠,所以出厂关着,按需打开:
| 规则 | 覆盖的写法 | 出厂 | 可能的误纠 |
|---|---|---|---|
| ng 打成 gn(ogn→ong) | agn、egn、ign、ogn、iagn、uagn、iogn | 关 | 简拼下 xign 也可以是 xi+g+n;开着时打 xign 想要「习惯」,首页会被 xing 的字占满 |
| 漏 g:on→ong | on→ong、ion→iong | 开 | lone 也可以是 lo+ne |
| 韵母字母颠倒 | ia→ai、ie→ei、ei→ie、oa→ao、uo→ou、iu↔ui、ioa / oia→iao、au→ua、aui→uai、aung→uang、aing→iang、eu→ue | 开 | 无已知冲突 |
| 旧式拼写 uei/iou/uen | uei→ui、iou→iu、uen→un | 关 | liou 也可以是 li+ou |
| h 错位(hz→zh、zih→zhi) | hz、hc、hs→zh、ch、sh;zih、cih、sih→zhi、chi、shi | 关 | hzi 也可以是简拼 h+zi |
| ng 打成 mg | mg→ng | 关 | m 是简拼首字母 |
| ng 打成 nag 类 | nag、neg、nig、nog→ang、eng、ing、ong | 关 | nage 也可以是 na+ge |
| 简拼冲突类 | qai / xai→qia / xia,nu→un,na / ne / ni→an / en / in | 关 | x'ai(喜爱)会被纠成 xia |
「韵母字母颠倒」里有几条只对特定声母生效,ia→ai 只用于 w、g、h、k 开头(hia 纠成 hai),ie→ei 只用于 w、f、g、h、k、z(wie 纠成 wei),ei→ie 只用于 j、q、x(xei 纠成 xie),uo→ou 只用于 y、p、f、m(yuo 纠成 you)。
纠错标记
「纠错候选标记」决定加在纠错候选前面的字符,出厂是 *,可以换成别的,留空就不加。标记与正文同色,不单独配色。
自定义规则
内置规则没覆盖到的习惯性打错,可以在「拼写纠错」的扩展设置里自己加。每条写成 错误写法=正确写法:
ogn=ong
uen=un- 两边都是小写字母,各写一段,不能相同,只能有一个
=。 - 规则作用于一个音节内部的一段字母,可以在音节的任意位置。输入法拿每个含「正确写法」的合法音节,把那一段换成「错误写法」,得到的错误拼写就会被纠回来。以
ogn=ong为例,gong、hong、zhong等都会多出gogn、hogn、zhogn的纠错写法。 - 和内置规则一样,换出来的写法本身是合法音节的不收。一条规则一个可用的写法都换不出来时,这条规则不起作用(日志里会提示),不影响其他规则。
- 自定义规则不受上面逐条规则开关的控制,只跟着「拼写纠错」总开关。
- 添加时设置界面会检查这条规则会不会和正常切分撞车,比如
uen=un会提示「tuen 也可以是 tu+en」。只是提醒,照样能保存。这项检查需要输入法正在运行。
正确拼音提示
勾选「显示正确拼音」后,带提示的候选会在正文里嵌上正确的全拼并着色,例如「苹(ping)果」。上屏的仍是「苹果」,提示只是给你看的。出厂关闭。
提示来源
哪些候选带提示,由三个来源各自勾选:
| 来源 | 什么候选带提示 | 例子 | 出厂 |
|---|---|---|---|
| 模糊音提示 | 靠模糊音匹配上的字。模糊音开着才有 | 开着 in ↔ ing,pinguo →「苹(ping)果」 | 勾选 |
| 误读提示 | 容易读错的词,见下面的误读提示 | tiaoyan →「调(diao)研」 | 勾选 |
| 纠错提示 | 经拼写纠错得到的候选。拼写纠错开着才有 | gonping →「*公(gong)平」 | 不勾 |
来源勾选不随「显示正确拼音」变灰:它们同时决定注释变量 ${correct_pinyin} 有没有值,以及误读表能否带出候选(见下)。
提示范围与声调
| 设置 | 说明 | 出厂 |
|---|---|---|
| 提示范围 | 「首个带提示的候选」只标第一个带提示的候选(三个来源合起来算);「全部带提示的候选」每个都标。「显示正确拼音」关着时此项置灰 | 首个带提示的候选 |
| 提示带声调 | 提示里的拼音带声调,例如「苹(píng)果」。同音异调的字取最常用的读音,查不到读音的字不带调。也作用于注释变量 ${correct_pinyin},不依赖「显示正确拼音」 | 关 |
显示细节
- 只标读音不对的那几个字。读音本来就对的字不标;简拼不标;末尾还没打完的音节也不标,比如单输
pin时的「平」,它可能只是 ping 没打完。双拼两键就是一个完整音节,不适用这一条(如小鹤pb的「平」照标 平(ping))。 - 双拼、混输里也显示全拼。
- 提示要么完整显示、要么整段隐藏,不会只露出半截拼音。候选按字数截断时,没被截掉的字上的提示会保留,如「苹(ping)果…」;候选窗宽度放不下时整段隐藏。
- 想把正确拼音放进候选注释而不是正文里,可以在注释模板里写
${correct_pinyin}。 - 颜色在主题里配:
[text.roles]的pinyin_hint,写法与回落顺序见文字角色色。默认主题配的是橙色;主题没配时用候选注释色。
误读提示
误读提示针对读错音:用户按自己以为的读音打字,却不知道自己读错了。
输入法自带一份常见误读表(约 610 个词:照半边读错的「赝品」「造诣」、多音字读错的「着陆」「剥削」、成语里的「一蹴而就」「呱呱坠地」、地名「蚌埠」「番禺」等),按「文字 + 错误拼音」两样同时对上才算。表里的词按错误读音在词库里查不到,也会出现在候选里并带上提示,例如打 tiaoyan 能在候选里找到「调(diao)研」。这类候选不会当首选,也不参与自动上屏,选中后学习的是正确读音。表里没有的读错,输入法认不出来。
错误拼音本身就是常用词拼法的读错(如把「莘莘」读成 xinxin,而 xinxin 正是「信心」),内置表不收,免得打常用词时候选里混进不相干的词。
取消勾选「误读提示」后,提示和误读表带出的候选都不再出现。
误读表的写法
内置表随输入法更新。想补充或纠正,在用户数据目录的 data/pinyin_misread.yaml 里追加条目——「纠错与提示」分区里的「误读表」一行可以直接打开它,文件不存在时会先建一份带说明的模板。
文件是 YAML:开头是说明头,... 一行之后每行写一项:
---
name: pinyin_misread_user
...
- {text: 莘莘, wrong: xin xin, right: shen shen}
- {text: 炽热, wrong: [zhi re, zhi le], right: chi re, note: 炽读 chì}text是词,wrong是错误拼音,right是正确拼音。同一个词有几种常见读错法时,wrong写成列表[a b, c d]。- 拼音按音节用空格分隔,不带声调,ü 写作
v。音节数要和字数相同。 - 可以另写
note(说明)、group(分组),输入法不读它们;不认识的字段一律忽略。 - 以
#开头的行是注释。格式不对的项(缺字段、音节数对不上、错误拼音和正确拼音相同)会被跳过,日志里记下第几项,其余照常生效。 - 「文字 + 错误拼音」和内置表相同的条目覆盖内置表,其余追加在后。用户表只能覆盖或追加,删不掉内置条目。
- 改完文件后,下次保存任一设置或重启输入法时生效。
相关页面
对这篇文档有疑问,或发现内容有误?
欢迎到文档仓库提 issue,写明问题时附上本页链接即可。