こういうホットキーがあればいいのに!を実現できるソフト

AutoHotkey のアイコン

AutoHotkey

  • 海外
  • 日本語✕

ダウンロード

対応OS:
Windows Vista/7/8/8.1/10
バージョン:
1.1.36.01 / 2.0-rc.2(2022/12/02)
価格:
無料

Windows のキーの組み合わせに、「何かのキー」を割り当てられるソフトです。
いつも使っているキーボード操作をより便利にしたい、マウスをなるべく使わずにキーボードで完結したい、といった場合に役立ちます。
動作の命令を記述する ” スクリプト ”を作成することで、本ソフトはスクリプトを読み込んで実行します。
スクリプトを作成することで、次のようなキーの置き換えや動作を設定、実行できるようになります。

  • 矢印キーを置き換えてホームポジションの近くに配置
  • あまり有効に利用されていないような無変換キーや変換キーを組み合わせた有効活用法
  • ウィンドウの最大化・最小化のような単純な操作
  • 条件分岐やループなどを使った、Windows 上で複雑な動作(より専門的な記述が必要となります)
提供元:

AutoHotkey #1: Install and Hello World(英語)

AutoHotkey の使い方

ダウンロード

  1. 提供元サイトのダウンロードページへアクセスし、「Download AutoHotkey v1.1」ボタンをクリックしてダウンロードします。
    USB メモリー等で持ち運べるポータブル版を利用したい場合は、「Download AutoHotkey v1.1 .zip」リンクをクリックしてダウンロードします。
    ※ ベータ版をダウンロードする場合は「Download AutoHotkey v2.0-rc」ボタンをクリックしてダウンロードします。
  2. ダウンロードしたセットアップファイル(AutHotkey_1.1.36.01_setup.exe)からインストールします。
  3. 「Please select the type of installation you wish to perform.(実行するインストールタイプを選択してください)」画面が表示されます。
    「Express Installation」をクリックします。
  4. 「Installation complete.(インストール完了)」画面が表示されます。
    • View Changes & New Features
      本ソフトのヘルプファイルの「Changes & New Features(変更と新機能)」画面が表示されます。
    • View the Tutorial
      本ソフトのヘルプファイルの「Tutorial (quick start)(チュートリアル(クイックスタート))」画面が表示されます。
    • Run AutoHotkey
      本ソフトのヘルプファイルの「Welcome」画面が表示されます。
    • Exit
      セットアップ(インストール)を終了します。
    ※ 上3つの選択しではインストール完了画面が閉じられることはないため、最終的に一番下の選択肢である「Exit」をクリックすることになります。

使い方

設定サンプル

メッセージボックスを表示する
  1. メモ帳を開き、次のテキストを記入します。
    MsgBox, Hello AutoHotkey world
  2. 次のように指定して保存します。
    • ファイル名
      script.ahk
    • ファイルの種類
      すべてのファイル (*.*)
    • 文字コード
      UTF-8
  3. 保存した script.ahk をダブルクリックして実行すると、「Hello AutoHotkey world」ウィンドウが表示されます。
    「Hello AutoHotkey world」ウィンドウの表示

    「Hello AutoHotkey world」ウィンドウの表示


「Alt」+「4」キーでアプリケーションを終了する
アプリケーションの終了ホットキーとして Alt + F4 キーがあります。
Alt + F4 キーだと F4 キーが少し遠いので、4 キーで代用してしまおう、というものです。
  1. メモ帳を開き、次のテキストを記入します。
    !4::Send,!{F4}
    return
  2. 次のように指定して保存します。
    • ファイル名
      QuitAlt4.ahk
    • ファイルの種類
      すべてのファイル (*.*)
    • 文字コード
      UTF-8
  3. 保存した QuitAlt4.ahk をダブルクリックして実行すると、タスクトレイicon アイコンが表示されます。
    この状態が先ほど設定したスクリプトが有効な状態です。
    試しにいま開いているメモ帳をクリックして(アクティブにして)、Alt + 4 キーを押すとメモ帳が閉じられることを確認できます。
  4. 本スクリプトを終了するには、タスクトレイの icon アイコンの右クリックメニュー「Exit」から終了できます。

