国家新版《汉字部首表》即将于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 的接口文档,看能否借助这个通用的输入法平台快捷的写个输入法引擎。但字词编码要花些苦力了。

标准的字根输入法设想相关推荐

  1. mvcc为什么不能避免幻读_为什么会有不可避免的强烈反对

    mvcc为什么不能避免幻读 重点 (Top highlight) 大技术 (Big Technology) Sitting among peers at a gathering a few years ...

  2. oracle是否支持gb18030,检测输入法是否支持GB18030标准

    国家标准GB18030-2000<信息交换用汉字编码字符集基本集的扩充>是我国继GB2312-1980和GB13000-1993之后最重要的汉字编码标准,是未来我国计算机系统必须遵循的基础 ...

  3. 切换windows系统输入法的中英文,可以忽视是哪种打字法

    调用windows的API //用户获取当前输入法句柄 [DllImport("imm32.dll")]public static extern IntPtr ImmGetCont ...

  4. 输入法破局研究——联盟推广

    简哲投稿 李开复在中国谷歌当掌门人,从职业经理人的角度来看,他的离开,最大的遗憾是没有带领中国谷歌超越百度.再从谷歌拼音输入法产品来看,中国谷歌团队对于技术和创意.商业策略的整合,并不擅长,最终导致谷 ...

  5. 机器学习排序之Learning to Rank简单介绍

     机器学习排序之Learning to Rank简单介绍 标签: Learning to Rank学习排序PointwisePairwiseListwise 2015-01-03 21:50 23 ...

  6. 搜索引擎利用机器学习排序

    搜索引擎利用机器学习排序 标签: 搜索引擎机器学习排序 2013-07-29 20:52 1414人阅读 评论(0) 收藏 举报 本文章已收录于: 分类: 机器学习与数据挖掘(24) 作者同类文章X ...

  7. ibus无法出现选择框如何解决

    2019独角兽企业重金招聘Python工程师标准>>> centos中文输入法一直无法出现选择框,google来一下,是python版本导致依赖python2.6的iBus输入法不能 ...

  8. 链接分析算法系列-机器学习排序

    这个系列的文章:原文 一:链接分析算法之:HITS算法: HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell Univer ...

  9. 排名算法(三)--排序学习

    转自:https://blog.csdn.net/anshuai_aw1/article/details/86018105 Learning to rank(简写 LTR.L2R) 也叫排序学习,指的 ...

最新文章

  1. CentOS6:安装JDK
  2. maven java 目录结构_java – 为maven目录结构生成的源文件的位置
  3. python中configparser详解_python ConfigParser模块详解
  4. JUnit通过失败测试案例
  5. Spring MVC @RequestMapping Annotation示例
  6. Shank的大步小步算法(Shank‘s Baby-Step-Giant-Step Algorithm)
  7. mac ~/.bash_profile 重启失效
  8. 记一次在广州看牙医经历
  9. 今日头条java后端四面_今日头条笔试第二批后端开发第一题java实现
  10. cad 切图_两种快速切图方式
  11. cdrx8如何批量导出jpg_cdr怎么保存jpg格式
  12. 动态规划之完全背包和多重背包
  13. python百度unit_Python——在调用Baidu的unit接口时,如何设置意向置信度,使其始终返回第一个say,实现,百度,UNIT,意图,总是...
  14. Chrome浏览器默认新标签页空白怎么办
  15. Python opencv:实现与自己同框对话的视频特效
  16. ocm认证年薪多少_华为“天才少年”张霁:本硕“双非”,凭啥斩获最高年薪201万...
  17. Havel-Hakimi算法
  18. Spring事务管理中异常回滚知识点总结
  19. 曼哈顿距离,欧式距离,明式距离,切比雪夫距离区别
  20. 在某OC字符串中,搜索指定的某字符串:-rangeOfString:

热门文章

  1. 嵌入式软件开发和其他软件开发的区别
  2. Web1.1 利用浏览器内置开发者工具进行抓包分析
  3. 【Grasshopper基础10】GH_Attribute简介 —— 自定义电池样式的终极后台
  4. 窄带随机过程(未完成)
  5. vue实现动态等分刻度尺并显示报错点
  6. php抓取运动步数,微信运动数据抓取(PHP)
  7. 关于CSGO理财游戏的一些心得(二)
  8. db2数据库日期减一天_数据库date减一天
  9. 公众号关联小程序教程
  10. 计算机绘图教程 于习法,计算机绘图教程