flyinclouds / KBLAutoSwitch

AHK自动切换中英文输入法,输入法,自动切换
733 stars 48 forks source link

能否实现当输入法输入框出现的时候按shift不切换输入法? #13

Open yisqiu opened 2 years ago

yisqiu commented 2 years ago

设置了Shift选择23候选字,但是和[KBLAutoSwitch的Shift快捷键冲突,在选字的时候也会同时切换输入法,能否检测当输入法的输入框出现的时候不切换输入法?谢谢

yisqiu commented 2 years ago

2.4.2版本修改第2525行, Toggle_CN_EN: ; 切换中英文输入法 在下面增加

DetectHiddenWindows,off if (WinExist("ahk_class SoPY_Comp")) { return } DetectHiddenWindows,on

ZhangTianrong commented 1 year ago

虽然楼主的问题可能已经解决了,但是因为我的问题很相关,就不单独开一个 issue 了。第三方输入法可能候选框会有单独的 window class 和 process name 能监测到,但是系统自带的输入法的候选框则似乎没有,有没有可能在系统输入法候选框出现时让 shift 触发不同的功能呢? 我目前是希望跳过中文输入法的英文模式,所以设置了 shift 切换中英文输入法,基本正常,但是平时在中文输入法的中文模式输入了英文后可以按 shift 将已输入的部分按照英文输入同时切换为英文模式,现在则只会切换输入法,输入到一半的文字则会消失(在终端中可能会留下带有引号分割的内容)。如果可以在候选框显示的时候采取不同策略,比如先按 enter 再切换输入法,那么就可以复刻中文输入法切换中英文模式的效果了。