如何将AutoHotkey注释键(;)设置为IME开启触发键?
解决AutoHotkey中用;键触发IME开启的问题
在AutoHotkey中,;默认是注释起始符,直接写; up::会被识别为注释行,无法作为热键触发。你可以通过以下两种方法解决:
方法1:使用按键扫描码定义热键
;键的扫描码是SC037,直接用扫描码作为热键标识,AutoHotkey会正确识别:
; 左Alt键抬起时关闭IME LAlt up:: if (A_PriorHotkey == "*~LAlt") { IME_SET(0) } Return ; 分号键抬起时开启IME SC037 up:: if (A_PriorHotkey == "*~SC037") { IME_SET(1) } Return
方法2:使用$前缀定义热键
在;前添加$前缀,让AutoHotkey将该行识别为热键定义而非注释:
; 左Alt键抬起时关闭IME LAlt up:: if (A_PriorHotkey == "*~LAlt") { IME_SET(0) } Return ; 分号键抬起时开启IME $; up:: if (A_PriorHotkey == "*~;") { IME_SET(1) } Return
补充说明
$前缀的作用是避免热键触发自身的按键发送,这里主要用于让AutoHotkey不把开头的;解析为注释- 扫描码
SC037对应标准键盘上的;键,兼容性较好
内容的提问来源于stack exchange,提问作者user2058374
相关产品推荐
相关产品推荐

