| 名前 | 説明 |
|---|---|
| LButton | マウスの第1ボタン。どの物理ボタンに対応するかはシステムの設定によりますが、デフォルトでは左ボタンになっています。 |
| RButton | マウスの第2ボタン。どの物理ボタンに対応するかはシステムの設定によりますが、デフォルトでは右ボタンになります。 |
| MButton | 中ボタンまたはホイールボタン |
| 名前 | 説明 |
|---|---|
| XButton1 | マウスの第4ボタン。通常、Browser_Back と同じ機能を実行します。 |
| XButton2 | マウスの第5ボタン。通常、Browser_Forward と同じ機能を実行します。 |
| 名前 | 説明 |
|---|---|
| WheelDown | ホイールを下(手前)に回します。 |
| WheelUp | ホイールを上(自分から離れる方向)に回します。 |
| WheelLeft WheelRight |
左右にスクロールします。 2つめのホイールがあったり、ホイールを左右に傾けることができたりするマウスでホットキーとして使用できます。場合によっては、マウスにバンドルされているソフトウェアを使用して、この機能を制御する必要があります。特定のマウスに関係なく、Send と Click を使用して、それをサポートするプログラムで水平方向にスクロールできます。 |
注:文字と数字のキーの名前は、その1文字または数字と同じです。事例:b は B で、5 は 5です。
任意の 1 文字をキー名として使用できますが、その意味(スキャン コードまたは仮想キーコード)は現在のキーボードレイアウトによって異なります。さらに、コンテキストによっては、一部の特殊文字をエスケープするか、中括弧で囲む必要があります。a-zまたはA-Zの文字は、現在のキーボードレイアウトに含まれていなくても、対応する仮想キーコード(通常はvk41~vk5A)を参照するために使用できます。
| 名前 | 説明 |
|---|---|
| CapsLock | CapsLock(キャプスロックキー)
注:Windows IME は、CapsLock の検出と機能に干渉する場合があります。詳細については、CapsLockとIME を参照してください。 |
| Space | Space(スペースバー) |
| Tab | Tab(タブキー) |
| Enter | Enter |
| Escape(またはEsc) | Esc |
| Backspace(またはBS) | Backspace |
| 名前 | 説明 |
|---|---|
| ScrollLock | ScrollLock(スクロールロックキー)。Ctrlが押されている間、ScrollLock は CtrlBreakのキーコードを生成しますが、スキャンコードによってPauseと区別することができます。 |
| Delete(またはDel) | Del |
| Insert(またはIns) | Ins |
| Home | Home |
| End | End |
| PgUp | PgUp(ページアップキー) |
| PgDn | PgDn(ページダウンキー) |
| Up | ↑(上矢印キー) |
| Down | ↓(下矢印キー) |
| Left | ←(左矢印キー) |
| Right | →(右矢印キー) |
システムの動作上、スラッシュで区切られた以下のキーは、NumLockのON/OFFによって識別が異なります。NumLockがOFFの状態でShiftを押すと、一時的にShiftが解除され、NumLockがONであるかのように動作します。
| 名前 | 説明 |
|---|---|
| Numpad0 / NumpadIns | 0 / Ins |
| Numpad1 / NumpadEnd | 1 / End |
| Numpad2 / NumpadDown | 2 / ↓ |
| Numpad3 / NumpadPgDn | 3 / PgDn |
| Numpad4 / NumpadLeft | 4 / ← |
| Numpad5 / NumpadClear | 5 / 通常は何もしません |
| Numpad6 / NumpadRight | 6 / → |
| Numpad7 / NumpadHome | 7 / Home |
| Numpad8 / NumpadUp | 8 / ↑ |
| Numpad9 / NumpadPgUp | 9 / PgUp |
| NumpadDot / NumpadDel | . / Del |
| NumLock | NumLock(ナンバーロックキー)。Ctrl が押されている間、NumLock は Pauseのキーコードを生成するため、ホットキーには^NumLockの代わりに^Pauseを使う。 |
| NumpadDiv | /(除算) |
| NumpadMult | *(乗算) |
| NumpadAdd | +(加算) |
| NumpadSub | -(減算) |
| NumpadEnter | Enter |
| 名前 | 説明 |
|---|---|
| F1~F24 | ほとんどのキーボードの上部にある12個以上のファンクションキーです。 |
| 名前 | 説明 |
|---|---|
| LWin | 左Win。<# ホットキー プレフィックスに対応します。 |
| RWin |
右Win。 注:Ctrl/Alt/Shiftとは異なり、OSがサポートしていないため、汎用的、中立的な「Win」キーは存在しません。ただし、 |
| Control(またはCtrl) | Ctrl。ホットキー(Control::)として、チルダ プレフィックスがない限り、リリース時に起動します。^ ホットキー プレフィックスに対応します。 |
| Alt | Alt。ホットキー(Alt::)として、チルダ プレフィックスがない限り、リリース時に起動します。ホットキーのプレフィックス!に対応します。 |
| Shift | Shift。チルダのプレフィックスがない限り、ホットキー(Shift::)としてはリリース時に起動します。ホットキーのプレフィックス+に対応します。 |
| LControl(またはLCtrl) | 左Ctrl。ホットキーのプレフィックス<^に対応します。 |
| RControl(またはRCtrl) | 右Ctrl。ホットキーのプレフィックス>^に対応します。 |
| LShift | 左Shift。<+ホットキーのプレフィックスに対応します。 |
| RShift | 右Shift。ホットキーの接頭辞>+に対応します。 |
| LAlt | 左Alt。ホットキーのプレフィックス<!に対応します。 |
| RAlt |
右 Alt。ホットキーのプレフィックス 注:キーボードレイアウトにRAltの代わりにAltGrがある場合、ここで説明されているように、 |
以下の各キーに割り当てられている機能は、Windowsのレジストリを変更することで上書きすることができます。この表は、Windowsのほとんどのバージョンで、各キーのデフォルトの機能を示しています。
| 名前 | 説明 |
|---|---|
| Browser_Back | 戻る |
| Browser_Forward | 進む |
| Browser_Refresh | 更新 |
| Browser_Stop | 中止 |
| Browser_Search | 検索 |
| Browser_Favorites | お気に入り |
| Browser_Home | ホームページ |
| Volume_Mute | ミュート |
| Volume_Down | 音量を下げる |
| Volume_Up | 音量を上げる |
| Media_Next | 次のトラック |
| Media_Prev | 前のトラック |
| Media_Stop | ストップ |
| Media_Play_Pause | 再生/一時停止 |
| Launch_Mail | デフォルトのメールソフトを起動します |
| Launch_Media | デフォルトのメディアプレーヤーを起動します |
| Launch_App1 | PCを開きます。(以前のマイコンピュータまたはコンピュータ) |
| Launch_App2 | 電卓を起動します |
| 名前 | 説明 |
|---|---|
| AppsKey | Menu。右クリックのコンテキストメニューを呼び出すためのキーです。 |
| PrintScreen | PrtSc(プリントスクリーンキー) |
| CtrlBreak | Ctrl+PauseまたはCtrl+ScrollLock |
| Pause | PauseまたはCtrl+NumLock。Ctrlを押している間は、Pauseは CtrlBreak、NumLockは Pauseのキーコードを生成するので、ホットキーでは^Pauseの代わりに^CtrlBreakを使用します。 |
| Help | Help。これはおそらく、ほとんどのキーボードに存在しないと思われます。通常F1とは異なります。 |
| Sleep | Sleep。なお、キーボードによってはスリープキーが効かないことがあります。 |
| SCnnn | キーのスキャンコードをnnnに指定します。上記以外の珍しいキーも認識します。詳しくは特殊キーをご覧ください。 |
| VKnn | nnには、キーの16進数の仮想キーコードを指定します。このめったに使われない方法は、ある種のホットキーが キーボードフックを必要としないようにもします。例えば、以下のホットキーはキーボードフックを使用しませんが、副作用として、HomeまたはNumpadHomeのいずれかを押すと起動します: ^VK24::MsgBox "You pressed Home or NumpadHome while holding down Control." 既知の制限事項: 警告:VKnnとSCnnnの組み合わせに対応しているのは、Send関数、GetKeyName関数、GetKeyVK関数、GetKeySC関数、A_MenuMaskKeyのみです。それ以外のとき、または他の無効な接尾辞があるときは、キーは認識されません。例えば、 |
注:歴史的な理由から、以下のボタンとコントロールの名前はジョイスティックを意味するJoyで始まります。しかし、通常はゲームパッドやステアリングホイールなど、他のゲームコントローラーにも使用できます。
Joy1からJoy32:コントローラーのボタン。コントローラのボタン番号を決定するには、以下のテストスクリプトを使用します。なお、^(control)、+(shift)などのホットキー接頭記号はサポートしていません(GetKeyStateで代替できます)。また、コントローラボタンの押下を検出するように設計されているウィンドウでは、コントローラボタンの押下は常にアクティブウィンドウを「通過」することに注意してください。
以下のコントロール名はホットキーとして使用できませんが、GetKeyStateで使用できます:
例えば、Xbox Wireless/360コントローラーを使用する場合、JoyX/JoyYは左スティック、JoyR/JoyUは右スティック、JoyZは左右のトリガー、JoyPOVは方向パッド(Dパッド)となります。
複数のコントローラー:コンピュータに複数のコントローラがあり、最初のコントローラ以外のコントローラを使用する場合は、コントロール名の前にコントローラ番号(最大16)を含めます。例えば、2joy1は2つ目のコントローラーの最初のボタン。
注:スクリプトがコントローラを認識できない場合は、コントローラが1つしかなくても、コントローラ番号を1以外に指定してください。このような状況がどのように発生するのか、または正常かどうかは不明ですが、コントローラのテストスクリプトでコントローラ番号を実験することで、システムに該当するかどうかを判断することができます。
こちらも参照のこと:
WinLIRCクライアントスクリプトにより、手持ちのリモコンからの信号に応答します。
キーボードやマウスに上記以外のキーがある場合でも、以下の手順でホットキーにすることができる場合があります:
SC159::MsgBox ThisHotkey " was pressed." ; 159をキーの値で置き換えます。ThisHotkeyもご覧ください。
逆方向:他のキーを "ミステリー・キー"にリマップするには、次のようにします:
; 159を上記で発見された値で置き換えてください。必要であればFFを
; キーヒストリー画面の最初の列にある仮想キーで置き換えます。
#c::Send "{vkFFsc159}" ; 詳しくは Send {vkXXscYYY} をご覧ください。
別の解決策:キーまたはマウスボタンが「キー履歴」画面で検出できない場合は、次のいずれかをお試しください:
マウスやキーボードに付属のソフトウェア(コントロールパネルやスタートメニューからアクセスできる場合もあります)を再設定して、「いずれかのキー」が他のキーストロークを送信するようにします。このようなキーストロークは、スクリプトのホットキーとして定義することができます。例えば、Ctrl+F1を送信するようにミステリーキーを設定した場合、スクリプトで^F1::を使うことで、間接的にそのキーをホットキーとして使用することができます。
フォーラムのアーカイブを検索してAHKHIDを試してみてください。また、RawInput*、USB HIDまたはAHKHIDなどのキーワードでフォーラムを検索してみるのもよいでしょう。
以下は最終手段であり、一般的には絶望的な場合にのみ試みるべきものです。成功する確率が低く、元に戻すのが困難な望まない副作用を引き起こす可能性があるからです:
キーボードやマウスに付属している余分なソフトウェアを無効化または削除するか、OSに内蔵されているような標準的なドライバーに変更してください。これは、お使いのキーボードやマウスにそのようなドライバがあり、そのカスタムドライバやソフトウェアが提供する機能なしでいられることを前提としています。
Windows IMEの一部の構成(英語キーボードで日本語入力など)では、CapsLockを使用してモードを切り替えます。このような場合、CapsLockはIMEによって抑制されてAutoHotkeyで検出することができません。ただし、Alt+CapsLock、 Ctrl+CapsLockおよびShift+CapsLockのショートカットは、回避策で無効にすることができます。具体的には、キーアップを送信してIMEの状態を変更するが、キーボードフックに信号を送ってイベントを抑制することで、他の影響を防ぐことができます。その際、以下の機能を利用することができます:
; キーボードフックのインストールが必要です。
InstallKeybdHook
SendSuppressedKeyUp(key) {
DllCall("keybd_event"
, "char", GetKeyVK(key)
, "char", GetKeySC(key)
, "uint", KEYEVENTF_KEYUP := 0x2
, "uptr", KEY_BLOCK_THIS := 0xFFC3D450)
}
この関数をスクリプトにコピーするか、LibフォルダにSendSuppressedKeyUp.ahkとして保存し、スクリプトに#Include <SendSuppressedKeyUp>を追加すると、次のように使えるようになります:
; IME の Alt+key ショートカットを無効にします。
~LAlt::SendSuppressedKeyUp "LAlt"
; ホットキーのテスト:
!CapsLock::MsgBox A_ThisHotkey
; IMEと互換性のある方法で、CapsLockをLCtrlにリマップします。
*CapsLock::
{
Send "{Blind}{LCtrl DownR}"
SendSuppressedKeyUp "LCtrl"
}
*CapsLock up::
{
Send "{Blind}{LCtrl Up}"
}