use*_*549 8 touchpad touchscreen
在圣诞节收到联想 Yoga 13 后,我对它在 Ubuntu 上的表现很满意。在显示设置菜单下或通过键入(例如xrandr -o inverted在终端中)可以轻松更改显示方向。然而,这不会旋转触摸屏(或者——不太重要的——触摸板)的输入。
我四处寻找解决此问题的方法,并找到了两个有希望的来源。
(1) http://cc.oulu.fi/~rantalai/synaptics/。在此处安装软件包并运行建议的命令会旋转显示屏和触摸板输入(但不是触摸屏的输入)。
(2) http://www.elfsternberg.com/2013/05/25/thinkpad-yoga-ubuntu-12/。这个网站推荐更新一个输入包,我没试过。
通过阅读Ubuntu Wiki: X - Input Coordinate Transformation 上的有用信息,我找到了我的问题的直接答案。
这些命令可用于对齐输入设备和显示器的旋转:
第一个命令旋转显示,可以向左、向右、正常或反转:
xrandr -o <orientation>
重新映射输入设备:
xinput set-prop '<device name>' 'Coordinate Transformation Matrix' <matrix-elements-rowwise>
第二个命令重新映射输入设备(即,触摸板或触摸屏),其中<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' '坐标变换矩阵' -1 0 1 0 -1 1 0 0 1
xinput 禁用“SynPS/2 Synaptics 触摸板”
在船上 &
然后我使脚本可执行
chmod u+x rotate-inverted.sh
Run Code Online (Sandbox Code Playgroud)
和分配的命令~/rotate-inverted.sh到键盘快捷键Ctrl+ Alt+I在
系统设置- >键盘。
注销并重新登录后,我可以通过按该快捷键来旋转键盘。
我对其他旋转位置做了相同类型的事情,使用命令xinput enable 'SynPS/2 TouchPad'andkillall onboard而不是xinput disable 'SynPS/2 TouchPad'and onboard &for rotate-normal.sh。
该线程上的其他一些人讨论了将此类脚本分配给
Yoga上的额外按钮(例如锁定按钮)以及在更改 Yoga 的位置时自动执行它们;但我不知道该怎么做。