[Others] 86五笔输入法改进版 better-wubi(码表)
Tofloor
poster avatar
beavailable
deepin
2022-02-11 23:23
Author

better-wubi

这是一个 86 版五笔输入法的改进版码表,仅含《通用规范汉字表》8105字范围内的字和词语。

本项目旨在打造一个更好的、面向大众的通用码表,并且会持续更新,逐步完善词库。

《通用规范汉字表》之外的新增汉字:

adwd 碁
cccu 叒
damw 磺
efqn 朊
nkmh 屌
npwi 屄
yctd 诶

有何改进

本码表相对原版做了很多改进(详情点这里),目标是做到:

  • 更合理的拆字
  • 更均衡的按键
  • 更少的重码
  • 更易学易用

对于拆字规则,原版的规则是:

  • 能散不连
  • 能连不交
  • 取大优先
  • 兼顾直观

我认为“取大优先”是不必要的,有其他三条规则就已经足够了,因此在对码表改进的过程中不再遵守此条规则。

关于新世纪版

之前这个项目是基于新世纪五笔的改进版,但是用了一段时间后我觉得新世纪版并不好用,其缺点如下:

  • 整体采用小字根设计,拆字繁琐(主要指体验)
  • 由于小字根设计,重码也变多了,尤其是常用字词
  • 号称编码更规范合理,但依然存在诸多不合理及错误编码(网上可以找到很多例子)
  • 网传其改进了各手指使用的均衡度,但根据实测及程序分析,其相对于 86 版几乎没有改变

由于以上问题的存在,如果我基于新世纪版进行改进,就需要大量的改动及重新设计,工作量之大几乎相当于重新设计一套编码方案了,这就是我放弃新世纪版的原因。

不过平心而论,新世纪版也有一些优点,比如字根设计及拆字方案总体上确实更加合理了,对于新手来说也更易学易用了,本项目对 86 版五笔的一些改进也参考了新世纪版的设计。

来源

原始码表来源于CNMan/rime-data,以下是码表介绍:

  • 仅含《通用规范汉字表》8105字范围内的字和词语。
  • 修正、统一了王码大一统新世纪版五笔字型错误编码
  • 以大陆商务印书馆《现代汉语词典》(第7版)(约5.9万词)、上海辞书出版社《现代汉语大词典》(约10万词)及《现代汉语新词语词典》(第2版)(约1万词)和台湾教育部《重編國語辭典修訂本》(约15.1万词)、《成語典》(约0.75万词)(以下简称“五词典”)为基准
  • 完整包括《现代汉语词典》(第7版)、《现代汉语大词典》、《现代汉语新词语词典》(第2版)词头
  • 整合了9种五笔码表(王码大一统、QQ五笔、极点五笔、孤狐世纪词库、至善词库、冰凌五笔、黄狗五笔、精灵五笔、花儿五笔)的公共词语
  • 原则上不含5字以上词语(“五词典”词头除外)
  • 原则上不含外国人名、地名、品牌名等(“五词典”词头除外)
  • 完整包括民政部县以上行政区划简称(即只有“北京”,没有“北京市”等),并清理了地域词(即没有“北京动物园”等)
  • 完整包括教育部76所直属大学名称
  • 完整包括各届中国大陆及港澳台地区领导人姓名,其他国内人名仅含“五词典”词头中的历史人物姓名
  • 词语总数拟控制在15万左右,其中“五词典”以外词语总数约1.5万
  • 旨在打造整体偏“学术”的字词码表,欢迎大家提出意见和建议,谢谢!

更改

