コンテンツにスキップ
Wikipedia

AutoHotkey

出典: フリー百科事典『ウィキペディア(Wikipedia)』
AutoHotkey
開発元 AutoHotkey Foundation
最新版
2.0.19[1]  ウィキデータを編集 / 2025年1月25日 (9か月前)
リポジトリ ウィキデータを編集
プログラミング
言語
C++
対応OS Windows 2000以降
種別 スクリプト言語 自動化 GUI ユーティリティソフトウェア
ライセンス GPLv2
公式サイト www.autohotkey.com  ウィキデータを編集
テンプレートを表示

AutoHotkeyとは、Microsoft Windows上で動作するユーティリティソフトウェアスクリプト言語である。

概要

[編集 ]

AutoHotkey独自のプログラミング言語(マクロ言語)を用いてコンピュータを制御することができる。「AutoHotkey」という名称から想像できるように、当初はキーボードのホットキー(ショートカットキー)をカスタマイズすることを目的として開発されたが、ユーザーの要望を取り入れる形で開発が進むにつれスクリプト言語と分類されるほどに膨大な機能が実装され、コミュニティも大きなものとなっている。

AutoHotkey v2になってから構文が一新されているため、v1とv2の構文が混在すると部分的に動作しなくなる。[2]

GPLv2でライセンスされたオープンソース自由ソフトウェアである。

AutoHotkey自体のソースコードはC++で書かれており、Microsoft Visual Studioでコンパイルすることができる。

特徴

[編集 ]

変数、関数、ポインタ、再帰、APIコール等一般的なプログラミング言語と同等の機能が用意されており、高度な制御が可能。

基本的な制御は次のようなものがある。

  • プログラムの起動、終了
  • ウィンドウ表示の制御
  • ファイルの開閉
  • キー入力の送信
  • マウスのクリック、マウスカーソルの移動
  • タイマーによる一定間隔での処理

これらを組み合わせて、次のような処理を行わせることができる。

GUIを自作しオリジナルのウィンドウを作ることも可能。

スタンドアロン実行

[編集 ]

通常、Autohotkey言語で書かれたスクリプトを実行するには、コンピュータにAutohotkeyがインストールされている必要がある。しかし、付属のコンバートソフトウェアでスクリプトを実行ファイル化することでスクリプトをスタンドアロンで実行することができる。

スクリプト例

[編集 ]

v2

以下のスクリプトでは、CtrlキーとAltキーが入れ替わる。

LCtrl::Alt
LAlt::Ctrl

以下のスクリプトでは、Googleで特定の語や文字列を検索することができる。任意のアプリケーションで文字列をクリップボードにコピーした後に Win+g を押すと、指定されている既定のウェブブラウザが起動し、コピーした文字列で検索が行われる。この操作を行うキーは、スクリプトを変更すれば変更可能。

#g:: { ; Win+g
 Run "https://www.google.com/search?q=" A_Clipboard
}

「afaik」と入力すると自動的に「as far as I know」に置き換わるホットストリングの作成に必要なスクリプトの例を以下に示す。

::afaik::as far as I know

AutoHotkeyの簡単な機能の例を以下に示す。あるURLがクリップボードにコピーされているときに Alt+x を押すと、URLにかっこが含まれているかを確認し、あれば代替文字に置き換え、その後クリップボードからURLを貼り付ける。

!x:: { ; Alt+x
 URLReplace()
 Send "^v" ; Ctrl+v
}
URLReplace() {
 A_Clipboard := StrReplace(A_Clipboard, "(", "%28")
 A_Clipboard := StrReplace(A_Clipboard, ")", "%29")
}
v1 (旧バージョン)

以下のスクリプトでは、CtrlキーとAltキーが入れ替わる。

LCtrl::Alt
LAlt::Ctrl

以下のスクリプトでは、Googleで特定の語や文字列を検索することができる。任意のアプリケーションで文字列をクリップボードにコピーした後に Win+g を押すと、指定されている既定のウェブブラウザが起動し、コピーした文字列で検索が行われる。この操作を行うキーは、スクリプトを変更すれば変更可能。

#g:: ; Win+g
 Run https://www.google.com/search?q=%clipboard%
Return

「afaik」と入力すると自動的に「as far as I know」に置き換わるホットストリングの作成に必要なスクリプトの例を以下に示す。

::afaik::as far as I know

AutoHotkeyの簡単な機能の例を以下に示す。あるURLがクリップボードにコピーされているときに Alt+x を押すと、URLにかっこが含まれているかを確認し、あれば代替文字に置き換え、その後クリップボードからURLを貼り付ける。

!x:: ; Alt+x
 URLReplace()
 Send ^v ; Ctrl+v
