{"id":6564,"date":"2024-12-27T23:14:59","date_gmt":"2024-12-27T14:14:59","guid":{"rendered":"https:\/\/appbay.org\/?p=6564"},"modified":"2024-12-30T17:20:56","modified_gmt":"2024-12-30T08:20:56","slug":"autohotkey-%e6%9c%80%e6%96%b0%e7%89%88","status":"publish","type":"post","link":"https:\/\/appbay.org\/?p=6564","title":{"rendered":"AutoHotkey \u6700\u65b0\u7248"},"content":{"rendered":"<pre class=\"lang:default decode:true \">ProcessSetPriority \"High\"\r\nSetMouseDelay -1\r\nSendMode \"Input\"\r\nA_MaxHotkeysPerInterval := 200\r\nInstallKeybdHook\r\n#UseHook\r\nCoordMode \"Mouse\", \"Window\"\r\n\r\n;--------------------------------------------------------\r\n\r\n; \"C:\\Program Files (x86)\\Google\\Google Japanese Input\\GoogleIMEJaTool.exe\" -mode=config_dialog\r\n\r\n; Hiragana\uff1eIME\u3092\u6709\u52b9\u5316\r\n; Muhenkan\uff1eIME\u3092\u7121\u52b9\u5316\r\n\r\n; \u30a8\u30f3\u30c8\u30ea\u30fc\u3092\u524a\u9664\r\n; Henkan\r\n; Shift Henkan\r\n; Shift Muhenkan\r\n\r\n;--------------------------------------------------------\r\n\r\n&gt;+4::Send \"{Enter}\"\r\n&gt;+5::Send \"{Tab}\"\r\n\r\n&gt;+7::Send \"{Home}\"\r\n&gt;+8::Send \"{End}\"\r\n\r\n&gt;+q::Send \"{&amp;}\"\r\n&gt;+w::Send \"{'}\"\r\n\r\n&gt;+a::Send \"{#}\"\r\n&gt;+s::Send \"{~}\"\r\n\r\n&gt;+z::Send \"{^}\"\r\n&gt;+x::Send \"{$}\"\r\n\r\n&gt;+u::Send \"{|}\"\r\n&gt;+i::Send \"{\\}\"\r\n&gt;+o::Send \"{@}\"\r\n&gt;+p::Send \"{`%}\"\r\n\r\n&gt;+n::Send \"{(}\"\r\n&gt;+m::Send \"{)}\"\r\n\r\n&gt;+h::Send \"{Left}\"\r\n&gt;+j::Send \"{Down}\"\r\n&gt;+k::Send \"{Up}\"\r\n&gt;+l::Send \"{Right}\"\r\n\r\n&gt;+Backspace::Send \"{Delete}\"\r\n\r\n;--------------------------------------------------------\r\n\r\n~sc07B::\r\n{\r\n  If (A_PriorHotkey = A_ThisHotkey &amp;&amp; 500 &gt; A_TimeSincePriorHotkey)\r\n  {\r\n    Send \"{sc070}\"\r\n  }\r\n}\r\n\r\nsc07B &amp; 1::Send \"{F12}\"\r\nsc07B &amp; 2::Send \"{F2}\"\r\n\r\nsc07B &amp; q::Send \"{Esc}\"\r\nsc07B &amp; w::Send \"{LWin}\"\r\nsc07B &amp; e::Send \"#{r}\"\r\n\r\n;--------------------------------------------------------\r\n\r\n~^c::\r\n{\r\n  If (A_PriorHotkey = A_ThisHotkey &amp;&amp; 500 &gt; A_TimeSincePriorHotkey)\r\n  {\r\n    Send \"{End}+{Home}^c\"\r\n  }\r\n}\r\n\r\n;--------------------------------------------------------\r\n\r\nsc079::Ctrl ; SpreadSheet\u5bfe\u7b56\r\n\r\nsc079 &amp; 3::Send \"^{Home}\" ; Ctrl+Home\r\nsc079 &amp; 4::Send \"^{End}\" ; Ctrl+End\r\n\r\nsc079 &amp; q::Send \"!{Left}\" ; \u623b\u308b\r\nsc079 &amp; w::Send \"!{Right}\" ; \u9032\u3080\r\nsc079 &amp; e::Send \"^w\" ; \u9589\u3058\u308b\r\nsc079 &amp; r::Send \"!+r\" ; Alt+Shift+R \/ TabsToWindow\r\n\r\nsc079 &amp; Ctrl::AltTab\r\nCtrl &amp; sc079::Send \"#{Tab}\"\r\n\r\nsc079 &amp; a::Send \"^+{Tab}\" ; \u524d\u306e\u30bf\u30d6\r\nsc079 &amp; s::Send \"^{Tab}\" ; \u6b21\u306e\u30bf\u30d6\r\nsc079 &amp; d::Send \"^+t\" ; \u518d\u3073\u958b\u304f\r\nsc079 &amp; f::Send \"^{F5}\" ; \u66f4\u65b0\r\nsc079 &amp; g::Send \"!+g\" ; Alt+Shift+G \/ MergeTabs\r\nsc079 &amp; z::Send \"!+z\" ; Alt+Shift+Z \/ CloseRightTabs\r\n\r\nmm := []\r\nLoop MonitorGetCount()\r\n{\r\n  if MonitorGetWorkArea(A_Index,&amp;L,&amp;T,&amp;R,&amp;B)\r\n  {\r\n    mm.Push({L:L,T:T,R:R,B:B})\r\n  }\r\n}\r\n\r\nsc079 &amp; c::\r\n{\r\n  global mm\r\n  static keyDownCount1\r\n  If (A_PriorHotkey = A_ThisHotkey &amp;&amp; 500 &gt; A_TimeSincePriorHotkey)\r\n  {\r\n    keyDownCount1 += 1\r\n    If (keyDownCount1 &gt; MonitorGetCount() - 1)\r\n    {\r\n      keyDownCount1 := 0\r\n    }\r\n  }\r\n  Else\r\n  {\r\n    keyDownCount1 := 0\r\n  }\r\n  x := keyDownCount1 + 1\r\n  this_id := WinGetID(\"A\")\r\n  If (WinGetMinMax(this_id) = 1)\r\n  {\r\n    WinRestore(this_id)\r\n  }\r\n  WinMove((mm[x].L),(mm[x].T),,,this_id) ; \u62e1\u5927\u7e2e\u5c0f\u5bfe\u7b56\r\n  WinMove(,,(mm[x].R - mm[x].L),(mm[x].B - mm[x].T),this_id)\r\n}\r\n\r\nsc079 &amp; v::\r\n{\r\n  static keyDownCount2\r\n\r\n  If (A_PriorHotkey = A_ThisHotkey &amp;&amp; 500 &gt; A_TimeSincePriorHotkey)\r\n  {\r\n    keyDownCount2 += 1\r\n    If (keyDownCount2 &gt; 1)\r\n    {\r\n      keyDownCount2 := 0\r\n    }\r\n  }\r\n  Else\r\n  {\r\n    keyDownCount2 := 0\r\n  }\r\n\r\n  this_id := WinGetID(\"A\")\r\n\r\n  If (keyDownCount2 = 0)\r\n  {\r\n    If (WinGetMinMax(this_id) = 1)\r\n    {\r\n      WinRestore(this_id)\r\n      WinMove(,,1100,750,this_id)\r\n    }\r\n\r\n    WinGetPos(&amp;x,&amp;y,,,this_id)\r\n\r\n    if (x = -SysGet(16) or x = 0)\r\n    {\r\n      WinMove(,,1100,750,this_id)\r\n    }\r\n\r\n    WinGetPos(,,&amp;w,&amp;h,this_id)\r\n    MouseMove(w\/2, 9) ; 150%\r\n  }\r\n  Else If (keyDownCount2 = 1)\r\n  {\r\n    WinGetPos(,,&amp;w,&amp;h,this_id)\r\n    MouseMove(w-5, h-5)\r\n  }\r\n}\r\n\r\n;--------------------------------------------------------\r\n\r\nsc079 &amp; WheelUp::Send \"{PgUp}\"\r\nsc079 &amp; WheelDown::Send \"{PgDn}\"\r\n\r\n+WheelUp::WheelLeft\r\n+WheelDown::WheelRight\r\n\r\nMButton::\r\n{\r\n  MouseGetPos(&amp;mx,&amp;my,&amp;id)\r\n  if InStr(WinGetClass(id), \"Chrome\")\r\n  {\r\n    MouseClick \"R\"\r\n  }\r\n  else\r\n  {\r\n    MouseClick \"M\"\r\n  }\r\n}\r\n\r\nRButton::\r\n{\r\n  MouseGetPos(&amp;mx,&amp;my,&amp;id)\r\n  if InStr(WinGetClass(id), \"Chrome\")\r\n  {\r\n    MouseClick \"M\"\r\n  }\r\n  else\r\n  {\r\n    MouseClick \"R\"\r\n  }\r\n}\r\n\r\n;--------------------------------------------------------\r\n\r\n#HotIf WinActive(\"ahk_exe chrome.exe\")\r\n\r\n+Space::\r\n{\r\n  this_id := WinGetID(\"A\")\r\n  imestate := DllCall(\"user32.dll\\SendMessageW\", \"Ptr\", DllCall(\"imm32.dll\\ImmGetDefaultIMEWnd\", \"Ptr\", this_id), \"Ptr\", 0x0283, \"Ptr\", 0x0005, \"Ptr\", 0)\r\n\r\n  if (imestate = 1)\r\n  { \r\n    Send \"{sc07B}\"\r\n  }\r\n  Send \"+{Space}\"\r\n}\r\n\r\n;--------------------------------------------------------\r\n\r\n#HotIf WinActive(\"ahk_exe excel.exe\")\r\n\r\nsc079 &amp; a::Send \"^{PgUp}\" ; \u524d\u306e\u30bf\u30d6\r\nsc079 &amp; s::Send \"^{PgDn}\" ; \u6b21\u306e\u30bf\u30d6\r\n\r\nsc079 &amp; f::Send \"^+{L}\" ; \u30aa\u30fc\u30c8\u30d5\u30a3\u30eb\u30bf\r\n\r\n+Space::\r\n{\r\n  Send \"{sc07B}\"\r\n  Send \"+{Space}\"\r\n}\r\n\r\nMButton::\r\n{\r\n  MouseClick \"L\"\r\n  Send \"{F4}\"\r\n}\r\n\r\n;--------------------------------------------------------\r\n\r\n#HotIf WinActive(\"ahk_exe mpc-be64.exe\")\r\n\r\nsc079 &amp; a::Send \"^{PgUp}\" ; \u524d\u306e\u30bf\u30d6\r\nsc079 &amp; s::Send \"^{PgDn}\" ; \u6b21\u306e\u30bf\u30d6\r\n\r\nw::Send \"{Numpad1 10}\"\r\ne::Send \"^{Numpad2 10}\"\r\nr::Send \"{Numpad9 10}\"\r\n\r\ns::Send \"^{Numpad6 10}\"\r\nd::Send \"^{Numpad8 10}\"\r\nf::Send \"^{Numpad4 10}\"\r\n\r\nc::Send \"{Numpad5}\"\r\nv::Send \"!{Numpad3}\"\r\n\r\n#HotIf<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ProcessSetPriority &#8220;High&#8221; SetMouseDelay -1 SendMode &#8220;Input&#8221; A_MaxHotkeysPerInterval := 200 InstallKeybdHook #U &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/appbay.org\/?p=6564\" class=\"more-link\"><span class=\"screen-reader-text\">&#8220;AutoHotkey \u6700\u65b0\u7248&#8221; \u306e<\/span>\u7d9a\u304d\u3092\u8aad\u3080<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[104],"class_list":["post-6564","post","type-post","status-publish","format-standard","hentry","category-1","tag-autohotkey"],"_links":{"self":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/6564","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6564"}],"version-history":[{"count":9,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/6564\/revisions"}],"predecessor-version":[{"id":6573,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/6564\/revisions\/6573"}],"wp:attachment":[{"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6564"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6564"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6564"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}