「無変換」+「J」キーで矢印キー左に動かす
矢印キーはキーボードの少し離れた位置にあるので、無変換キーを活用してなるべく手を動かさずに矢印キーを押すということを目的としたキーバインド(複数キーの組み合わせ)です。
  1. メモ帳を開き、次のテキストを記入します。
    vk1D & j::Send, {left}
  2. 次のように指定して保存します。
    • ファイル名
      ArrowLeft.ahk
    • ファイルの種類
      すべてのファイル (*.*)
    • 文字コード
      UTF-8
  3. 保存した ArrowLeft.ahk をダブルクリックして実行すると、タスクトレイicon アイコンが表示されます。
    この状態が先ほど設定したスクリプトが有効な状態です。
    試しにいま開いているメモ帳をクリックして(アクティブにして)、無変換 + J キーを押すとメモ帳内で点滅しているキャレットが左に移動することを確認できます。
  4. 本スクリプトを終了するには、タスクトレイの icon アイコンの右クリックメニュー「Exit」から終了できます。

実装サンプル - 複数設定する
複数のスクリプトを組み合わせて、実際に利用できる設定のサンプルです。
  1. メモ帳を開き、次のテキストを記入します。
    ; 無変換 + J キー ⇒ キー
    ; 無変換 + L キー ⇒ キー
    ; 無変換 + I キー ⇒ キー
    ; 無変換 + K キー ⇒ キー

    vk1D & j::Send, {Blind}{Left}
    vk1D & l::Send, {Blind}{Right}
    vk1D & i::Send, {Blind}{Up}
    vk1D & k::Send, {Blind}{Down}

    ; 無変換 + , キー ⇒ Home キー
    ; 無変換 + . キー ⇒ End キー
    vk1D & vkBC::Send, {Blind}{Home}
    vk1D & vkBE::Send, {Blind}{End}

    ; 無変換 + U キー ⇒ PageUp キー
    ; 無変換 + O キー ⇒ PageDown キー
    vk1D & u::Send, {Blind}{PgUp}
    vk1D & o::Send, {Blind}{PgDn}

    ; 無変換 + 1 キー ⇒ F1 キー
    ; 無変換 + 2 キー ⇒ F2 キー
    ; 無変換 + 3 キー ⇒ F3 キー
    ; 無変換 + 4 キー ⇒ F4 キー
    ; 無変換 + 5 キー ⇒ F5 キー
    ; 無変換 + 6 キー ⇒ F6 キー
    ; 無変換 + 7 キー ⇒ F7 キー
    ; 無変換 + 8 キー ⇒ F8 キー
    ; 無変換 + 9 キー ⇒ F9 キー
    ; 無変換 + 0 キー ⇒ F10 キー
    vk1D & 1::Send, {Blind}{F1}
    vk1D & 2::Send, {Blind}{F2}
    vk1D & 3::Send, {Blind}{F3}
    vk1D & 4::Send, {Blind}{F4}
    vk1D & 5::Send, {Blind}{F5}
    vk1D & 6::Send, {Blind}{F6}
    vk1D & 7::Send, {Blind}{F7}
    vk1D & 8::Send, {Blind}{F8}
    vk1D & 9::Send, {Blind}{F9}
    vk1D & 0::Send, {Blind}{F10}
    ※ 無変換キーとの組み合わせで別のキーを実行できるようにするスクリプトです。
    ※ {Blind} を追加すると他のキーとの組み合わせの動作も可能となります。例えばブラウザーでページを開いているときに Alt + 無変換 + J キーを押して前のページに移動可能となります。
    ※ ; の行はわかりやすいように補足したコメント行なので削除したり、自分なりのコメントに書き換えても動作は変わりません。
    実装サンプル

    実装サンプル

  2. 次のように指定して保存します。
    • ファイル名
      AutoHotkey.ahk
    • ファイルの種類
      すべてのファイル (*.*)
    • 文字コード
      UTF-8
  3. 保存した AutoHotkey.ahk をダブルクリックして実行すると、タスクトレイicon アイコンが表示されます。
    この状態が先ほど設定したスクリプトが有効な状態です。
  4. 本スクリプトを終了するには、タスクトレイの icon アイコンの右クリックメニュー「Exit」から終了できます。

キーリスト

