MENU
カテゴリー

Slimblade×AutoHotkeyで魔改造!トラックボールをさらに多機能化してみたよ

Slimblade×AutoHotkeyで魔改造!トラックボールをさらに多機能化してみたよ

大玉&人差し指トラックボールを代表するKensington Slimblade(Pro)には、もうこれなしのPCライフは考えられないってくらいお世話になっていますが、一点だけ物足りない部分があります。

それは・・・ボタンが4つしかないということ!

KensingtonWorksを使うことで、2ボタン同時押しも可能になったりするわけですが、他ボタン派の私としてはまだまだ物足りない…

そうだ! AutoHotkeyを使えばいいじゃないか!!

目次

なぜSlimblade ProとAutoHotkeyを組み合わせるの?

上記の通り、KensingtonWorksを併用することで、Slimblade Proの数少ないボタンにも8つの機能を割り当てできるわけですが、たとえば!

  • 右クリックの長押し
  • 左クリック+ホイール操作
  • 右クリック+ホイール操作
  • それらの機能をアプリごとに切り替える

みたいなことができたら、こんな便利なことはないと思いませんか? あなたもそう思いますよね?

ということで、AutoHotkey(v2)を使って、そんな夢のような機能を追加してしまおうという回です。

今回は私が愛用しているSlimblade Proを想定したセッティングをしていきますが、別のトラックボールとかマウスでもやることはおなじなので、興味がある人は参考にしてもらえればと思います。

まずは準備から。AutoHotkey v2のインストール

とにもかくにも、まずはAutoHotkeyをインストールしないことには始まらない! とやっていくわけなんですが、ここで使うのは「AutoHotkey ”v2”」でないといけないので、インストール時はご注意ください。

STEP
AutoHotkey公式サイトにアクセス

まずは、AutoHotkey 公式サイトにアクセスし、「Download」ボタンをクリック。

STEP
AutoHotkey v2をダウンロード

次の画面で、「Download v2.0」をクリックして、AutoHotkey v2をダウンロード。

STEP
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

YouTubeでは「 Shift + . 」「 Shift + , 」が再生速度の調整ショートカットに対応しています。

アプリごとに機能を切り替える方法

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。

アプリ名実行ファイル名
Chromechrome.exe
Edgemsedge.exe
Firefoxfirefox.exe
MPC-BEmpc-be64.exe
MPC-HCmpc-hc64.exe
PotPlayerpotplayermini64.exe
Notepadnotepad.exe

アプリ名の調べ方は、AutoHotkey Window Spyタスクマネージャーを使うと便利!

よく使うスクリプト構文の基本解説

AutoHotkeyを使って複雑な操作をしたいときに役立つ、定番の書き方を紹介します。

1.ボタンの長押し検出

XButton2:: {
    KeyWait("XButton2", "T0.5")
    if GetKeyState("XButton2", "P") {
        MsgBox("長押しされた!")
    } else {
        Send("{Space}")
    }
}

KeyWaitで0.5秒待って、まだ押されていれば「長押し」と判定!


例:右クリック長押しで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
}

A_TickCountを使って「前回との時間差」でダブルクリックを見分けます。


例:右クリックのダブルクリックで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」が発動するスクリプトをファイル化してみましょう。

STEP
メモ帳などのテキストエディタを開く

デスクトップでもどこでもいいので、適当な場所にテキストファイル(.txt )を新規作成します。

STEP
AutoHotkeyのスクリプトをコピペ

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

STEP
拡張子を.ahkにしてファイルを保存

上で作ったファイルを、「ファイル」→「名前をつけて保存」で保存します。

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

スクリプトを実行する

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


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

スクリプトの内容が間違っていなければ、指定した操作ができるようになります。

逆に終了したいときは、タスクトレイのアイコンを右クリック→「Exit」でスクリプトの終了ができます。

作ったAHKファイルはいつでもテキストで編集できます。自分専用のスクリプトコレクションを作るのもおすすめですよ!

スクリプトを自動起動する方法

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を実行してみる

KensingtonWorksはたしかに便利ですが、細かい自動化や多機能化はAHKのほうが自由度高し。使い分けがカギ。


─── あわせて見て欲しい記事 ───

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

よっしーのアバター よっしー アラフォー専業ブロガー

ガジェットをこよなく愛するアラフォー専業ブロガー。一日一回はキーボードに触らないと指がむずむずしてくる文字打ちたい病。デジモノ&サービスをゆる~くながらも的確に紹介&レビューしていきます。

コメント

コメントする

目次