terminalで以下を実行
左90度回転
xinput set-prop 13 'Coordinate Transformation Matrix' 0 -1 0 1 0 0 0 0 1
xrandr -o left
右90度回転
xinput set-prop 13 'Coordinate Transformation Matrix' 0 1 0 -1 0 0 0 0 1
xrandr -o right
180度回転
xinput set-prop 13 'Coordinate Transformation Matrix' -1 0 0 0 -1 0 0 0 1
xrandr -o inverted
0度に戻す
xinput set-prop 13 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1
xrandr -o normal
上記コマンド中13
は各端末のデバイスidに書き換える。
デバイスidは、以下のように、xinput
コマンドで確認可能。
kinomi@pop-os:xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Topre Corporation HHKB Professional id=10 [slave keyboard (3)]
↳ HD Webcam: HD Webcam id=11 [slave keyboard (3)]
↳ MSI WMI hotkeys id=14 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
任意の角度に回転
1 0 0 0 1 0 0 0 1
部分を書き換える
これは行列を表す
回転角度0の場合
| 1 0 0 |
| 0 1 0 |
| 0 0 1 |
反時計回りにθ回転の場合は、
| cosθ -sinθ 0 |
| sinθ cosθ 0 |
| 0 0 1 |
cos -sin 0 sin cos 0 0 0 1
に書き換える