在原始码表的基础上,我做了如下更改:

  • 简码更改:
    • 将一级简码 Q改为
    • 将一级简码 Y改为
    • 将一级简码 U改为
    • 将一级简码 O改为
    • 将一级简码 X改为
    • 将一级简码 N改为 ,键名汉字改为
    • 将一级简码 M改为
    • 若干二级简码和三级简码更改,略
  • 编码更改:
    • 字的编码从 ltn改为 lnt,二级简码 ln
    • 字的编码从 dnv改为 dne,二级简码 dn
    • 字的编码从 iqv改为 qii
    • 字的编码从 djdd改为 jddd
    • 字的编码从 gnyn改为 gnny
    • 字的编码从 pnhn改为 phnn
    • 字的编码从 cbj改为 cnhj
    • 字的编码从 trff改为 rhff
    • 字的编码从 gkhe改为 fkpe
    • 字的编码从 uff改为 udf
    • 字的编码从 udyj改为 udwj
    • 字的编码从 guhk改为 gufk
    • 字的编码从 tuhk改为 tufk
    • 字的编码从 guwi改为 gudi
    • 字的编码从 dnyt改为 dxyi
    • 字的编码从 trnt改为 trxy
    • 字的编码从 hgmg改为 hghg
    • 字的编码从 mmgd改为 hnmg
    • 字的编码从 wuhj改为 wufj
    • 字的编码从 xxmk改为 mxxi
    • 字的编码从 udyf改为 udjf
    • 字的编码从 vtkd改为 vtkf
    • 字的编码从 gii改为 dhi,二级简码 dh
    • 字的编码改为跳过第二码,即 dpi,二级简码 dp
    • 乃刀方等字的末笔从 改为 丿
    • 尤龙等字的末笔从 改为
    • 戈戋等字的末笔从 丿改为
    • 将带 廴辶囗的字的末笔改为里面字根的末笔
  • 字根更改:
    • W键上的 字头移至 O
    • Y键上的 右边的字根移至 O
    • Y键上的 字根移至 O
    • D键上的 下面的字根移至 K
    • F键上的 下面的字根移至 K
    • F键上的 字根移至 K
    • V键上的 字根移至 E
    • N键上的 字根移至 I
    • 删除 Q键上的 下面的字根,编码改为 k
    • 删除 Q键上的类 字根
    • 删除 Q键上的 字头
    • 删除 E键上的 字根,编码改为 eh
    • 删除 U键上的 字根,编码改为 uf
    • 删除 D键上的类 字根
    • 删除 G键上的 字根,编码改为 fxy
    • 增加 字根至 E
    • 增加 字头至 R
    • 增加 字根至 P
    • 增加 字根至 S
    • 增加 字头至 F
    • 增加 字根至 L

本项目会持续改进,如果还有明显不合理或错误的地方,欢迎提出改进建议。

使用

本项目只是一个码表,理论上可用于任何支持自定义码表的输入法。

Win10 & Win11

首先下载码表,然后使用WubiLex将码表安装到系统里。

注意:由于 WubiLex只接受特定扩展名的码表文件,你可能需要将码表重命名为 better-wubi.txt才能添加。

Debian & Ubuntu

fcitx

# requires
# fcitx: sudo apt install fcitx fcitx-table-wubi fcitx-tools
# fcitx5: sudo apt install fcitx5 fcitx5-chinese-addons libime-bin
git clone --depth=1 https://github.com/beavailable/better-wubi.git
cd better-wubi
./install-for-fcitx.sh

然后在 fcitx设置面板添加 better-wubi输入法即可。

脚本

convert.py可以将码表转换为你需要的格式。

regenerate.py可以重新生成(根据单字编码)并排序码表。

statistics.py可以查看相关的统计信息。

鸣谢

  • 王码五笔发明者王永民先生
  • CNMan 提供原始码表
  • 字甲达宾 制作图标

版权

版权归王码公司所有,禁止商用。

Github: https://github.com/beavailable/better-wubi

Reply Favorite View the author
All Replies
1 / 2
To page
听风者
deepin
2022-02-12 00:15
#1

不能随意改变输入习惯键位,会导致混乱

Reply View the author
beavailable
deepin
2022-02-12 00:18
#2
听风者

