故事一
使用鍵盤,需要兩只手;
使用滑鼠,還需要一只手;
總共三只手,
而你,只有兩只手
所以,你需要第三只手(bushi)
所以,通常是左手使用鍵盤,而右手控制滑鼠,
但Enter、BackSpace等一些常見按鍵經常迫使你使用右手去按,
故事二
敲代碼時,你經常需要向前/向后移動文本
偶爾還要選定它們
這迫使你使用右手
移動大老遠去按上下左右方向鍵移動文本
那你能怎么辦呢?
使用AutoHotkey
腳本說明
原先的大寫鍵,變為了快速按兩下才能打開/關閉
相應的,大寫+某個按鍵的組合可以起到不同的效果
如果要輸入大寫字母,建議更多的使用 Shift+字母 輸入
常用的幾個按鍵(這么寫只是利于理解,并不完全正確,請細看代碼):
大寫+F 回車
大寫+C Backspace
大寫+I Backspace
大寫+U/O 向左/向右選擇一個詞語
大寫+H/J/K/L 向左/下/上/右移動(這樣是為了和Vim相對應)
大寫+P/分號 HOME/END
以上三個,如果帶上左Alt,即 大寫+左Alt+按鍵 還可以選定文本
這是我目前使用的ahk腳本
先干正事,上代碼
;雙擊大寫Caps Lock(切換大小寫)
*capslock::
if Pressescount > 0
{
Pressescount += 1
return
}
Pressescount = 1
SetTimer,caps, 200
return
caps:
SetTimer,caps, off
if Pressescount = 2
{
SetCapslockState,% GetKeyState("Capslock", "T") ? "off" : "on"
}
Pressescount = 0
return
;大寫 + 鍵盤HJKL移動上下左右(加Alt可以選定)
CapsLock & h::
if GetKeyState("LAlt", "P")
SendInput, +{Left}
else
SendInput, {Left}
Return
CapsLock & l::
if GetKeyState("LAlt", "P")
SendInput, +{right}
else
SendInput, {right}
Return
CapsLock & k::
if GetKeyState("LAlt", "P")
SendInput, +{up}
else
SendInput, {up}
Return
CapsLock & j::
if GetKeyState("LAlt", "P")
SendInput, +{down}
else
SendInput, {down}
Return
;大寫 + 鍵盤UO移動單詞(加Alt可以選定)
CapsLock & u::
if GetKeyState("LAlt", "P")
SendInput, +^{Left}
else
SendInput, ^{Left}
Return
CapsLock & o::
if GetKeyState("LAlt", "P")
SendInput, +^{Right}
else
SendInput, ^{Right}
Return
;大寫+p;回到頭尾
CapsLock & p::SendInput, {Home}
CapsLock & `;::SendInput, {End}
;Alt+p;選定頭尾
LAlt & p::SendInput,+{Home}
LAlt & `;::SendInput,+{End}
;大寫 + 鍵盤I退格
CapsLock & i::SendInput, {Backspace}
;[對于按鍵不足的分體鍵盤的額外按鍵補充]
;大寫 + N(}) / M({) / ,([) / .(])
CapsLock & n::SendInput, {}}
CapsLock & m::SendInput, {{}
CapsLock & ,::SendInput, [
CapsLock & .::SendInput, ]
;[對于按鍵不足的分體鍵盤的額外按鍵補充]
;大寫 + /(符號~) / "(符號`)
CapsLock & /::SendInput, ~
CapsLock & '::SendInput, ``
;大寫 + WASD控制滑鼠移動[+左Alt(鍵盤上下左右)]
CapsLock & a::
if GetKeyState("LAlt", "P")
SendInput, {left}
else
MouseMove, -21,0,0,R
Return
CapsLock & d::
if GetKeyState("LAlt", "P")
SendInput, {right}
else
MouseMove, 21,0,0,R
Return
CapsLock & s::
if GetKeyState("LAlt", "P")
SendInput, {down}
else
MouseMove, 0,21,0,R
Return
CapsLock & w::
if GetKeyState("LAlt", "P")
SendInput, {up}
else
MouseMove, 0,-21,0,R
Return
;大寫 + 滑鼠左(e)、右鍵(q)
CapsLock & e::LButton
CapsLock & q::RButton
;左Alt+ 2關閉當前視窗(alt+F4)
LAlt & 2::SendInput, !{F4}
;大寫 + 空格 打開GOOGLE(如果你不能訪問,可以把它換成Bing或者別的什么)
CapsLock & space::Run https://www.google.com/
;大寫 + f 回車Enter
CapsLock & f::SendInput, {Enter}
;大寫 + 標簽順序(g)逆序(r)切換(常用于瀏覽器標簽頁,或者是QQ的聊天會話切換)
CapsLock & g::^Tab
CapsLock & r::^+Tab
;大寫 + Z(idea中下移代碼) / X(idea中上移代碼)
;這里的idea是一種JAVA的IDE
CapsLock & z::SendInput, ^+{down}
CapsLock & x::SendInput, ^+{up}
;大寫 + C(Backspace)
CapsLock & c::SendInput,{Backspace}
;大寫 + B(idea中去before的跳轉點) / V(idea中去after的跳轉點)
CapsLock & v::SendInput,^!{left}
CapsLock & b::SendInput,^!{right}
;F12(大寫+t)和F11(大寫+alt+t)(瀏覽器除錯代碼時,很常用)
CapsLock & t::
if GetKeyState("LAlt", "P")
SendInput, {F11}
else
SendInput, {F12}
Return
;F1(大寫+1)(對特殊鍵盤使用,如果你不是特殊鍵盤,可以把注釋換成它)
CapsLock & 1::SendInput, {F1}
;快速注釋(大寫+4)
CapsLock & 4::SendInput, ^/
;快速選擇 y(大寫+2) / n(大寫+3)(YN字母經常使用,但都要用右手去按,移到左手會方便很多)
CapsLock & 2::y
CapsLock & 3::n
這套組合鍵我調整了也有兩三年了,應該不需要太多調整了
注:
如果你不習慣Vim的上下左右
可以使用IKJL作為上下左右,H作為洗掉
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/548629.html
標籤:其他
上一篇:Delphi 論文閱讀 Delphi: A Cryptographic Inference Service for Neural Networks
下一篇:【鍵盤】對于鍵盤的一些感想/吐槽