Return
URLReplace() {
 StringReplace, Clipboard, Clipboard, (, `%28, All
 StringReplace, Clipboard, Clipboard, ), `%29, All
}

ほかにも、AutoHotkeyを使用して行える操作の例は、AutoHotkeyのオンラインフォーラムのScripts and Functionsで探すことができる。

コミュニティ

[編集 ]

2012年1月現在、AutoHotkeyのオンラインコミュニティには約27,300ユーザーが登録されており、約482,000の書き込みが投稿されている。[4]

AutoHotkey用のオンラインチャットルームはFreenode IRCに設置されており、2009年11月現在で平均40ユーザーが接続している。[5]

ユーザ提供機能

[編集 ]

他のプログラミング言語から、または他のプログラミング言語と一緒に使用する以下の拡張機能、相互運用できるプログラム、埋め込みスクリプトライブラリが使用可能であるか、開発中である。

他にも以下がある。

歴史

[編集 ]

開発史

[編集 ]

AutoHotkeyの最初のベータ版は2003年11月10日に公開された。[6] AutoHotkeyを開発する契機としては、開発者のChris Mallettが「ショートカットキー機能のサポートをAutoIt v2に組み込みたい」という提案をしたものの、AutoItのコミュニティで反応がなかったことがある。[7] [8] そのためChris Mallettは、AutoIt v2の構文を土台としつつもAutoIt v3から一部のコマンドを流用し、AutoIt v3でコンパイルした、独自のプログラムをいちから作成しはじめた。[9] その後AutoIt v3は、「『AutoItのソースコードを繰り返し取得』し、『自分自身をAutoItの競合相手にしている』プロジェクトが他に存在する」という理由によりGNU General Public Licenseからプロプライエタリソフトウェアに移行した。[10]

2010年10月10日、Chris Mallettは、AutoHotkey_LをAutoHotkeyとして継続して開発していくことにしたこと、公式ウェブサイトの「Download AutoHotkey」からダウンロードできるプログラムをAutoHotkey_Lに変更することを宣言した。[11] [12] また、AutoHotkeyコミュニティ内のプログラマーたちも、AutoHotkeyの派生版のAutohotkey_L, Basic, v2.0を開発し始めた。

2014年4月24日、非営利組織のAutoHotkey Foundation LLCを設立。[13]

AutoHotkey v2

[編集 ]
  • 2021年7月24日、AutoHotkey v2の最初のベータ版が公開された。[14] 2022年11月20日にはrc版が公開され、同じ年の後半に v2.0.0としてリリースすることが計画された。[15]
  • 2022年12月20日、AutoHotkey v2.0.0が正式リリースされた。[16] 2023年1月22日、AutoHotkey v2が正式版とみなされ、v1は非推奨バージョンとなった。2024年3月16日に、AutoHotkey v1の最終アップデートがリリースされ、v1はサポート終了となった。[17]

その他の事件

[編集 ]
  • 2019年4月ごろ、AutoHotkeyを組み込んだマルウェアが発見された。[18] このウィルスは正規のAutoHotkeyスクリプトエンジンを含み、感染すると攻撃者が記述したAutoHotkeyのスクリプトをダウンロード、実行し、遠隔操作されてしまう。

脚注

[編集 ]
  1. ^ "Release 2.0.19" (2025年1月25日). 2025年1月28日閲覧。
  2. ^ "v1.0からv2.1への変更|AutoHotkey v2". ahkscript.github.io. 2025年10月15日閲覧。
  3. ^ Contact Erica Sadun: Comment (2005年8月19日). "Ericasadun 2005 Life Hacker". Lifehacker.com. 2011年12月2日閲覧。
  4. ^ "AutoHotkey Community Forum Page". Autohotkey.com. 2011年12月2日閲覧。
  5. ^ "Getting connected to AutoHotkey's IRC Chat". Autohotkey.com. 2011年12月2日閲覧。
  6. ^ "AutoHotkey Changelog for Years 2003-2004". Autohotkey.com. 2011年12月2日閲覧。
  7. ^ "Author Chris Mallett's post on the AutoHotkey Forums". Autohotkey.com. 2011年12月2日閲覧。
  8. ^ "An AutoIt / AutoHotkey nonfunctional comparison". Paperlined.org. 2011年12月2日閲覧。
  9. ^ "Author Chris Mallett's post on the AutoHotkey Forums". Autohotkey.com. 2011年12月2日閲覧。
  10. ^ "Licensing Opinions - AutoIt Forums". Autoitscript.com. 2011年12月2日閲覧。
  11. ^ "Forum post by Chris, announcing AutoHotkey_L now main platform". Autohotkey.com. 2011年12月2日閲覧。
  12. ^ "Download page showing AutoHotkey_L as ongoing platform". Autohotkey.com. 2011年12月2日閲覧。
  13. ^ "The AutoHotkey Foundation". autohotkey.com. 2025年9月27日閲覧。
  14. ^ "AutoHotkey v2.0-beta.1 - AutoHotkey Community". Autohotkey.com. 2022年4月21日閲覧。
  15. ^ "v2.0-rc.1 - AutoHotkey Community". Autohotkey.com. 2022年11月29日閲覧。
  16. ^ "v2.0.0 - AutoHotkey Community". Autohotkey.com. 2022年12月22日閲覧。
  17. ^ "End of Life: v1.1 - AutoHotkey Community" (英語). www.autohotkey.com. 2025年10月15日閲覧。
  18. ^ "正規ソフト「AutoHotkey」を悪用した攻撃を確認 | トレンドマイクロ セキュリティブログ". blog.trendmicro.co.jp. 2019年6月5日閲覧。

関連項目

[編集 ]

外部リンク

[編集 ]

AltStyle によって変換されたページ (->オリジナル) /