Ubuntu Wiki:X-Input Coordinate Transformationの役立つ情報を読んで、私の質問に対する簡単な答えを見つけました。
これらのコマンドを使用して、入力デバイスとディスプレイの回転を揃えることができます。
最初のコマンドは、表示を回転します。左、右、通常、または反転できます。
xrandr -o <orientation>
入力デバイスを再マッピングします。
xinput set-prop '<device name>' 'Coordinate Transformation Matrix' <matrix-elements-rowwise>
2番目のコマンドは、入力装置を再マッピング(すなわち、タッチパッドまたはタッチスクリーン)<matrix-elements-rowwise>
であり0 -1 1 1 0 0 0 0 1
、0 1 0 -1 0 1 0 0 1
、1 0 0 0 1 0 0 0 1
、または-1 0 1 0 -1 1 0 0 1
; 上記の向きに対応しています。
タッチパッドとタッチスクリーンの名前はで見つけるxinput list
ことができ、どちらかで完全に無効にすることができますxinput disable <device-name>
。その後、xinput enable <device-name>
入力デバイスを再度有効にします。
私の場合、そしておそらくYoga 13(Yoga 2 Proでも)を使用している他の人にとっては、タッチスクリーンが呼び出さELAN Touchscreen
れ、タッチパッド
が呼び出されSynPS/2 Synaptics TouchPad
ます。
したがって、rotate-inverted.sh
次の内容で呼び出される短いスクリプトをホームディレクトリに配置しました。
#!/ bin / bash
#このスクリプトは、画面とタッチスクリーン入力を180度回転させ、タッチパッドを無効にし、仮想キーボードを有効にします
xrandr -o反転
xinput set-prop 'ELAN Touchscreen' 'Coordinate Transformation Matrix' -1 0 1 0 -1 1 0 0 1
xinput disable 'SynPS / 2 Synaptics TouchPad'
機内で &
次に、スクリプトを実行可能にしました
chmod u+x rotate-inverted.sh
コマンド~/rotate-inverted.sh
をシステム設定->キーボードのキーボードショートカットCtrl+ Alt+ Iに割り当てました。
ログアウトして再度ログインした後、そのショートカットを押すことでキーボードを回転させることができました。
他の回転位置についても、xinput enable 'SynPS/2 TouchPad'
とのkillall onboard
代わりにコマンドを使用して、同じタイプのことをxinput disable 'SynPS/2 TouchPad'
行いonboard &
ましたrotate-normal.sh
。
このスレッドの他の何人かは、そのようなスクリプトを
Yogaの追加ボタン(ロックボタンなど)に割り当てること、およびYogaの位置を変更したときにそれらを自動的に実行することについて議論しました。しかし、これを行う方法がわかりませんでした。