不能随意改变输入习惯键位,会导致混乱

那你用原版就好。

Reply View the author
jjcui8595
deepin
2022-02-12 00:30
#3

虽然不用 也要点赞

Reply View the author
w***l@163.com
deepin
2022-02-12 16:15
#4

对,虽然不用,但点个赞!我原来在WIN下只用86版,现在这个系统没有。

Reply View the author
beavailable
deepin
2022-02-12 18:18
#5
w***l@163.com

对,虽然不用,但点个赞!我原来在WIN下只用86版,现在这个系统没有。

你是说 deepin 吗?有的,ibus 和 fcitx 都有原版 86 五笔。

Reply View the author
字甲达宾
deepin
2022-02-13 05:35
#6

完整包括民政部县以上行政区划简称(即只有“北京”,没有“北京市”等),并清理了地域词(即没有“北京动物园”等)


好东西!

从这点就可以看出,是非常用心了!非常适合政 企、公务系统使用!

另外,一级简码高频词,建议还是尽量不要调整。这会影响大量五笔用户的使用体验和评价。

(或者另外提供一个保留“86版原始一级简码”的额外版本)

字 是 根基,词 是 装修。

词 打出来不对,可以删了拆成字一个个来打;

要是十来个一级简码打出来全都变了,用户心态真的可能会崩掉的!

最后,还要再说一声:辛苦了!

Reply View the author
字甲达宾
deepin
2022-02-13 07:06
#7

顺手打了个 DEB 包。有兴趣的朋友,可以体验一下。

debian 10 测试正常。

(注:DEB 包只适用于 fcitx 4.x 系列版本。不适用于 fcitx5)!

fcitx-table-better-wubi_0.1-1~20220212_all.deb

文件大小:1.3 M

https://url48.ctfile.com/f/30646948-542792632-700f8e
(访问密码:6859)


主要文件:

1 usr/share/fcitx/table/better-wubi.mb

2 usr/share/fcitx/table/better-wubi.conf

3 usr/share/fcitx/imicon/better-wubi.png (简单补了个图标。先凑和用着。等楼主做了官方图标,我再更新)


Reply View the author
beavailable
deepin
2022-02-13 16:27
#8
字甲达宾

完整包括民政部县以上行政区划简称(即只有“北京”,没有“北京市”等),并清理了地域词(即没有“北京动物园”等)


好东西!

从这点就可以看出,是非常用心了!非常适合政 企、公务系统使用!

另外,一级简码高频词,建议还是尽量不要调整。这会影响大量五笔用户的使用体验和评价。

(或者另外提供一个保留“86版原始一级简码”的额外版本)

字 是 根基,词 是 装修。

词 打出来不对,可以删了拆成字一个个来打;

要是十来个一级简码打出来全都变了,用户心态真的可能会崩掉的!

最后,还要再说一声:辛苦了!

关于一级简码,原版的一级简码虽然都是高频字,但是对于少数简码,大多数时候都是打词语打出来的,单独打一级简码的时候其实比较少。

我改的一级简码大概也只有10个,把一些常用的并且经常单独打的字改成一级简码了,对于大多数用户来说应该更合理了。

另外,我删除的每个一级简码都还保留了一个二级简码,打起来其实也很方便。

最后,这是一个开源项目,如果你实在不喜欢,也可以 fork 一份自己维护。

Reply View the author
beavailable
deepin
2022-02-13 16:31
#9
字甲达宾

顺手打了个 DEB 包。有兴趣的朋友,可以体验一下。

debian 10 测试正常。

(注:DEB 包只适用于 fcitx 4.x 系列版本。不适用于 fcitx5)!

fcitx-table-better-wubi_0.1-1~20220212_all.deb

文件大小:1.3 M

https://url48.ctfile.com/f/30646948-542792632-700f8e
(访问密码:6859)


主要文件:

