标准的字根输入法设想
国家新版《汉字部首表》即将于5月1日发布,其中:主部首 201 个,附形部首 99 个。
每个部首都是有读音的,因此可以用部首的声母做码元,笔划也有读音,不需要用数字表示。
一直没有学形码市场中的王者——五笔(其实相比更合理的应该是郑码),一是感觉它太繁琐,更重要的是觉得它的拆字不合汉字内在的文化意义,怕自己习惯一种错误的思维。
用拼音输入法好多年了,紫光拼音,感觉还不错,只是有时选一些不常用字麻烦了些——重码太多了。
前几天,同事问一字如何写,虽不常用,也不生僻,自己却半天想不起来!查拼音……原来如此简单,自己本来会写的。
于是有些吃惊(尚未至大汗淋漓),啊……已经好多年没去想念字形了,虽童子功深,但多年失忆下来,有不少字都是月光下的凤尾竹——渐渐的模糊了。愧!
希望有个形码的输入法,拆字完全合理,所以思考了些日子,整理出如下条目:
<xx形声输入法> 功能和用户界面设计
===============================================================================
字根:
采用国家新版《汉字部首表》中部首为字根。计:主部首 201 个,附形部首 99 个。
要点:不添加任何自定义字根,完整采用标准部首作为字根。
字根取码:
1.
简码:
取字根标准拼音之首字符(一般为声母)为码,下面也称之为读音码。
注:
笔画归总为六类:横(h)、竖(s)、撇(p)、捺(n)(点)、折(z)、勾(g)。“折”笔指向左弯折(勾),“勾”笔指向右弯折(勾)。
单笔画字取笔画码和字读音码,以形成至少 2 个码位。如“乙”字,取:勾(g) + 乙(y),编码为:gy。
2.
全码:
取标准读音全拼(含声调)和其在《汉字部首表》中的序号(码尾3位数)组成唯一识别符。
拆字:
1.
作为文字的规范信息,采用标准的汉字拆字规则,请参考国家新版《部首归部规范》。
2.
在现实的输入法码表中,接受容易错拆的常用字的容错拆分。
===============================================================================
<实现相关>
特点:
规范拆字,标准字根(即国家标准《汉字部首表》内容)。
以词为主,短句为辅,单字优先级最低(有单独的单字输入模式,支持拼音)。
逐键智能组词组句,自动记忆选取词汇
可配置词频调整和候选词条数。
多模式快捷切换,方便输入疑难字和各种符号。
编码:
1.
单字 - 全码:主部首全码 + 按笔序其它字根全码。(文字信息资料)
单字 - 简码:主部首简码 + 按笔序其它字根简码。
单字 - 拼音:标准全拼,不含声调。(注:可配置模糊音)
2.
词组:仅用单字简码中的前 2 个码进行编码。
编码:1 + 1 + …… 即分别取各字简码中的前 1 个码(主部首读音码)组合。
优化:
对两字词增加 2 + 2 取码方式,即分别取两个字简码中的前 2 个码组合。
3.
高频字简码,除 i u v 之外的 23 个英文字符(码元)对应 23 个高频字。
功能:
1.
普通模式:
调用输入法正常输入文字。因拼音首字符只用到 23 个字母,英文键盘上 i u v 未用,所以这 3 个字母被用作扩展模式。
除单双引号外,主键盘标点符号转换由文件定义,用户可以修改配置。
2.
扩展模式:
首次键入 i、u、v 即进入相应模式(小写)。
> I
垂直式候选框,0 - 9 功能选单。
-
单字输入(默认,直接输入即是)。支持全码、简码、拼音。
行中有该字读音和拆分部件列表提示(可按 Shift + num 将提示信息一并输出)。
0
部件查询。(首项,可空格选定)。
按笔画数排序,翻页浏览。提示信息包含部件全码、笔画码(书写笔序)。也可输入部件拼音快速查询。
1
函数字串:支持部分 C 函数格式化输出。
如定义 date 为当前日期编码,则在该选项下输入 date 出现候选词表,可选择当前日期的各种格式串。
4
成语输入。
为简拼码(仅由各字读音码组成),用于知道读音但对组成字不清楚的情况。
也可用于普通词组,拼音编码。
此模式下不具备智能组词功能,但有词频调整。
> U
模拟软键盘。水平式 0 - 9 功能选单。可翻页以提供多于 10 个的软键盘。
0 默认选中,一般为常用符号。与 I 的默认不同,此处提供选单键,便于切换回来。
1 - 9 隐藏的软键盘,选中才显示。
注:
因为有数字选单,考虑方便性和适用程度,软键盘不包含数字键一行的键位。
> V
英文输入模式(会比切换输入法快一些)。
键入 v 进入临时英文模式,支持空格编辑(即空格不作提交键),Enter 键提交。
注:
普通模式下首先键入大写字母也进入临时英文模式,但只支持单词,空格提交。
容错:
习惯拆字:在现实的输入法码表中,接受容易错拆的常用字的容错拆分。
候选框:
水平式候选框参照紫光输入法。
垂直式候选框词条数可配置,并可配置底色,分3个区域:首行、中间部分、尾行,这样使得瞬间目视(一目多行)即可判断词汇有无或位置。(瞬间判词的能力可能因人而异,故候选词条数应可配置)
效果见下图:
5 条词汇:
背景双色:简洁清新。 |
背景三色:两相似色,简洁。 | 背景三色:强对比,一目了然。 |
6 条词汇:
背景双色:简洁清新。 |
背景三色:两相似色,简洁。 | 背景三色:强对比,一目了然。 |
===============================================================================
附言:
很早就学 C++,也想自己写个输入法程序,但好像编写输入法程序的中文相关资料十分的希缺,感觉这真是件怪事——中文输入可是国人进入信息世界的第一道必经门槛啊!这第一道大门怎如此的难以琢磨?罢了,谁叫俺英文差呢,在目下这简体中文的汉语大环境里,没有英语的天赋或成长环境,既便你逻辑思维异常严密、数学成绩高高挺立,综合思考能力杰出卓越,也别想去窥程序员的宝座,别想把现实的事物转化为机器的逻辑,或者,充其量,慢慢爬吧…………做个蜗牛或乌龟。(不是骂人,龟兔赛跑的故事记得吧?我就是只乌龟,不过是只执着的乌龟)
自己也准备攻一下 SCIM 的接口文档,看能否借助这个通用的输入法平台快捷的写个输入法引擎。但字词编码要花些苦力了。
标准的字根输入法设想相关推荐
- mvcc为什么不能避免幻读_为什么会有不可避免的强烈反对
mvcc为什么不能避免幻读 重点 (Top highlight) 大技术 (Big Technology) Sitting among peers at a gathering a few years ...
- oracle是否支持gb18030,检测输入法是否支持GB18030标准
国家标准GB18030-2000<信息交换用汉字编码字符集基本集的扩充>是我国继GB2312-1980和GB13000-1993之后最重要的汉字编码标准,是未来我国计算机系统必须遵循的基础 ...
- 切换windows系统输入法的中英文,可以忽视是哪种打字法
调用windows的API //用户获取当前输入法句柄 [DllImport("imm32.dll")]public static extern IntPtr ImmGetCont ...
- 输入法破局研究——联盟推广
简哲投稿 李开复在中国谷歌当掌门人,从职业经理人的角度来看,他的离开,最大的遗憾是没有带领中国谷歌超越百度.再从谷歌拼音输入法产品来看,中国谷歌团队对于技术和创意.商业策略的整合,并不擅长,最终导致谷 ...
- 机器学习排序之Learning to Rank简单介绍
机器学习排序之Learning to Rank简单介绍 标签: Learning to Rank学习排序PointwisePairwiseListwise 2015-01-03 21:50 23 ...
- 搜索引擎利用机器学习排序
搜索引擎利用机器学习排序 标签: 搜索引擎机器学习排序 2013-07-29 20:52 1414人阅读 评论(0) 收藏 举报 本文章已收录于: 分类: 机器学习与数据挖掘(24) 作者同类文章X ...
- ibus无法出现选择框如何解决
2019独角兽企业重金招聘Python工程师标准>>> centos中文输入法一直无法出现选择框,google来一下,是python版本导致依赖python2.6的iBus输入法不能 ...
- 链接分析算法系列-机器学习排序
这个系列的文章:原文 一:链接分析算法之:HITS算法: HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell Univer ...
- 排名算法(三)--排序学习
转自:https://blog.csdn.net/anshuai_aw1/article/details/86018105 Learning to rank(简写 LTR.L2R) 也叫排序学习,指的 ...
最新文章
- CentOS6:安装JDK
- maven java 目录结构_java – 为maven目录结构生成的源文件的位置
- python中configparser详解_python ConfigParser模块详解
- JUnit通过失败测试案例
- Spring MVC @RequestMapping Annotation示例
- Shank的大步小步算法(Shank‘s Baby-Step-Giant-Step Algorithm)
- mac ~/.bash_profile 重启失效
- 记一次在广州看牙医经历
- 今日头条java后端四面_今日头条笔试第二批后端开发第一题java实现
- cad 切图_两种快速切图方式
- cdrx8如何批量导出jpg_cdr怎么保存jpg格式
- 动态规划之完全背包和多重背包
- python百度unit_Python——在调用Baidu的unit接口时,如何设置意向置信度,使其始终返回第一个say,实现,百度,UNIT,意图,总是...
- Chrome浏览器默认新标签页空白怎么办
- Python opencv:实现与自己同框对话的视频特效
- ocm认证年薪多少_华为“天才少年”张霁:本硕“双非”,凭啥斩获最高年薪201万...
- Havel-Hakimi算法
- Spring事务管理中异常回滚知识点总结
- 曼哈顿距离,欧式距离,明式距离,切比雪夫距离区别
- 在某OC字符串中,搜索指定的某字符串:-rangeOfString: