自分用のメモ
/* どんな状況でも絶対的に ctrl + h が BS */
^h::send, {BS}
/* セミコロンとのコンビネーションでカーソル */
`; & d::send,{Blind}{Down}
`; & e::send,{Blind}{Up}
`; & s::send,{Blind}{Left}
`; & f::send,{Blind}{Right}
`; & a::send,{Blind}{Home}
`; & g::send,{Blind}{End}
`; & v::send,+{Down}
/* ThinkPad keyboard では多用しないのに結構いいポジションにあるので移動させる */
Insert::send,{PrintScreen}
/* ウィンドウ切り替え */
>!q::send,#4
>!w::send,#5
>!e::send,#6
>!a::send,#7
>!s::send,#8
>!d::send,#9
/* 右クリック発動 */
PrintScreen::send,+{F10}
/*
#IF WinActive("ahk_class Chrome_WidgetWin_1")
>!q::send,+^{Tab}
>!w::send,^1
>!e::send,^2
>!r::send,^3
>!t::send,^{Tab}
#IF
*/
/* IME自体の切り替えショートカットになっているので無効化する */
#Space::return
/* IME のオンオフ用 */
`; & r::^+F12
;`;::`;
`; & i::!^e
/* ctrl + p で esc とする(近いから) */
^p::send,{Escape}
^m::send,{Enter}
^`;::send,{Enter}
`;::
WinGet, vcurrentwindow, ID, A
vimestate := DllCall("user32.dll\SendMessageA", "UInt", DllCall("imm32.dll\ImmGetDefaultIMEWnd", "Uint", vcurrentwindow), "UInt", 0x0283, "Int", 0x0005, "Int", 0)
If vimestate = 0
send,{`;}
Else
{
send,{`;}{Enter}
}
return
sc033::
WinGet, vcurrentwindow, ID, A
vimestate := DllCall("user32.dll\SendMessageA", "UInt", DllCall("imm32.dll\ImmGetDefaultIMEWnd", "Uint", vcurrentwindow), "UInt", 0x0283, "Int", 0x0005, "Int", 0)
If vimestate = 0
send,{`,}
Else
{
send,{`,}{Enter}
}
return
+`;::+sc027
#q::send,#4
#w::send,#5
#e::send,#6
#a::send,#7
#s::send,#8
#d::send,#9
Numpad7::send,#1
Numpad8::send,#2
Numpad9::send,#3
Numpad4::send,#4
Numpad5::send,#5
Numpad6::send,#6