gdh1995 / vimium-c

A keyboard shortcut browser extension for keyboard-based navigation and tab operations with an advanced omnibar
https://chrome.google.com/webstore/detail/vimium-c/hfjbmagddngcpeloejdejnfgbamkjaeg
Other
3.33k stars 254 forks source link

只有英文模式下插件才生效,默认拼音输入法下不生效。 #1040

Closed iswlt closed 10 months ago

iswlt commented 10 months ago

更新chrome和edge之后 电脑默认的拼音输入法,插件无反应,必须按shift切换到英文模式下才可以继续使用

gdh1995 commented 10 months ago

请问解决了吗?怎么解决的?

以前遇到过这种问题,测试发现确实是 vimium c 的 bug,不过好几年没复现了。

iswlt commented 10 months ago

请问解决了吗?怎么解决的?

以前遇到过这种问题,测试发现确实是 vimium c 的 bug,不过好几年没复现了。

是和输入法冲突了,换了一个输入法就好了。奇怪的是之前用的百度输入法也没问题,后来不知道更新了什么就有这个问题,把百度输入法卸载重装问题还是存在,后来没办法换了兼容性最好的搜狗就好了。就是插件和输入法有冲突,很多游戏也是和输入法不兼容这一点搜狗做得最好

gdh1995 commented 10 months ago

能说说具体的百度输入法、浏览器版本号、出错的网址吗?我回头试试

---原始邮件--- 发件人: @.> 发送时间: 2023年12月5日(周二) 上午9:31 收件人: @.>; 抄送: "Dahan @.**@.>; 主题: Re: [gdh1995/vimium-c] 只有英文模式下插件才生效,默认拼音输入法下不生效。 (Issue #1040)

请问解决了吗?怎么解决的?

以前遇到过这种问题,测试发现确实是 vimium c 的 bug,不过好几年没复现了。

是和输入法冲突了,换了一个输入法就好了。奇怪的是之前用的百度输入法也没问题,后来不知道更新了什么就有这个问题,把百度输入法卸载重装问题还是存在,后来没办法换了兼容性最好的搜狗就好了。就是插件和输入法有冲突,很多游戏也是和输入法不兼容这一点搜狗做得最好

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

iswlt commented 10 months ago

能说说具体的百度输入法、浏览器版本号、出错的网址吗?我回头试试 ---原始邮件--- 发件人: @.> 发送时间: 2023年12月5日(周二) 上午9:31 收件人: @.>; 抄送: "Dahan @.**@.>; 主题: Re: [gdh1995/vimium-c] 只有英文模式下插件才生效,默认拼音输入法下不生效。 (Issue #1040) 请问解决了吗?怎么解决的? 以前遇到过这种问题,测试发现确实是 vimium c 的 bug,不过好几年没复现了。 是和输入法冲突了,换了一个输入法就好了。奇怪的是之前用的百度输入法也没问题,后来不知道更新了什么就有这个问题,把百度输入法卸载重装问题还是存在,后来没办法换了兼容性最好的搜狗就好了。就是插件和输入法有冲突,很多游戏也是和输入法不兼容这一点搜狗做得最好 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

百度输入法版本号忘记了,浏览器就是上个星期的最新版,出错的网址是插件对所有的网页在默认拼音输入法下都无法生效,按shift切换英文之后就可以生效,而且不止这一次,很久以前就发生过这种bug那时候我记得是重装系统才好的

elricli commented 9 months ago

能说说具体的百度输入法、浏览器版本号、出错的网址吗?我回头试试

我这里也能 100% 复现,要切换到英文状态下才能应用上。

系统:Windows 11 Dev Channel 输入法:小狼毫 0.15.0 浏览器:Edge 版本 121.0.2277.4 (正式版本) stable应用,beta频道 (64 位)

gdh1995 commented 9 months ago

谢谢反馈,win11 最新 stable + Edge 120 stable 测试结果如图: image

我感觉是输入法问题,没有正确处理“当前键盘焦点不在文本框”这个状态,强行拦截了 keydown 消息,导致 vimium c 不工作。

证据是,在小狼毫的中文模式下:

  1. 当键盘焦点不在文本框时,先按两次 f 键,都没触发 vimium c 快捷键、输入法也没提示什么
  2. 再用鼠标点击某个文本框,使得键盘焦点挪过去
  3. 然后按第三次 f 键,发现弹出输入法候选框,且其输入字符区显示 3 个 f

如果百度输入法也是类似表现的话,应该也是没正确处理输入状态的锅。

这个问题和扩展的底层实现原理冲突了,无法从浏览器扩展的层面解决,可以尝试让输入法作者看看能不能更好地适配

elricli commented 9 months ago

是的,搜索了下,输入法那边也有相关 issue。https://github.com/rime/weasel/issues/997