Windows下Caplock键切换中英文

标签: 疑难杂症

问题

在平时学习工作中会出现一个键盘在Windows下和Mac下来回切换的场景 在中英文切换的时候尤其觉得两个系统的按键会搅脑袋

于是把Windows下的CapsLock键调整为和Mac一致,即:

短按:中英文切换

长按:大小写切换

解决

使用AutoHotKey完成上述操作

Capslock.ahk

;管理员运行
if not A_IsAdmin
{
   Run *RunAs "%A_ScriptFullPath%" 
   ExitApp
}

;无环境变量
#NoEnv

SetCapsLockState, AlwaysOff  
SetStoreCapslockMode,Off

;高进程
Process Priority,,High

CapsLock::
KeyWait, CapsLock, T0.3
If ErrorLevel {
    Send, {Capslock}
    KeyWait, CapsLock
} else {
    DllCall("SendMessage", UInt, WinActive("A"), UInt, 80, UInt, 1, UInt, DllCall("ActivateKeyboardLayout", UInt, 1, UInt, 256))
}
Return

效果

注意短按的实现本质是切换到下一个输入法 因为我的输入法只有两个所以表现是中英文切换

原文链接:加载失败,请重新获取