目次

AutoHotKeyとは

AutoHotKeyは、キーのリマップ、無効化、ホットキーなどを設定することができる。

具体的には、例えばスペースの両隣に位置する「無変換」と「変換」キー。
使い勝手のいい場所にありながら、大した役割がない。

これらのキーを修飾キーにして、様々な動作をホットキーに割り当てることができる。

また、押し間違えて面倒くさいことになるCapsLockのようなキーを無効化する。
或いは、別の動作を割り当ててしまうことで有効活用しようというわけだ。

詳しいことはAutoHotkey Wikiに任せ、基本的に初心者な自分用の覚え書きである。

導入

インストーラ版

  1. AutoHotKeyの公式サイトへ行き、「Download AutoHotkey」というバナーを押してinstallerをDL。
  2. 「Custom Installation」を選ぶ。
    001
  3. WindowsのOSのバージョンに合わせて選択する。特に理由がない場合は日本語の取り扱いが容易なUnicode版を選ぶ。
    64bit版OSの場合は「Unicode 64-bit」推奨。
    002
  4. インストール先の設定とスタートメニューのプログラムグループの作成。
    赤い×をクリックするとグループを作成しない設定にできる。
    003
  5. オプションを設定して「Install」。
    Install script compiler
     記述したスクリプトをexe形式にコンパイルするツールのインストール。
    Enable drag & drop
     スクリプトファイル(.ahk)をドロップすることでスクリプトを起動する。
    Separate taskbar buttons
     ウィンドウを持つスクリプトを別プログラムとして扱うが、タスクバーにピン止めができなくなる。
    004

アーカイブ版

  1. AutoHotKeyの公式サイトへ行き、「Download AutoHotkey .zip」からファイルをDL。
  2. 任意のフォルダに展開して完了。
    AutoHotKeyX00.exeはA32, U32, U64の3種類が同梱されている。
    それぞれANSI版32bit、Unicode版32bit、Unicode版64bitである。
    64bit OS環境ならばU64を使用するのが良いだろう。

スクリプトの実行

スクリプトはテキストエディタを用いて記述する。Win標準のメモ帳などでよい。
適当なテキストファイルを作成し、拡張子を「.ahk」に変更する。
以下の例のように、インストールしたAutoHotKey.exeと同じフォルダ内に置く。

Program Files
└ AutoHotkey
 ├ AutoHotkey.exe
 └ AutoHotkey.ahk

その後、AutoHotKey.exeを起動するとタスクトレイにアイコンが表示される。
インストーラ版であればahkファイルをダブルクリックしても起動できる。
005

また、トレイアイコンを右クリックして、Edit This Scriptからスクリプトの内容を編集できる。
編集後は保存してから、トレイアイコンを右クリックしてReload This Scriptを行う。

スクリプト文法

基本事項

基本的には「キー::コマンド」の形で記述する。

キーの指定は、多くの場合、キー名をそのまま記述する。
日本語キーボード特有のキーはキーコードで指定することになる。
詳細はキーリスト(AutoHotkey Wiki)に。
※Ver.1.1.27.00以降、日本語JISキーボードにおけるキーコードが変更となった。
 従来のvkXXscYYY式表記から、vkXX表記をすることになった。

修飾キーの記述方法
&コンビネーション
(&の前後に半角スペース)
+Shift
^Ctrl
!Alt
#Win
< or >左右にあるキーの指定

コメントアウトは以下のように";"を文頭に付ける。
;------------------------------------
; コメント
;------------------------------------

リマップ

a::b
	; AキーをBキーへと置き換える。
	; 修飾キーなどがあっても置換され、Ctrl + AはCtrl + Bへと置き換わる。

^a::b
a::^b
	; Ctrl + AをBキー / AキーをCtrl + Bへと置き換える。
	; キー修飾は"&"以外が利用でき、置換後にも修飾キーを設定できる。

+a::B
	;Shift + Aを大文字のBへと置き換える。
単純なリマップを行うことはあまりなく、AutoHotKeyも本来はリマップを目的としたものではない。

ホットキーと無効化

基本的な文法は変わらず、コマンドに様々な動作を指定できる。
通常、修飾キーとして使えないキーも"&"を用いて設定できる。
If条件文や関数を組み込むこともできるが、最後にReturnを記述する。
使えるコマンド一覧はこちら(AutoHotKey Wiki)
;------------------------------------
; 無変換を修飾キーとしてカーソル操作
;------------------------------------
vk1D & i:: Send, {Up}
vk1D & k:: Send, {Down}
vk1D & j:: Send, {Left}
vk1D & l:: Send, {Right}

;------------------------------------
; トグルキーの無効化
;------------------------------------
Insert::Return
ScrollLock::Return
NumLock::Return
日本語キーボードのCapsLockやカナロック、半角/全角キーなどは上手く指定できない場合があるので、レジストリからの書き換えを行うことで対処する(こちら)。

なお、先頭のキーとなったキーは単体で機能しなくなる。
1つでもキーに"~"を付与すると無効化されなくなる。
;------------------------------------
; 無変換を修飾キーとしてカーソル操作
;------------------------------------
~vk1D & i:: Send, {Up}
vk1D & k:: Send, {Down}
vk1D & j:: Send, {Left}
vk1D & l:: Send, {Right}