1 usr/share/fcitx/table/better-wubi.mb

2 usr/share/fcitx/table/better-wubi.conf

3 usr/share/fcitx/imicon/better-wubi.png (简单补了个图标。先凑和用着。等楼主做了官方图标,我再更新)


感谢支持。

我个人觉得 fcitx 的默认图标也不错,我也不会作图,所以不会有官方图标。

Reply View the author
字甲达宾
deepin
2022-02-14 05:36
#10

再来几个建议,与楼主一同探讨:

  1. 建议码表词库,每次更新时,顺便定义个版本号,方便流通和沟通。

  2. 用 install-fcitx.sh 执行(生成 mb 码表文件时), Debian 10 报错 python3 未找到。看了下源文件,文件头对 python3 的调用是 /bin/python3,楼主应该用的是 Arch Linux。除此以外的绝大多数 Linuxt 和 BSD, 都应该是 /usr/bin/python3)

  3. 可以考虑,给个中文名,比如:如意五笔?

  4. 重画了个 better-wubi.png logo。之所以重定义一个不同的 logo, 是为了和其它五笔区分开,让用户明明白白知道,自己现在用的到底是 wbx.mb ? wbpy.mb (五笔拼音)?wubi98 ? 新世纪五笔?还是其它的五笔码笔?

  5. better-wubi-6.png

  6. 个人用了一天多,主要感觉:

    优点:全国县级及以上城市,都可以直接组词打出(当然,很多会是以重码的形式出现)。

  7. 缺点:一级简码,二级简码等,在 86版五笔基础上,做了太多调整。原来熟悉的86词组,现在整得我很多词都不会打了。
    (附、我个人现在所要的词库:县城地名词库 + 标准86版 一级/二级/三级简码。也许,这是我,甚至是很多86五笔用户(特别是政企用户、打字员)最期待的、学习和过渡成本最低的一种方案。

Reply View the author
beavailable
deepin
2022-02-14 16:13
#11

挨个回复你的问题:

  1. 目前码表已经稳定下来了(除了一级简码,见下面),以后再更新基本就是顺序调整和词库的维护了,个人认为不太需要版本号,若有需要可以直接使用日期作为版本号。
  2. 我用的是 debian,因为 python2 已经淘汰了,所以不考虑支持;关于路径,在 debian 系的发行版中,/bin 是 /usr/bin 的符号链接,我为了省事就写了 /bin/python3。
  3. 目前没这个想法。
  4. 可以,我先试用下。
  5. 同上。
  6. 无。
  7. 一级简码的问题,我在前面已经解释过了;当然我的选择也不一定是最好的,如果有更好的选择我也可以考虑;新码表不熟悉很正常,因为最近还做了一次调整,我现在也不是很熟悉,但这本质上只是个习惯问题,慢慢试用一段时间养成习惯就好了。
  8. 再补一条,我知道码表改动太多会增加过渡成本,但是我的想法是:既然要改动,那就尽量改好一点,而不会过多地考虑迁移成本,因为这是一个输入方案,学习一次,终身受益。
Reply View the author
beavailable
deepin
2022-02-15 03:01
#12
字甲达宾

再来几个建议,与楼主一同探讨:

  1. 建议码表词库,每次更新时,顺便定义个版本号,方便流通和沟通。

  2. 用 install-fcitx.sh 执行(生成 mb 码表文件时), Debian 10 报错 python3 未找到。看了下源文件,文件头对 python3 的调用是 /bin/python3,楼主应该用的是 Arch Linux。除此以外的绝大多数 Linuxt 和 BSD, 都应该是 /usr/bin/python3)

  3. 可以考虑,给个中文名,比如:如意五笔?

  4. 重画了个 better-wubi.png logo。之所以重定义一个不同的 logo, 是为了和其它五笔区分开,让用户明明白白知道,自己现在用的到底是 wbx.mb ? wbpy.mb (五笔拼音)?wubi98 ? 新世纪五笔?还是其它的五笔码笔?

  5. better-wubi-6.png

  6. 个人用了一天多,主要感觉:

    优点:全国县级及以上城市,都可以直接组词打出(当然,很多会是以重码的形式出现)。

  7. 缺点:一级简码,二级简码等,在 86版五笔基础上,做了太多调整。原来熟悉的86词组,现在整得我很多词都不会打了。
    (附、我个人现在所要的词库:县城地名词库 + 标准86版 一级/二级/三级简码。也许,这是我,甚至是很多86五笔用户(特别是政企用户、打字员)最期待的、学习和过渡成本最低的一种方案。

图标能否换个明亮一点的颜色(比如蓝色或绿色)?再加个圆角应该会比较好。

Reply View the author
字甲达宾
deepin
2022-02-15 07:53
#13
beavailable

图标能否换个明亮一点的颜色(比如蓝色或绿色)?再加个圆角应该会比较好。

这几天我抽时间改改。

Reply View the author
beavailable
deepin
2022-02-16 01:06
#14
字甲达宾

这几天我抽时间改改。

好的。另外,字体改小一点点吧,现在的字体感觉有点大。

Reply View the author
字甲达宾
deepin
2022-02-17 06:30
#15

按意见重新配色,加了一点小圆角.

附、图标是 48*48. 系统在面板上,会自动缩放。不用担心图标太大会产生副作用。

better-wubi-7-green.png
better-wubi-8-blue.png


Reply View the author
beavailable
deepin
2022-02-17 18:18
#16
字甲达宾

按意见重新配色,加了一点小圆角.

附、图标是 48*48. 系统在面板上,会自动缩放。不用担心图标太大会产生副作用。

better-wubi-7-green.png
better-wubi-8-blue.png


这颜色真是一言难尽。。。。

我找了个颜色你看看:#d35400,我感觉还不错(不用蓝色和绿色了,不想和微信或 tg 的图标颜色冲突)。

另外,我说改字体大小是因为字体在图标中占据的空间太大了,我感觉在四周留的空间再大一点可能会更好一些,你可以尝试把字体改小点(大概 2px 或 4px)看看效果再决定。

Reply View the author
字甲达宾
deepin
2022-02-19 05:32
#17

better-wubi-9-brown.png

提示:这个棕色底色,容易和 Ubuntu 的系统主题色融合,在 ubuntu 系统上,很容易被看漏。个人不推荐这个配色方案。

Reply View the author
beavailable
deepin
2022-02-20 18:34
#18
It has been deleted!
beavailable
deepin
2022-02-20 18:35
#19
字甲达宾

better-wubi-9-brown.png

提示:这个棕色底色,容易和 Ubuntu 的系统主题色融合,在 ubuntu 系统上,很容易被看漏。个人不推荐这个配色方案。

这个挺好的,有劳了兄弟,感谢你不厌其烦地帮忙制作图标。

关于 ubuntu 的问题,我觉得用什么颜色都会有看不清楚的时候,相比之下,和微信、tim、tg 颜色冲突应该更不好辨认,所以我决定就用这个图标了。

你可以到 github 提个 PR 吗?如果不方便的话,我就自己上传图标了,我会在 README 里面注明图标来源的。

Reply View the author
字甲达宾
deepin
2022-02-21 05:03
#20
beavailable

这个挺好的,有劳了兄弟,感谢你不厌其烦地帮忙制作图标。

关于 ubuntu 的问题,我觉得用什么颜色都会有看不清楚的时候,相比之下,和微信、tim、tg 颜色冲突应该更不好辨认,所以我决定就用这个图标了。

你可以到 github 提个 PR 吗?如果不方便的话,我就自己上传图标了,我会在 README 里面注明图标来源的。

实在不好意思,我 github 已经荒废好多年了。你自己上传即可。

Reply View the author
1 / 2
To page