AutoHotkey: Windows でタスクを自動化するための完璧なツール

公開: 2020-12-09

ワークフローを簡素化するために、コンピューターでの日常的で反復的なタスクを自動化することを好みますか? もしそうなら、macOS で最高の自動化ツールの 1 つである Automator を使用すると、スクリプトを作成して Mac でタスクを自動化できます。 ただし、スペクトルの反対側に属している場合 (Windows マシンを使用している場合)、Windows の Automator に最も近いのはAutoHotkeyまたはAHKです。

AHK は、すべての自動化ニーズに対応するワンストップ ツールです。 これを使用して、カスタム スクリプトやショートカットを作成したり、キーを再マップしたり、さまざまなアクションのマクロを作成したりすることもできます。 したがって、Windows でタスクを自動化する予定があり、AutoHotkey を知らない場合は、ツールを使用してワークフローを合理化するのに役立つガイドを以下に示します。

AutoHotkey (AHK) Windows automation

自動化に関して言えば、Linux、macOS、または Windows でさえも、マクロ、カスタム スクリプト、およびショートカットを作成するのに役立つ組み込みまたはサードパーティの自動化ツールが多数あります。 ただし、それらのすべてが、さまざまなシステム アクションやサードパーティ アプリのアクションをきめ細かく制御できるわけではありません。 そして、まさにここで AutoHotkey の出番です。

目次

オートホットキーとは?

AutoHotkey は、Windows オペレーティング システム専用の無料のオープン ソース ツールで、マシン上の多くの操作を自動化できます。 2003 年にリリースされました。当時は、反復的なタスクを自動化する機能を提供するマクロおよびキーボード ショートカット作成ツールとして始まりました。 しかし、何年にもわたってさまざまな変更が行われ、現在の Windows のワンストップ自動化ツールとして最終的に登場しました。

AutoHotkey Windows scripting
Python ライブラリとモジュールをインポートする AutoHotkey スクリプト

ツールを初心者にやさしく使いやすくするためにグラフィカル インターフェイス (GUI) を提供する他の自動化およびカスタム ショートカット作成ツールとは異なり、AutoHotkey は厳密にはコマンドライン (CLI) ツールです。 これが意味することは、対話するために事前に配置されたボタンとコンポーネントを備えたグラフィカル インターフェイスが得られないということです。 代わりに、コマンドを介して入力を受け取り、それに応じて機能を実行する、完全にコマンドベースのインターフェイスがあります。

このアプローチには多くの利点がありますが、GUI ツールとは異なり、それに相当する CLI は最もユーザーフレンドリーではないため、いくつかの欠点もあります。 ――どうすればその能力を最大限に発揮できるか。

AutoHotkey のインストール方法

AutoHotKey とは何かがわかったので、ツールを使い始めるために最初に行う必要があるのは、ダウンロードしてマシンにインストールすることです。 方法は次のとおりです。

1. AutoHotkey の公式 Web サイトにアクセスし、コンピューターに AutoHotkey をダウンロードします。

2. 次に、インストーラーを実行し、クリックしてインストール ダイアログを進みます。

3. インストール タイプの選択ウィンドウが表示されたら、[高速インストール] を選択します。ツールをデフォルトの構成でインストールする場合、または [カスタム インストール] を選択します。ツールをより詳細に制御する必要があり、好みに合わせてインストールを構成する場合です。

AutoHotkey の使用方法

AutoHotKey が Windows コンピュータにインストールされると、セットアップ ウィンドウにいくつかのオプションが表示されます。 ここから AutoHotkey を実行することを選択するか (今のところ)、[チュートリアルを表示] をクリックして AutoHotkey の完全なドキュメントを取得することができます。 タスクを自動化するためのカスタム スクリプトを作成する予定がある場合、このドキュメントは、スクリプトの構文とすべての基本要素について学習するのに役立ちます。

AutoHotkey を使用するには、ツールがバックグラウンドで実行されていることを確認してください。 これを行うには、 [スタート] メニューに移動し、そこから AutoHotkey を実行します。 ツールが起動して実行されると、マシンでタスクを自動化するための 2 つの異なるアプローチが得られます。自動化するアクション用に独自のカスタム スクリプトを最初から作成するか、スクリプト (他の人が作成したスクリプト) を見つけてダウンロードすることができます。 ) をマシン上で実行します。

A premade AutoHotkey script
アプリをトレイ メニューに最小化する既製の AutoHotkey スクリプト

AutoHotkey を使い始めたばかりの場合、カスタム スクリプトを作成するために必要なスクリプト言語の包括的な知識がないことが理解されます。 したがって、事前に作成されたスクリプト (他の人によって作成されたもの) を使用することは、開始するのに安全な場所であり、言うまでもなく、スクリプトが AutoHotkey でどのように機能するかを理解して学習するのにも役立ち、最終的に自分でスクリプトを作成できるようになります。

