土曜日, 4月 18, 2020

マウスをキーボードで制御するi3wm

ペンタブかトラックパッドで絵とブラウジングとゲーム程度しかしないDebianでキーボード制御が主体のi3wmを使い時折TTYでひたすらmocpを起動しているというマウスとキーボードの反復横飛び環境がしんどくなってきたので、Windowsにあるマウスキー機能のようにNumlockを切ったテンキーでマウスを制御したい。

参考:http://epian-wiki.appspot.com/wiki/Memo/20120203162235/%E3%83%9E%E3%82%A6%E3%82%B9%E3%82%92%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%A7%E6%93%8D%E4%BD%9C%E3%81%99%E3%82%8B%20on%20Gentoo

Ubuntuなどではアクセシビリティ機能から選択できるらしいけど謎の理由により自機のDebianには入っていなかったので、xdotoolなるものをaptから導入。

それで、i3の設定ファイルにキーバインドを足す。キーコードはxevコマンドを使って探そう。
#xdotool カーソル
bindsym KP_Left exec xdotool mousemove_relative -- -5 0
bindsym KP_Right exec xdotool mousemove_relative 5 0
bindsym KP_Up exec xdotool mousemove_relative -- 0 -5
bindsym KP_Down exec xdotool mousemove_relative 0 5
# カーソル斜め移動
bindsym KP_Home exec xdotool mousemove_relative -- -5 -5
bindsym KP_Prior exec xdotool mousemove_relative -- 5 -5
bindsym KP_End exec xdotool mousemove_relative -- -5 5
bindsym KP_Next exec xdotool mousemove_relative -- 5 5
#xdotool カーソル 多め
bindsym Mod1+KP_Left exec xdotool mousemove_relative -- -50 0
bindsym Mod1+KP_Right exec xdotool mousemove_relative 50 0
bindsym Mod1+KP_Up exec xdotool mousemove_relative -- 0 -50
bindsym Mod1+KP_Down exec xdotool mousemove_relative 0 50
# カーソル斜め移動 多め
bindsym Mod1+KP_Home exec xdotool mousemove_relative -- -50 -50
bindsym Mod1+KP_Prior exec xdotool mousemove_relative -- 50 -50
bindsym Mod1+KP_End exec xdotool mousemove_relative -- -50 50
bindsym Mod1+KP_Next exec xdotool mousemove_relative -- 50 50 
bindsym KP_Insert exec xdotool click 1
bindsym KP_Delete exec xdotool click 3
Windowsのアレと同じくテンキー1379に斜め移動とAltを同時押しで多めに移動するようにしてもらう。
なぜかShiftが機能しない……? と思ったらShift+テンキーでNumlock切り替えによって使えなくなった側のを一時的に使うという、もしかしたら自分のキーボード特有の機能のせいだった。なのでAltキーに当てた。


てことはこれでFPSゲーがキーボードひとつで出来る……!?

0 件のコメント:

コメントを投稿