github code: https://github.com/yabeenico/thinkpad-trackpoint-keyboard-ii/blob/main/scroll.ahk
目標
ThinkPad TrackPoint Keyboard II で Windows との Bluetooh 接続時にスクロールとミドルクリックを両立させたい。
スクロールはミドルボタンを押しっぱなしにしてトラックパッドを前後に倒すことで実現する。
現状
- USB ドングルで接続した場合:
- 普通に可能 (別途ドライバ不要)
- Bluetooth 接続の場合:
- ドライバ1 をインストールし、"ThinkPad Preferred Scrolling" にチェックを
- 入れた場合: スクロールだけ実現
- 入れない場合: ミドルクリックだけ実現
- ドライバをインストールしない場合:
- ミドルクリックだけ実現
- ドライバ1 をインストールし、"ThinkPad Preferred Scrolling" にチェックを
解決策
以下の AutoHotkey スクリプトを常駐させれば良い。
なおドライバは不要。
ドライバをインストールする場合は "ThinkPad Preferred Scrolling" のチェックを外す。
#MaxHotkeysPerInterval 2000
#SingleInstance force
WheelUp:: hookWheelUp()
global isWheelUP := false
hookWheelUp(){
send {Wheelup}
isWheelUp := true
}
WheelDown:: hookWheelDown()
global isWheelDown := false
hookWheelDown(){
send {WheelDown}
isWheelDown := true
}
; MButton を無効化
MButton::return
MButton up::hookMButtonUP()
hookMButtonUP(){
; MButton を押して離すまでにスクロールされなかった場合、MButton を押す
if(!(isWheelUp | isWheelDown)){
send {MButton}
}
isWheelUp := false
isWheelDown := false
}