05 2023 档案
摘要:我又重构了一遍输入法, 目的是定义输入法规则的规则, 只要遵循这些规则, 就可以方便的制定新的输入规则. 我的输入法规则如下: - 规则文件名: ImeRule.py - 需要实现函数 - OnFilterKeyDown - 原型: f(keyCode:int,keyStates:list,msg:
阅读全文
摘要:有时候我们需要判断是否按了单个键, 比如按单shift键, 进行中英文切换, 但是shift+字母就表示输入大写字母, 那么怎么区分这两种情况呢? 我想了一个办法, 按下shift时记录shift键被按下, 此时如果又按下其他键, 就记录其他键被按下, 最后当shift抬起的时候, 判断是否按了其他
阅读全文
摘要:全部汉字 我从网上收集了一些资料, 构建了一个<全部汉字.json>文件, 文件格式如下所示: { "吖": [ [ "aa", "ya" ], "szhdps" ], "呵": [ [ "aa", "he", "ke" ], "szhhszhs" ], } 这是一个字典, 字典索引是每一个汉字,
阅读全文
摘要:在前后台交互的过程中, 消息中会带有keyStates信息, 它是一个形如[0,1,128,129,...]的数组, 代表每一个键的当前状态, 对它的理解和掌握, 有助于对输入法更精细的处理. 比如输入ctrl+s时, 判断有两个键被按下, 此时s键就不能作为索引词了. 关于keyStates中数值
阅读全文
摘要:我的输入法基本开发完成了, 如下所示: 现在总结一下我的输入规则: 1. 用户输入几个字符, 就代表几个字的词. 比如输入'w'表示以w开头的单字词, 输入wm, 表示拼音首字母开头的双字词, gsm表示拼音首字母开头的3字词; 2. 输入分号, 表示词的个数已固定, 需要进一步筛选; 同时表示当前
阅读全文
摘要:用户操作 用户输入‘w’,显示以‘w’开始的单字 用户输入数字键,比如‘1’,选择一个单字‘我’ ‘我’字上屏,回到初始状态 消息交互过程 init,onActivate 切换到当前输入法时,后台会发送这两个消息 filterKeyDown 用户输入‘w’时,后台发送此消息,表示指定keycode是
阅读全文
摘要:首先,安装PIME,github地址: https://github.com/EasyIME/PIME 下载安装PIME-1.3.0-stable-setup.exe,就可以得到一个输入法,后端是python,在安装目录下‘C:\Program Files (x86)\PIME\’,python目录
阅读全文