大玉&人差し指トラックボールを代表するKensington Slimblade(Pro)には、もうこれなしのPCライフは考えられないってくらいお世話になっていますが、一点だけ物足りない部分があります。
それは・・・ボタンが4つしかないということ!
KensingtonWorksを使うことで、2ボタン同時押しも可能になったりするわけですが、他ボタン派の私としてはまだまだ物足りない…
そうだ! AutoHotkeyを使えばいいじゃないか!!
なぜSlimblade ProとAutoHotkeyを組み合わせるの?
上記の通り、KensingtonWorksを併用することで、Slimblade Proの数少ないボタンにも8つの機能を割り当てできるわけですが、たとえば!
- 右クリックの長押し
- 左クリック+ホイール操作
- 右クリック+ホイール操作
- それらの機能をアプリごとに切り替える
みたいなことができたら、こんな便利なことはないと思いませんか? あなたもそう思いますよね?
ということで、AutoHotkey(v2)を使って、そんな夢のような機能を追加してしまおうという回です。
今回は私が愛用しているSlimblade Proを想定したセッティングをしていきますが、別のトラックボールとかマウスでもやることはおなじなので、興味がある人は参考にしてもらえればと思います。
まずは準備から。AutoHotkey v2のインストール
とにもかくにも、まずはAutoHotkeyをインストールしないことには始まらない! とやっていくわけなんですが、ここで使うのは「AutoHotkey ”v2”」でないといけないので、インストール時はご注意ください。
次の画面で、「Download v2.0」をクリックして、AutoHotkey v2をダウンロード。

ダウンロードしたインストーラーを起動したら、あとはとくに変更することなくそのままインストールするだけでOK!

インストールが終わったら、「.ahk」の拡張子のファイルはAutoHotkeyに関連付けされているので、とくにアプリを起動させたりする操作は必要ありません。
YouTube視聴編:Slimblade ProだけでYouTubeをスマートに操作!
まずは、Slimblade ProでYouTubeをいい感じに操作できる設定からやってみましょう。
YouTubeってショートカットキーが豊富なんですが、これをSlimblade Proで操作できるように設定します。
対象:YouTubeを視聴するブラウザ(例:Chrome、Edge、Firefoxなど)
操作をカスタムする内容としては、以下のような感じ。
操作内容 | 操作方法 |
---|---|
早送り(10秒) | 左クリック+ホイール上 |
巻き戻し(10秒) | 左クリック+ホイール下 |
再生・停止(スペースキー) | Xbutton1(左奥のボタン) |
再生速度を上げる | 右クリック+ホイール上 |
再生速度を下げる | 右クリック+ホイール下 |
「左クリック+ホイール上」などの操作は、左クリックを押したままホイール(Slimbladeならボール)を回転させるということです。
その際、AutoHotkeyで使うスクリプト内容は以下のとおりです。
#Requires AutoHotkey v2.0
#HotIf WinActive("ahk_exe chrome.exe") || WinActive("ahk_exe msedge.exe") || WinActive("ahk_exe floorp.exe")
XButton2::Send("{Space}") ; 再生/停止
~LButton & WheelUp::Send("{Right}") ; 10秒早送り
~LButton & WheelDown::Send("{Left}") ; 10秒巻き戻し
~RButton & WheelUp::Send(">") ; 再生速度アップ
~RButton & WheelDown::Send("<") ; 再生速度ダウン
#HotIf
アプリごとに機能を切り替える方法
AutoHotkey最大の強みのひとつが「アプリごとに異なる操作を割り当てられる」こと。
おなじボタンでも、アクティブなアプリが違えばまったく別の操作にできるのが超便利なんです。
基本構文の解説
#HotIf WinActive("ahk_exe chrome.exe")
XButton1::Send("^c") ; Chromeではコピー
#HotIf WinActive("ahk_exe mpc-be64.exe")
XButton1::Send("{Right}") ; MPC-BEでは早送り
#HotIf
以下のポイントを抑えておきましょう。
WinActive("ahk_exe アプリ名")
で今アクティブなアプリを判定#HotIf
を切り替えることで、おなじボタンでも動作を柔軟に変更できる!
よく使うアプリのプロセス名一覧(一例)
アプリ名は、基本的にアプリの実行ファイルの名前をそのまま入れるだけでOK。
アプリ名 | 実行ファイル名 |
---|---|
Chrome | chrome.exe |
Edge | msedge.exe |
Firefox | firefox.exe |
MPC-BE | mpc-be64.exe |
MPC-HC | mpc-hc64.exe |
PotPlayer | potplayermini64.exe |
Notepad | notepad.exe |
よく使うスクリプト構文の基本解説
AutoHotkeyを使って複雑な操作をしたいときに役立つ、定番の書き方を紹介します。
1.ボタンの長押し検出
XButton2:: {
KeyWait("XButton2", "T0.5")
if GetKeyState("XButton2", "P") {
MsgBox("長押しされた!")
} else {
Send("{Space}")
}
}
例:右クリック長押しでCtrl + C(コピー)が発動するスクリプト。 短くクリックした場合は、通常の右クリック動作です。
#Requires AutoHotkey v2.0
; 右クリックのホットキー定義
RButton::
{
; 0.5秒(500ms)以内に離されたかチェック
KeyWait("RButton", "T0.5") ; T0.5 はタイムアウト 0.5 秒
if (ErrorLevel) {
; タイムアウト = 0.5秒以上ホールドされた → Ctrl+C を送信
Send("^c")
; リリースを待って次の入力と干渉しないように
KeyWait("RButton")
} else {
; 0.5秒未満で離された → 通常の右クリック
Click("Right")
}
return
}
2.右クリックのダブルクリック検出
~RButton:: {
static lastClick := 0
now := A_TickCount
if (now - lastClick < 300) {
MsgBox("右ダブルクリック検出!")
}
lastClick := now
}
例:右クリックのダブルクリックでCtrl + V(貼り付け)が発動するスクリプト。
#Requires AutoHotkey v2.0
; クリック判定用のカウンタ
global clickCount := 0
RButton::
{
clickCount += 1
if (clickCount = 1) {
; 400ms 後に判定用タイマーを1回だけ実行
SetTimer(() => {
if (clickCount = 1) {
; シングルクリック
Click("Right")
} else if (clickCount = 2) {
; ダブルクリック
Send("^v")
}
clickCount := 0
}, -400)
}
return
}

