【AutoHotkey/ステアーマウス/barrier/input-leap】G502Xを購入した理由&高速スクロールホイールの感度設定&速度設定
世界で最も売れているゲーミングマウスの最新機種、Logicool G502X を購入しました。
G502Xの購入を決意した理由
私が長年愛用していた「Performance Mouse M950」は廃盤になってます。安定した高速スクロールが使えて、さらにチルトホイールが使えるマウスは減っているようです。
予備として持っていた「M500」は安物ながら悪くはなかったですが、高速スクロールが若干カクつきます。新しい「M500s」も試したものの、印象はほとんど変わりません。
ビジネス用途としては定番の「MX MASTER 3S」は、チルトホイールが使えない、つまみ持ちでクリックしにくい、ドライバのせいか Premiere でホイールの調子が悪いです。
となるとゲーミングマウスしか選択肢に残らないのですが、Razerは高いしホイールの評判が悪い。実店舗で触ってみたけど、すぐ購入したいと思うほどではありませんでした。
結局ロジクールに戻ることになりますが、マウスの形は頻繁にアップデートされるので移行が大変。G502シリーズは売れてるし、2014年から大きな仕様変更もないので安心。
AutoHotkey&ステアーマウスで感度設定
G502X は、Windowsはロジクールの純正ドライバ「G HUB」利用が必須。不安定なので正直使いたくないもの、オンボード設定もよく初期化するので、代替案はなさそう。
そして G502X はホイール感度が良すぎで逆に使いにくいです。「G HUB」でも感度を設定する箇所は無いので、AutoHotkeyを使い意図的に感度を悪くする設定を加えました。
;あらかじめWindows側のホイール速度を最低値(1)にしておくこと
;参考:<https://hail2u.net/blog/coding/autohotkey-accelerate-wheel-scroll.html>
#MaxHotkeysPerInterval 500
WheelUp::
WheelDown::
wheeltype := A_ThisHotkey
;[G502X用]150ミリ秒以下のホイールは無視
if (wheeltype <> A_PriorHotkey || A_TimeSincePriorHotkey > 150) {
wheeled = 0
} else {
wheeled = 1
}
;[G502X用]上スクロールの感度高いので調整
if (wheeltype == "WheelUp") {
wheelspeedtime = 250
}
if (wheeltype == "WheelDown") {
wheelspeedtime = 350
}
;加速スクロール
if (wheeltype <> A_PriorHotkey || A_TimeSincePriorHotkey > wheelspeedtime) {
wheelcount = 1
} else if (wheelcount < 8) {
wheelcount++
}
;カウント
count := (wheelcount // 8) + wheeled
;デバッグ用。
;ToolTip, %count%`, %wheelcount%`, %wheeled%
;発火
MouseClick, %wheeltype%, , , %count%
return
ちなみにMacは「ステアーマウス」という神アプリがあるので「G HUB」は不要。ステアーマウスで感度調整して終わりですが↑みたいにホイールを無視する設定はできません。
とはいえ、ステアーマウスの設定だけストレスないレベルまでは改善できました。あと Karabiner を入れてる場合は G502X を全てOFFにしないと挙動がおかしくなるので注意。
barrier(input-leap)でスクロール量調整
マウス&キーボード共有化ソフトの barrier(input-leap) でサーバー側をWindows、クライアント側をMacで使うとホイール速度が速すぎます。かつ変更する箇所がありません。
この手のソフトはホイール制御を自前で用意してて AutoHotkey でも制御できず。有料ソフトの中では唯一 ShareMouse のみ設定変更できましたが、日本語に対応してません。
一旦、barrier2.4.0のOSXScreen.mm1434行目の数字をいじるしかなさそうです。x は 120 や 240などざっくりな値しか返ってこなかったので、加速はAutoHotkeyで処理。