すぐに実行できるスクリプトの検索に関しては、インターネット上の一部のソース (ソース 1、ソース 2) がさまざまなタスク用のさまざまなスクリプトのコレクションを提供しており、ダウンロードして Windows コンピューターに直接実行できます。 さらに、AutoHotkey の公式 Web サイトとフォーラムで、事前に作成されたスクリプトを見つけることもできます。 さらに、問題が発生した場合は、フォーラムで質問への回答を得ることもできます。 [注: スクリプトをダウンロードするときは、ファイルの拡張子が .ahk であることを確認してください。 ]

ファイルをダウンロードしたら、スクリプトに対していくつかの異なる操作を実行できます。 ファイルを右クリックして、リストからオプションを選択するだけです。 基本的に、 Run ScriptCompile ScriptEdit Scriptの 3 つの便利な関数があります。

Run-Compile-Edit AutoHotkey script

Run Scriptは、その名のとおり、スクリプトを実行します。 この関数をキーにマッピングしたい場合は、ワークフローを簡素化するためにそれを行うことができます。 一方、コンパイル スクリプトは、スクリプトをコンパイルして実行可能ファイルにバンドルし、スクリプトを実行可能 (.exe) ファイルに変換するのに役立ちます。 また、[スクリプトの編集] オプションは、コードを表示する必要がある場合や、スクリプトを変更したい場合に使用します。

スクリプトを実行すると、スクリプトはシステム トレイに移動し、バックグラウンドで実行されます。 スクリプトを一時停止、停止、またはホットキーを一時停止する必要がある場合は、システム トレイの [ H ] アイコンを右クリックし、そこから適切なオプションを選択することで実行できます。 スクリプトを変更する際に留意すべき点は、スクリプトを編集するたびに、変更を有効にするためにスクリプトをリロードする必要があるということです。

Reload-Pause-Suspend AutoHotkey script

一方、カスタム スクリプトを自分で作成する場合は、デスクトップを右クリックし、[新規] > [ AutoHotkey Script ] を選択します。 ファイルに名前を付け、.ahk 拡張子で終わるようにします。 次に、それを右クリックして、オプションのリストから [スクリプトの編集] を選択します。 ファイルがテキスト エディターで開いたら、コードの追加を開始します。 終了したら、必ず変更を保存してください。

AutoHotkey の仕組みとカスタム スクリプトの作成方法

簡単に言えば、AutoHotkey は単独では何もしません。 代わりに、スクリプト (アクションを実行するための命令を含むプログラム) に依存してタスクを自動化します。 スクリプトは、テキスト エディターを使用して記述されます。 Windows にプリインストールされているメモ帳アプリに書き込むこともできます。 または、構文の強調表示が必要な場合は、Emacs、Vim、Sublime Text、Notepad++、SciTE4AutoHotkey などの一般的なテキスト エディターを使用してスクリプトをコーディングできます。 ただし、テキスト エディターに慣れていない場合は、かなり基本的なエディターである (そして比較的使いやすい) Notepad++ を使用するか、SciTE エディターのカスタム バージョンである SciTE4AutoHotkey エディターを入手できます。 AutoHotkey スクリプトを作成するように調整されていますが、学習曲線があります。

AutoHotkey スクリプトには、1 つまたは複数の異なるアクションを含めることができます。 理想的には、ホットキーを追加し、それを使用して実行するアクションを指定します。 ただし、複数のアクションが必要なタスクの場合は、ホットキーに複数のアクションを指定することもできます。

Writing a custom AutoHotkey script
クリップボードの内容を Google 検索する AutoHotkey スクリプト

スクリプトについて言えば、ツールは AutoHotkey スクリプト言語を理解します。AutoHotkey スクリプト言語は、他のプログラミング言語と同様に、変数、オブジェクト、関数、制御フロー ステートメントなどのさまざまな要素を構成します。目的のアクションを実行し、タスクを自動化します。

詳細には触れませんが、カスタム スクリプトを開始するために覚えておく必要のある基本的な要素または機能がいくつかあります。 これらには以下が含まれます:

1. ホットキー –アクションにバインドしてすばやく実行できる単一のキーまたはキーの組み合わせ。

例 1:
^c: :
Run, chrome.exe

例 2:
^h::
{
Send “Hello,” {enter}
Send “How have you been?”
}

翻訳 1:コントロール + c キーの組み合わせを押したときに Chrome を実行するアクション。

翻訳 2:コントロール + h キーを押して「こんにちは、お元気ですか?」と入力したときにトリガーされるアクション

enter という単語は、テキストとして追加したくないため、括弧内に配置されています。 代わりに、Enter キーを登録して、次の文を新しい行で開始するようにします。

2. ホットストリング:自動置換機能と同様に、略語を展開する機能。

例えば:
::omw::On my way{!}

翻訳: omw の略語を完全な形で展開します。 感嘆符は、Alt キーではなく感嘆符として登録するために、括弧内に保持されます。

