前陣子同事抱怨他習慣mac的caps lock切換
我就找時間寫了一支ahk打包給他
作業系統 windows 11
使用 Autohotkey 2.x版本
實現的邏輯如下:
1. shift + caps lock 切換大小寫鎖定
2.長按 caps lock 切換大小寫鎖定
3.短按 caps lovk 切換語言
4.禁用 shift 切換語言,需保留 shift 組合鍵功能(如打特殊符號)
姑且算是完成了這些規劃的功能
之所以說姑且,是因為我在4的部分卡住了
原本寫的邏輯是按shift 0.3秒就會觸發按住,小於0.3秒則什麼都不做
但這麼做會在使用組合鍵的時候影響使用體驗
例如快速的按 shift + / 輸入 ? 時,就會因為按下的時間不足而失敗
如果調低 0.3秒這個值,就會在短按時觸發切換語言
最後我用了一個笨方法
利用 shift 觸發任意組合鍵就不會觸發切換語言的特性
讓腳本走 shift + space 切換全形,再馬上切回來
達到我要的效果,可這個過程看起來真的有點蠢
可能誘發強迫症使我夜不能寐
※ 考慮到給不會調整設定的人直接使用,暫不考慮修改 windows 內建切換語言的快捷鍵
想請益是否有更好的作法
謝謝Ezhotkey版
/