如何在上屏之后不让输入法候选框消失
我想实现一个根据上次上屏的字去联想组词的功能,类似一些输入法中上屏 “你” 之后,候选中出现 “好”,“们” ... 等等。
大概思路是
- 监听上屏事件记录上屏的词(这个目前是支持的)
- 拿到上次上屏的字,并去查词典(这个要怎么做?)
- 把查到的结果放入候选(能做到)
第一步上屏之后,能否不让输入法候选框消失? 我想的是修改输入码,在输入码之后加一个空白的输入码,这样就永远输入不完,候选框就不会消失。不知道这个现在能否实现,或是有没有其它办法?
第二步查词典如果在目前的版本中,是要自己构建反查词典么? @Ace-Who 在 #19 中好像提到过类似的功能,具体是要怎么做呢?或者有没有其它方案?
不知道如何保持候选框,不过我也考虑过这个问题,没有想到简单可靠的方法。我提的 issue 是指拿输入码(最好能作为 pattern,比如正则模式,而不是限于精确匹配)去查词。
拿词去查词也是可以做到的,思路是做一个词典及其配套方案,以联想词为 code,以前置输入词为 text,以生成 reverse.bin,用 ReverseDb() 来以 text 查 code。
贊同。 我會在 translator 放一個 包含詞組 字典且將enable_completion :true ,在全域變數 保留上一個字 及上屏前 此字典 候選字 存入array , 確認上屏後 , 用上屏字 找 Array 第二字 優先推入 。
但 想想 不是很好用 , 1 table 有詞組 和 提前顯示 2 漢語拼音 智能 ( nih/ nim) 都會出在候選字上 使用者 table 盲打 少用候選字 2 拼音 rime 智能已能做到連打