知っておくべき必須記号 (または修飾子):

  • #Windows
  • ! Altです
  • ^コントロール
  • +シフト
  • &アンパサンド(2 つのコンポーネントを結合するために使用)

3. キーストロークの送信:送信は、入力された (入力された) キーをキャプチャしてプログラムに送信できる AutoHotkey 機能です。 そのため、キープレスをシミュレートしたい場合、この関数はまさにそれを実現するのに役立ちます. プログラムに送信できるさまざまなパラメーターがあります。 また、送信したいものに応じて、同じことを支援する方法があります。

例えば:
Send “!fs”

翻訳: [ファイル] > [保存] メニューを選択します。

必須記号とその機能:

  • ! Altです
  • +シフト
  • ^コントロール
  • #ウィンドウ

4. プログラムの実行と Web サイトを開く: Runは最も便利な機能の 1 つで、プログラムを実行したり、URL (Web サイト) を開いたりすることができます。 アプリまたは Web サイトを開く必要があるスクリプトの場合、この関数が必要です。 さらに、関数をキーにバインドしてホットキーを作成し、アクションを実行できます。

例 1:ウェブサイトを開く
^g::
Run, “https://www.google.com"

例 2:アプリの実行
^n::
Run, “notepad.exe”

翻訳 1:デフォルトのブラウザで Google 検索を開きます。
翻訳 2:メモ帳アプリを実行します。

5. コマンドと関数:コマンド関数は、AutoHotkey を使用してスクリプトを作成する際に最も重要な要素の 2 つです。これにより、プログラムへの指示が容易になります。 単純な指示を受け取って問題を解決するコマンドがある一方で、プログラムに複雑な指示を与えるのに役立つ関数があります。

構文:

  • コマンド、パラメータ 1、パラメータ 2、パラメータ 3
  • 関数 (パラメーター 1、パラメーター 2、パラメーター 3)

基本的に、コマンドと関数を区切るのは括弧です。

例: Run, chrome.exe

6. その他:コマンド、関数、およびキーストロークの送信などの組み込み関数に加えて、AutoHotkey を使用してスクリプトで使用できるさまざまな機能が多数あります。 たとえば、変数を使用してプログラムの出力を保存したり、オブジェクトにプログラムの状態を保存したり、制御フロー ステートメントを使用してプログラムの入力、出力、アクションを適宜変更したり、数学関数、マウス関数、監視機能、ファイルシステム機能など。 基本的に、他のプログラミング言語でできることはすべて、AutoHotkey を使用して (ある程度) 実行できます。

AutoHotkey のユースケースにはどのようなものがありますか?

AutoHotkey の多くの使用例の 1 つは、特定のコード行を追加するスクリプトを作成できる場合です。 そうすれば、繰り返しコード行を何度も書くことに費やす時間と労力を節約できます。 たとえば、Python やその他のプログラミング言語を使用している場合は、定義されたコード行を埋めることができるホットストリングを作成できます。

たとえば、Python を使用している場合、特定のライブラリとモジュールをインポートする必要がある可能性があります。 その場合、次のコード スニペットは、時間を節約し、ワークフローを合理化するのに役立ちます。

例えば:
::impl1::
Send "import tkinter" {enter}
Send "import numpy as np" {enter}
Send "import random" {enter}

翻訳:上記のホットストリングは、テキスト エディターで impl1 と入力してタブを押すとすぐに、二重引用符の間の行を上下に書き込みます。 既に述べたように、括弧内の単語 enter は改行に使用されます。 したがって、基本的に得られるものは次のとおりです。
import tkinter
import numpy as np
import random

同様に、CSS で複数のスタイル コードを記述する必要がある場合は、入力する必要がある宣言された一連の行を含むホットストリング ワードを使用できます。

Custom AutoHotkey script to clean Recycle Bin
ごみ箱をクリーンアップするためのカスタム AutoHotkey スクリプト

コーディングでの使用に加えて、AutoHotkey スクリプトを使用して、マシンでよく使用する特定のアプリや Web サイトを起動することもできます。 さまざまなアプリ間で特定の機能にキーをバインドして、それらをすばやく実行し、いくつかの余分な手順を節約することもできます. さらに、AutoHotkey のもう 1 つの便利なアプリケーションは、ファンクション キーまたは特殊キー (CapsLock、Insert、Esc など) を目的のアクションをトリガーするのに役立つものに再利用することです。

最終的に、スクリプト作成に自信が持てるようになったら、クリップボードにあるものをインターネット上ですばやく (Google) 検索するスクリプトを作成できます。 そうすれば、Web ブラウザを開いてクエリを手動で検索する必要がなくなります。 同様に、ごみ箱を手動でクリアしてストレージ容量を解放するのにうんざりしている場合は、ビンを即座にクリアするスクリプトを作成することもできます。

言うまでもなく、スクリプト言語のコツをつかめば、AutoHotkey で実行しようと考えている機能を、より効率的な方法で実際に実現できます。