上の2つの組み合わせで、右ボタンだけでコピペができる!
3.ボタン+ホイールの組み合わせ
~XButton1 & WheelUp::Send("^+Tab") ; タブを戻る(ブラウザ)
~XButton1 & WheelDown::Send("^Tab") ; タブを進む(ブラウザ)
Ctrl + Tab系の操作は、ブラウザのタブ切り替えに便利。
例:左クリック+ホイール上下でブラウザのタブ移動。
#Requires AutoHotkey v2.0
; ブラウザ(Chrome / Firefox / Edge / Vivaldi)でのみ動作
#If WinActive("ahk_exe chrome.exe") || WinActive("ahk_exe firefox.exe") || WinActive("ahk_exe msedge.exe") || WinActive("ahk_exe Vivaldi.exe")
; 左クリック+ホイール上:前のタブへ(Ctrl+Shift+Tab)
LButton & WheelUp:: {
Send("^+{Tab}")
Return
}
; 左クリック+ホイール下:次のタブへ(Ctrl+Tab)
LButton & WheelDown:: {
Send("^{Tab}")
Return
}
#If ; コンテキスト終了
WinActive("ahk_exe アプリ名")
で、指定したブラウザのウィンドウがアクティブなときだけホットキーが有効になるのがポイントです。
スクリプトをファイル化して実行する方法
このように作ったスクリプトをファイル化して、AutoHotkeyで動かす方法も解説しておきましょう。
スクリプトをファイル化する手順
上で作った「右クリックでCtrl + C」が発動するスクリプトをファイル化してみましょう。
デスクトップでもどこでもいいので、適当な場所にテキストファイル(.txt
)を新規作成します。


ファイルを開いて、作成したAutoHotkeyのスクリプトをコピペしましょう。


.ahk
にしてファイルを保存上で作ったファイルを、「ファイル」→「名前をつけて保存」で保存します。
その際に、拡張子を.ahk
にし、ファイルの種類はすべてのファイル
にして保存します。 ファイル名は自分がわかりやすいものならなんでもOK。(例:RClickHoldCopy.ahk)


スクリプトを実行する
.ahk
ファイルができたら、あとはそれをダブルクリックするだけで即起動!


タスクトレイにAHKのアイコン(緑の「H」マーク)が出ていればOK。


スクリプトの内容が間違っていなければ、指定した操作ができるようになります。
逆に終了したいときは、タスクトレイのアイコンを右クリック→「Exit」でスクリプトの終了ができます。
スクリプトを自動起動する方法
AutoHotkeyスクリプトが正しく動作することを確認したら、スタートアップに登録しておくことで、次回以降のPC起動時にスクリプトも同時に起動させることができます。
Win + R
を押してshell:startup
と入力します。


表示された「スタートアップ」フォルダに、.ahk
ファイルのショートカットを配置。
これで、Windows起動時にスクリプトも自動的に起動するようになります。
Slimblade Proがさらなる神機に
KensingtonWorksだけでは設定できない機能を、AutoHotkeyを使うことで見事に設定することができました。
今回紹介したように左クリック/右クリック+ホイールやクリックを組み合わせることで、YouTubeやブラウザの操作性がグンと快適になります。
たとえば動画を早送りしたいときに矢印キーを連打するより、クリック+ボール回転のほうがはるかに快適!
また、「今どのアプリを開いているか」で動作を切り替えることもできるし、「長押しと短押しで別動作」なんてこともできちゃいます。
マウスボタンが4つしかない? いやいや、工夫次第で10個分の働きもできますよ!!
KensingtonWorksとの連携・応用Tips
Kensington公式の「KensingtonWorks」は、Slimbladeの基本的なボタン設定やプリセット管理ができる純正ユーティリティ。
ただし、AutoHotkeyを併用する際は少し工夫が必要なこともあります。
KensingtonWorksとAutoHotkeyの共存方法
- KensingtonWorksで使うボタンは限定する:たとえば、チルトやスクロール速度だけKensingtonWorksで設定し、ボタン操作はAHKで自由に割り当てるなど。(私はこれでやってます)
- 重複設定に注意:おなじボタンに両方が鑑賞すると競合します。とくにXbutton1やXbutton2にはどちらか一方のみで設定を。
- KensingtonWorksで「無効」に設定→AutoHotkeyで活用:これが一番スムーズ。純正で割り当てを外しておけばAHKで自由に制御できます。
- その他、トラックボールやマウスを制御するソフトが動いている場合は停止する。
応用例:片方のボタンだけ純正設定、もう片方はAHKで拡張
- 左奥ボタン → KensingtonWorksで「戻る」に固定
- 右奥ボタン → AutoHotkeyで「動画停止/早送り/再生速度調整」など複合動作に
補足:KensingtonWorksが起動中に効かない?
- KensingtonWorksを終了して動作確認する
- 一時的に設定をリセットして競合チェック
- 管理者権限でAutoHotkeyを実行してみる
─── あわせて見て欲しい記事 ───




コメント