制御キー
※ v1.1.27.00 よりキーが変更となり、例えば無変換キーは vk1Dsc07B ⇒ vk1D に変更となり、最初の vk から始まる4文字のみが有効となり、sc 以下は不要となりました。

修飾キー

修飾キーの使い方
修飾キーは、次のように記述します。
#z::Run www.autohotkey.com
Windows + Z キーを押すと、ブラウザーで www.autohotkey.com を開きます。

修飾キーを複数組み合わせる場合は、次のように記述します。
^!n::
IfWinExist 無題 - メモ帳
WinActivate
else
Run Notepad
Ctrl + Alt + N キーを押すと、「無題 - メモ帳」というタイトルのウィンドウがあればアクティブにし、なければメモ帳を起動します。

更新履歴

※ Google 翻訳で日本語にしています。
Version 1.1.36.01
(2022/12/02)
  • Switch 数値比較の未定義の動作を修正しました。

Version 1.1.36.00
(2022/12/01)
  • VerCompare() を追加しました。
  • DBGp によるブレークポイント例外のサポートが追加されました。
  • 拡張 #範囲チェック (< <= > >= =) の演算子と追加のキーワードをサポートする必要があります: UnicodeANSI32 ビット64 ビット
  • AutoHotkey.exe のバージョン情報に CompanyName を追加しました。これにより、プログラムが [プログラムから開く] に表示されない Windows 10 のバグを回避できる可能性があります。
  • スイッチまたはケース式が "00" などの単独のリテラル文字列である場合に数値以外の比較を実行するようにスイッチ/ケースを変更し、以前は文書化されていなかった比較動作を文書化しました。
  • IDispatch を介した整数プロパティ名の不一致を修正しました。
  • 負の値は常に非数値と見なされます。
    ・先頭のゼロなど、書式設定を失う正の値。
    ・ComObjConnect を使用した後、DBGp を介して ComObject を検査するときに発生する可能性があったクラッシュを修正しました。
  • 空白のエンコーディングを省略されたものとして扱うように FileAppend を修正しました。
  • 数値のビルド情報を無視するようにバージョン比較を修正しました。例えば1.1.35.00+1+abcdef (1 は 1.1.35.00 以降のコミット数)。
  • FileCreateDir X\Y\ (末尾のスラッシュ付き) が X の作成に失敗する問題を修正しました [v1.1.35.00 で壊れました]。

