autohotkeyでchromeアドレスバー入力開始時に自動でIMEをオフにし、毎回半角で打ち始める方法
目的
a+enter → amazon.co.jp
y+enter → youtube.com
のようにchromeのURLオートコンプリート機能を多用するので
常に半角英語から打ち始められるようにしたい
スクリプト
#IfWinActive Google Chrome
^t::
^l::
^n::
^+n::
Send %A_ThisHotkey%
Send {F13} ;任意のIMEオフボタン
return
解説
#IfWinActive Google Chrome
GoogleChromeウィンドウがアクティブの時
^t::
^l::
^n::
^+n::
新規タブ::
アドレスバーフォーカス::
新規ウィンドウ::
新規シークレットウィンドウ::
の4つのChromeショートカット入力をトリガーとして
Send %A_ThisHotkey%
Send {F13}
return
その入力元のショートカットの送信と
IMEオフを送信
(IMEのキー割り当て設定でF13をIMEオフに割り当ててる)
ダメスクリプト
;ダメスクリプト
#IfWinActive Google Chrome
~^t::
~^l::
~^n::
~^+n::
Send {F13}
return
入力元ショートカットも送信するなら上記の様にチルダを使う発想になるが
IMEオフは、アドレスバーにフォーカスが当たった後に、送信されないといけない(IMEがそういう仕組みだから)
それに対してチルダを使うと順序が不安定になり、アドレスバーでIMEオフが効かないことがある(アドレスバーにフォーカスがあたってない状態からのctrl+Lのテストでは毎回効かなかった)
だから、順番を明確化するために、わざわざsendを2回打つ必要がある
メモ
もちろんショートカットではなく、クリックでアドレスバーにフォーカスしたときは、トリガーが発火せずIMEオフは実行されない
おまけ
F7::return
F7で有効化されるカーソルブラウジングが、鬱陶しいのでF7入力自体も無効化させておくと楽
この記事が気に入ったらサポートをしてみませんか?