imfuxiao / Hamster

librime for iOS App
GNU General Public License v3.0
1.23k stars 79 forks source link

请求解决误触和纠错提升,无法快速打字 #160

Open androidcn opened 1 year ago

androidcn commented 1 year ago

我想打的是diao ni lao shu

image

BerryBie commented 1 year ago

这种可以实现吗?我也想能够这样子,iOS上太容易点错了

imfuxiao commented 1 year ago

这种可以实现吗?我也想能够这样子,iOS上太容易点错了

纠错的这个功能点难度不小,涉及到很多方面,很难实现。目前来说不会优先处理。

现在最重要的UI的调整,希望UI也能优化一部分误触的问题。

androidcn commented 1 year ago

这种可以实现吗?我也想能够这样子,iOS上太容易点错了

纠错的这个功能点难度不小,涉及到很多方面,很难实现。目前来说不会优先处理。

现在最重要的UI的调整,希望UI也能优化一部分误触的问题。

向左滑动删除得独立出来,我发现很多滑动操作导致误触

imfuxiao commented 1 year ago

这种可以实现吗?我也想能够这样子,iOS上太容易点错了

纠错的这个功能点难度不小,涉及到很多方面,很难实现。目前来说不会优先处理。 现在最重要的UI的调整,希望UI也能优化一部分误触的问题。

向左滑动删除得独立出来,我发现很多滑动操作导致误触

您是指删除键上默认的左滑删除编码区的功能吗。

androidcn commented 1 year ago

这种可以实现吗?我也想能够这样子,iOS上太容易点错了

纠错的这个功能点难度不小,涉及到很多方面,很难实现。目前来说不会优先处理。

现在最重要的UI的调整,希望UI也能优化一部分误触的问题。

向左滑动删除得独立出来,我发现很多滑动操作导致误触

您是指删除键上默认的左滑删除编码区的功能吗。

对的

xjkdev commented 1 year ago

作者您好,我想针对这个问题提一个小建议。据我了解,很多触摸键盘误触纠错的算法似乎会根据编码出现的频率调整单个字母按键触摸判定区域的大小,但我注意到你代码中好像目前并没有考虑按键触摸判定区域和显示区域不一样的情况。也有可能是我没看到,但是能否在今后修改的时候注意预留这样的功能。

imfuxiao commented 1 year ago

作者您好,我想针对这个问题提一个小建议。据我了解,很多触摸键盘误触纠错的算法似乎会根据编码出现的频率调整单个字母按键触摸判定区域的大小,但我注意到你代码中好像目前并没有考虑按键触摸判定区域和显示区域不一样的情况。也有可能是我没看到,但是能否在今后修改的时候注意预留这样的功能。

很好的想法,对于误触一直没有思路,感谢您的意见。

androidcn commented 1 year ago

纠错太难受,暂弃坑

imfuxiao commented 1 year ago

纠错太难受,暂弃坑

抱歉,暂时没有纠错功能,后续会优化。

cactusnix commented 1 year ago

纠错太难受,暂弃坑

可以通过输入法方案本身自行纠错的,建议参考雾凇拼音。

androidcn commented 1 year ago

纠错太难受,暂弃坑

可以通过输入法方案本身自行纠错的,建议参考雾凇拼音。

打字快一点,会错误地输入不正确的字母,而且不是相邻的字母,所以并不是纠错的问题,误触或者漏输入字母很大问题

ssjy1919 commented 1 year ago

纠错太难受,暂弃坑

可以通过输入法方案本身自行纠错的,建议参考雾凇拼音。

打字快一点,会错误地输入不正确的字母,而且不是相邻的字母,所以并不是纠错的问题,误触或者漏输入字母很大问题

部分还是能纠错过来的,比如 纠错 的 jiu ,如果输入成 jui 。这种明显不存在的拼音,雾凇的方法是可以纠错成正确的 jiu 。

androidcn commented 1 year ago

纠错太难受,暂弃坑

可以通过输入法方案本身自行纠错的,建议参考雾凇拼音。

打字快一点,会错误地输入不正确的字母,而且不是相邻的字母,所以并不是纠错的问题,误触或者漏输入字母很大问题

部分还是能纠错过来的,比如 纠错 的 jiu ,如果输入成 jui 。这种明显不存在的拼音,雾凇的方法是可以纠错成正确的 jiu 。

那就是方案的问题?

changzaicl commented 10 months ago

折腾了一下,基本上实现了平时打字的多种错误。在 输入方案中的 拼写设定 中可以设置,把自己爱输错的都做一个转换。以下只是举例:

zhwn → zhen

  - derive/([zcs])hen$/$1hwn/
  # zjxx → zhxx
  - derive/([zcs])h(a|e|i|u|ai|ei|an|ao|en|ou|uo|ua|un|ui|uan|uai|uang|ang|eng|ong)$/$1j$2/
  # ahxx → shxx
  - derive/([s])h(a|e|i|u|ai|ei|an|ao|en|ou|uo|ua|un|ui|uan|uai|uang|ang|eng|ong)$/ah$2/
  # aang → sang
  - derive/([s])(e|i|u|ai|ei|an|ao|en|ou|uo|ua|un|ui|uan|uai|uang|ang|eng|ong)$/a$2/
  # xhi → chi
  - derive/([zc])hi$/xhi/
  # eu → wu
  - derive/([w])(a|u|ai|ei|an|en|ang|eng)$/e$2/
  # ahi → shi
  - derive/([s])hi$/ahi/
  # ziang → xiang
  - derive/([x])iang$/ziang/
  # kuao → kuai
  - derive/([ghks])uai$/$1uao/
  # lii → liu
  - derive/([jlqx])iu$/$1ii/
  # ang|eng|ong → anf|enf|onf
  - derive/([an|en|on])g$/$1f/
  # ang|eng|ong → abg|ebg|obg
  - derive/([a|e|o])ng$/$1bg/
  # ang|eng|ong → abf|ebf|obf
  - derive/([a|e|o])ng$/$1bf/