Version 1.1.35.00
(2022/10/30)
  • GroupActivate と GroupClose がより直感的に動作するように変更されました。
    ・個々のウィンドウの仕様ではなく、ウィンドウ グループ全体に対してウィンドウを評価します。
    ・GroupClose が間接的に別の一致するウィンドウをアクティブにする場合、同じウィンドウ仕様と一致しなくてもアクティブのままにします。
  • jeeswg による貢献 (プルリクエスト #186、#235、#240、#249、#273、#274)
    ・演算子 !==、>>> および >>>= を v2 からバックポートしました。
    ・v2 から A_InitialWorkingDir をバックポートしました。
    ・v2 から File.Handle をバックポートしました。
    ・v2 から A_Clipboard をバックポートしました。
    ・v2 から IsSet() をバックポートしました。
  • バグの修正
    ・#Warn Unreachable メッセージのスペル ミスを修正しました。
    ・「..」または「/」を含むパスの FileCreateDir 処理を修正しました。
    ・FileSelectFile の RootDir\Filename パラメーターに関するいくつかの問題を修正しました。
     ・RootDir が正しくフォーマットされていない CLSID の場合、ファイル名が使用されていません。
     ・GetShortPathName が失敗したときの長いパスに対する未定義の動作 (長いパスの認識が無効になっている場合や、既存のファイルではない既定のファイル名がある場合など)。
    ・ファイルが見つからない場合に A_LastError を設定するように FileSetTime を修正しました。
    ・115,292,150,461+ 秒を追加すると、EnvAdd/+= の精度が失われる問題を修正しました。
    ・以下が true の場合に `o{Enter} シーケンスなどで、Enter キーが押されたときに、抑制されたデッド キーを再挿入するキーボード フックを修正しました。
     ・:?*:ò:: のため、別のスクリプトで「ò」が抑制されています。
     ・現在のプロセスにもアクティブなホットストリングがあります。
     ・他のプロセスはそのフックを最後にインストールしました。
    ・ターゲットが 32 ビットの場合、ControlGet List の「選択済み」オプションが x64 で出力を繰り返す問題を修正しました。
    ・ControlGet List の「Count」オプションのスタック破損が修正されました。

ユーザーレビュー

  • コメント

    > 「無変換」+「J」キーで矢印キー左に動かす

    username
    username
    投稿数: 1件
    Windows 11

    > 「無変換」+「J」キーで矢印キー左に動かす
    >
    > 試しにいま開いているメモ帳をクリックして(アクティブにして)、
    > 無変換 + J キーを押すとメモ帳が閉じられることを確認できます。

    「カーソルが左に動く」ではないでしょうか?

    4人が参考になったと回答しています。
    このレビューは参考になりましたか?
  • 5

    【追記あり】これだけ自由度の高いカスタマイズソフトはなかなかないでしょう(少な…

    46
    46
    投稿数: 11件
    Windows 10

    これだけ自由度の高いカスタマイズソフトはなかなかないでしょう(少なくとも私は知りません)
    altやctrl等の一般的な修飾キーだけでなく、普通のキーも修飾キーのように使えてしまうのが特にいいです
    三つ以上のキーを同時押しのトリガーにしようとするのが面倒なのが惜しいですが、それを差し引いても便利ですね
    ちなみに、私はAutoHotkeyフォルダ以下にmyscriptというフォルダを作りそこに他スプリプトとmain.ahkというファイルを配置し、main.ahkに
    #include スクリプト名.ahk
    とファイル名を列挙することによって、タスクバーに無駄にアイコンが出まくることがないようにしています
    (一つのファイルに全部まとめるという手もあると思うんですが、一覧性が悪くなってちょっと嫌だったんですよね。なにより、機能を確認するためだけなのに謎の文字列を見なければいけないのは精神衛生上よくない...)
    起動は上の階層にmain.ahkのショートカットを配置して、そこから行っています
    ありふれたテクではありますがご参考まで


    今更で申し訳ないのですが、windowsのファイル名のエンコーディングがsjisである関係か日本語の扱いに問題があるからかわかりませんが、日本語ファイル名のものを扱う場合「main.ahk」に関してはsjisで書かないとincludeできないようです
    それと、三つ以上のキーを使う方法を通常のトリガーキーと同じキーで使う場合にはelse文を使う必要があるため、機能ごとに分けることが難しいようです

    5人が参考になったと回答しています。
    このレビューは参考になりましたか?
  • 5

    考え方次第で無限大の可能性を秘めてるソフトです

    ナポリタン寿司
    ナポリタン寿司
    投稿数: 36件
    Windows 10

    考え方次第で無限大の可能性を秘めてるソフトです。

    初心者にはかなり難しいですが、まずはあの動作をやってみたい!と考えることが重要です。日々のパソコン操作でこのキーは左手が届く範囲に欲しいな~みたいな不満が必ずあるかと思います。

    例えば、モニター間の移動のショートカットキー!通常、Shift+Windows+矢印です。これめちゃくちゃ押しにくいです!

    そんな、些細な不満をAHK を使えば一気に解決できます。
    とあれやこれや言っても意味ないと思うので、実際に僕が使ってるコード貼っておきまーす。少しでも参考になればな~と思います。

    ;----Insertキーにスリープ割り当て-----
    ^Insert::Run, "D:\デスクトップ\ショートカット\スリープ.lnk"

    ;----Windows+VでClibor呼び出し-----
    #V::Send, ^9

    ;----ウィジェット画面呼び出し-----
    #w::send, ^l


    ;----Ctrl+マウスホイールに別の機能を割り当て-----
    #IfWinNotActive ahk_exe vivaldi.exe
    ^WheelUp:: ;マウスホイール上回転
    Run, "D:\デスクトップ\ショートカット\アラーム & クロック.lnk"
    ^WheelDown:: ;マウスホイール下回転
    Run, "%systemroot%\explorer.exe"
    #If

    ;----かな変換にモニター間移動-----
    sc070::Send, {RWin Down}{Shift Down}{left}{Shift Up}{RWin Up}

    1人が参考になったと回答しています。
    このレビューは参考になりましたか?

AutoHotkey に投稿されたすべての評価・評判・レビューを見る(全 4 件)