如何在 ubuntu 14.04 上配置 touchegg 并使用手势而不是统一手势我有 Dell xps L502x 和 synaptics 触控板
答案1
我发现了一个更简单的解决方案:只需在您的主文件夹中创建一个包含以下内容的文件“.xprofile”:
synclient ClickFinger3=0
synclient TapButton3=0
touchegg &
前两行仅当您想使用三根手指的手势时才需要。如果您省略这两行,touchegg 将只识别四根或更多手指的手势。
或者,运行以下命令执行相同操作:
echo "synclient ClickFinger3=0
synclient TapButton3=0
touchegg &" > ~/.xprofile
Tochegg 也会在每次启动时启动。这在 Ubuntu 15.04 和 Ubuntu Gnome 15.04 上对我有用,在任何其他 Ubuntu 版本上也应该有效。
答案2
您不能就这样覆盖 Unity 的 3 和 4 手指手势。从Touchégg 的常见问题解答
Unity 保留了 3 和 4 个手势,因此 Touchégg 无法使用它。
在这篇文章中,作者解释了如何禁用修改 Unity 源代码的内置手势。是为 Ubuntu 12.10 编写的,但有些评论说它也适用于 14.04。与您的问题相关的部分是(复制粘贴)
我们通过以下方式获取 Unity 源代码:
sudo apt-get build-dep unity cd /tmp mkdir unity cd unity apt-get source unity
为了禁用其内置的多点触控手势,我们
/tmp/unity/unity-*/plugins/unityshell/src/unityshell.cpp
使用文本编辑器(例如 gedit 或 Sublime Text 2)打开该文件。找到该方法
UnityScreen::InitGesturesSupport()
(Unity 6.10.0 的第 3381 行,Unity 7.0.0 的第 3287 行)后,我们注释掉所有以gestures_开头的行。它看起来是这样的:
void UnityScreen::InitGesturesSupport() { std::unique_ptr<nux::GestureBroker> gesture_broker(new UnityGestureBroker); wt->GetWindowCompositor().SetGestureBroker(std::move(gesture_broker)); /* gestures_sub_launcher_.reset(new nux::GesturesSubscription); gestures_sub_launcher_->SetGestureClasses(nux::DRAG_GESTURE); gestures_sub_launcher_->SetNumTouches(4); gestures_sub_launcher_->SetWindowId(GDK_ROOT_WINDOW()); gestures_sub_launcher_->Activate(); gestures_sub_dash_.reset(new nux::GesturesSubscription); gestures_sub_dash_->SetGestureClasses(nux::TAP_GESTURE); gestures_sub_dash_->SetNumTouches(4); gestures_sub_dash_->SetWindowId(GDK_ROOT_WINDOW()); gestures_sub_dash_->Activate(); gestures_sub_windows_.reset(new nux::GesturesSubscription); gestures_sub_windows_->SetGestureClasses(nux::TOUCH_GESTURE | nux::DRAG_GESTURE | nux::PINCH_GESTURE); gestures_sub_windows_->SetNumTouches(3); gestures_sub_windows_->SetWindowId(GDK_ROOT_WINDOW()); gestures_sub_windows_->Activate(); */ }
我们重新构建 Unity .deb 包并将其安装在我们的系统中。
cd /tmp/unity/unity-* dpkg-buildpackage -us -uc -nc cd .. sudo dpkg -i *deb sudo apt-get -f install sudo apt-get autoremove
或者,我们可能希望阻止 Unity 软件包的升级。这样,我们不必在每次发布升级时重复修补步骤。但是,我们可能会错过重要的错误修复。
以下内容阻止对 Unity 的更新:
echo "unity hold"|sudo dpkg --set-selections
注销并登录后,我们可以看到(除其他外)Unity三指拖动手势已经消失。
另一个解决方案是获取不同的桌面。
答案3
我使用 Ubuntu 14.04,不需要对 Unity 进行任何更改。我记得在 Ubuntu 的上一个版本中这是一个必要的步骤。
下面是我很久以前做的一个视频;不过,正如我所说,我使用的是 Ubuntu 14.04,刚刚安装触摸蛋按照此链接(但不执行 Unity 更改部分):
适用于运行 Ubuntu 的 Macbook Pro 的类似 OS X 的多点触控手势
我自制的视频显示它工作正常(甚至五根手指都可以)。触摸蛋配置文件在视频描述中。
Ubuntu 12.10 多手势 (Pt) - 英文教程链接
希望它有效。