AutoHotkey_L/イントロダクション

提供: AutoHotkey Wiki
移動: 案内検索
リファレンス > AutoHotkey_Lとは > AutoHotkey_L/イントロダクション

インストール[編集]

インストーラを利用するのが簡便である。
インストールの際にANSI版とUnicode版のどちらかを利用するかを問うてくるが、次項を参考にしてどちらかを選ぶこと。
アップグレード時は各版に応じたバイナリ(ZIP圧縮されている)とヘルプファイルを上書きすればよい。

ANSI版とUnicode版[編集]

AutoHotkey_LにはANSI版とUnicode版の二つがあり、いくつかの挙動の違いがある。両者の違いは以下の通り。

版名 文字の取扱い 互換性 備考
ANSI 内部コードはANSI(シフトJIS)。
基本的に半角英数字しか認識しない。
半角1つが1文字。全角は2文字と認識される。
全角(2バイト)文字の意図しないマッチや分割が起きることがある。
本家版に独自拡張を加えたもので、AHKLの独自の文法違反がなければ従来のスクリプトは動く。
Unicode 内部コードはユニコード。
ユニコードにマッピングされている文字なら何でもOK。
全角/半角を問わず文字単位で処理が行われる。
本家に独自拡張を加え、更に文字の取り扱いを根本から変えたもの。
そのため文字を扱うところ、特に外部DLL呼び出しを行うところで互換性が著しく落ちることがある。

Unicode版推奨、日本語を含む文字列の取り扱いが断然便利な為。
  64ビットOSでAHKL32ビット版の使用は制約が多いので、64ビット版を強く推奨

互換性について[編集]

  • 既存のAutoHotkeyのコマンドが使えなくなっているといったことは一切無い。
  • スクリプトを全て自分で書くならば全く問題はない。
  • 更新が続いているライブラリではUnicode版への対応がなされているものが増えてきている。

注意事項[編集]

スクリプトファイルのエンコーディング[編集]

スクリプトはデフォルトでUTF-8として読み込まれるようになった。
このため、従来のスクリプトをそのまま実行すると日本語部分が化けてしまう。
これを回避するには以下のいずれかの対策をおこなう。

既存スクリプトを変更しても良い場合[編集]

スクリプトを全てUTF-8に変換する。コマンド等は日本語を含むことはないのでほぼ問題は無い。
メモ帳などのテキストエディタで開いてエンコードを指定して保存すればよい。
BOMの有り無しを指定できるテキストエディタの場合、エンコードが明示的なBOM付を選択するのが望ましい。

既存スクリプトに変更を加えたくない場合(非推奨)[編集]

AHKLの起動オプションに「/CP932」を追加することで、シフトJISでスクリプトを読み込むようさせることができる。

  • AutoHotkey.exeへのドラッグ&ドロップは上記オプションを付けたショートカット経由にする。
  • フォルダオプションで「AutoHotkey Script」の関連付けを編集し、コマンドラインに上記オプションを追加する

ただし上記の対策を行っても、タスクトレイメニューから「Reload」の選択や、スクリプト内の Reload コマンドで再起動を行った際はこのオプションが無視されてしまうので注意が必要。

※ シフトJISとUTF-8は半角英数字および記号の部分は同じなので、日本語の記述がないスクリプトの場合はとくに意識をしなくても良い。