那估计是这个问题,我没加绑定这个按键。
是官方默认的,所以你应该也有。你自己试试按 Ctrl-x, @ s i
我直接这样按是可以激活 s-i 这个按键的。但是直接按win+i 不行。看来还是AHK出问题了。 能提供一下你的AHK 源码吗?我看看
你本机上装了AutoHotkey的话 可以自己调试调试
补充:
下面这段代码,
最好是手工执行一下。
因为你的环境中可能有的别package会改写这个。
(setq w32-pass-lwindow-to-system nil)
(setq w32-lwindow-modifier nil)
(w32-unregister-hot-key [s-])
把sleep 改到150 或者 200 我这边 s-i 就正常工作了,s-x,s-x
不工作,下面这句话就是这个意思吧?
(Unfortunately, there is no way to add two modifiers by using C-x @ twice for the same character, because the first one goes to work on the C-x.)
更新:这个无所谓了,不使用这种奇葩组合就是了
这个脚本还得调试,目前只是s-i 生效了,加上其他组合键还是不行。
不过这个方向是对了,官方提供 C-x @ s
应该就是解决windows系统这个问题的。
@goumao 你那边用这个脚本能执行s-J 这个命令吗?J是大写我这里不行。还有跟其他的修饰键组合的不行。比如M-s-i 这样的组合。
Win修饰键不区分大小写吧。。。。Win-j
和Win-J
是一样的。
可以
但是英文模式下是可以区分的。回头我调整一部分按键就能使用了。
我这里关输入法,关AHK,
windows 10/英文输入法/emacs下,
不区分S-j 和 S-J,
也可能因为我用的是虚拟机?
我这边确实是可以的,如下图: 这个是s-j :
这个是s-J:
找到原因了,是AHK的问题,可以通过读SHIFT状态解决的。
找到问题就好解决了,你的这个AHK是用SendMode Input
模式的,我还不怎么熟悉。麻烦帮忙弄一下
另外,我这边加Win+Alt(比如M-s-j)的组合也按不出来。
没有,还是一样
开 smart-input-source-log-mode
,从message buffer把log复制过来我看看呢?
可将该mode的开关绑定到快捷键上,只在出错的前后开mode,可以减少无用的log。
1/2都实现了,
3在mac上没问题,
在windows上, C-x/C-c/C-g/M-x等都解决了,
但是win键作为super有问题,通过AutoHotkey在解决中。
evil用户的话,体验应该是最好的。
毕竟执行啥命令,都先escape到normal模式了。
情况比native用户简单得多。