Ubuntuでマルチタッチジェスチャを構成する方法を知りたかった。Windowsでは、synapticsドライバーソフトウェアを使用してこれを行うことができます。
synclient
タップ、手のひら検出、スクロールなどの設定にはすでに使用していますが、ジェスチャーのサポートも必要です。可能ですか?
システム情報:Ubuntu 12.10、Synapticsクリックパッド
Ubuntuでマルチタッチジェスチャを構成する方法を知りたかった。Windowsでは、synapticsドライバーソフトウェアを使用してこれを行うことができます。
synclient
タップ、手のひら検出、スクロールなどの設定にはすでに使用していますが、ジェスチャーのサポートも必要です。可能ですか?
システム情報:Ubuntu 12.10、Synapticsクリックパッド
回答:
2016年9月15日の更新Multitouchはそのまま使用でき、以下にリストされているすべてのソリューション(mtrack、synclient、ginnなど)が混乱するため、それらを必要とする古いカーネルから更新する場合は、すべて削除しますヘルパーアプリを使用して、デスクトップマネージャーのタッチパッドUIを使用して、すぐに使用できるカーネルの動作を試してください。必要なことを実行する必要があります。さらにジェスチャーやものが必要な場合は、イージーストロークを追加します。初期の4.0カーネルの一部は動作しませんが、現在は標準のカーネル入力ドライバでソートされ、少なくともカーネル4.1.32以降は問題なく動作します。現在のLTSカーネル4.4は、4.7と同様に正常に機能します。
アップデート9/2015 ...カーネル3.14以上では、ほとんどのマルチタッチが組み込まれているため、問題がある場合はmtrackをアンインストールしてください。カーネル3.14以降、組み込みのマルチタッチドライバーとeasystrokeだけが正常に機能していますが、4.0以降では、アップルのトラックパッドを壊す退行があるようです。しかし3.18カーネルはうまく機能します。
多数のソリューションがありますが、そのほとんどはまだ少し中途半端です。文書化されたものの多くは古くなっているので、グーグルの日付を必ず確認してください。
Ubuntuには、マウス/タッチパッド設定アプレットの基本的なジェスチャー(2本指)のサポートが組み込まれています。
ランダムに結ばれているのがわかり、2本の指のスクロールは不思議なほど灰色になり、それを取り戻すためにグーグルの長いチェーンに引きずり込まれました。
それから私はtoucheggを試しました。
これは設定が最も簡単で、適切な指示がありますが、問題に対する古いデーモンソリューションに基づいています。
Ubuntuのマルチタッチハウツー(2つのリンクしか含めることができないため、グーグルで検索する必要があります)が古くなっていましたが、徐々に作業が進んでいます。パッチ適用ソリューションの別のセットを提供しますが、更新中です。
現在使用しているソリューションは、mtrack(リポジトリ内)とeasystroke(ソースからコンパイルする必要があります)を組み合わせたものです。
Mtrackはtoucheggやginnのようなアドホックソリューションではなく、マルチタッチのカーネルバージョンをサポートしていますが、easystrokeは、mtrackの上で今のところうまく機能する別のデーモンソリューションです。
Mtrackのアプローチは、開発の方向性のようです。
使用する場合は他のもの(ginn、touchegg)をアンインストールし、リポジトリからmtrackをインストールします。フルネームはxserver-xorg-input-mtrackです。
設定するのは苦痛で、3本の指でスワイプすることはありません。人々のさまざまな設定ファイルについては、スレッドの最後にあるリンクを参照してください。私はリンゴの魔法のトラックパッドを使用していますが、それはかなり良いですが、ダブルタップとドラッグに迷惑な不具合がありますが、たとえばウィンドウを移動するのは不規則です。回避策は、実際のボタンクリックを使用してウィンドウを移動するか、ダブルタップしてからウィンドウを移動する前に1秒間待機することです。
私はeasystrokeを見つけましたが、mtrackがguiを取得するまで、プログラムをコンパイルするのに十分な冒険をしたいなら、それを試してみてください。
実行してコンパイルした後make -j2
とではインストールsudo make install
して、それを起動するeasystroke -g
GUIを取得しに行くためのwikiページの説明。
整理する必要があるもう1つの問題は、ドライバーです。
mtrackを使用する場合、mtrackドライバーが最後に読み込まれるようにファイルの番号を付け直す必要がある場合があります。そうしないと、synapticsの設定がすべてを取得します。
これらのドライバーは/usr/share/X11/xorg.conf.dに保存されています。
mtrackドライバーを/etc/X11/xorg.conf.dにコピーし、そのフォルダー内の設定を編集して(リンクされているスレッドとREADMEを参照して方法を確認してください)、3本の指の良さを得る(またはeasystrokeを使用する)場合は、名前を変更します50-mtrack.confが60-mtrack.confになるようにファイルをより大きな数値にすると、シナプスドライバーがタッチパッドを半分の時間でつかむことになります。
ファイルを/ etcに置くことは、/ usrファイルのような更新で上書きされず、最後に読み取られるため、/ usrのデフォルトのドライバーよりも優先されることを意味します。
お役に立てれば。これはかなり活発に開発されている分野なので、私が書いたものはおそらく1年以内に陳腐化するでしょう。
githubで入手可能なmtrackの続きを使用することを提案したかっただけです:https : //github.com/p2rkw/xf86-input-mtrack。3本指ドラッグ(readmeの下部にある指示)をサポートしています。
また、easystrokeと組み合わせて使用していますが、この単純な変更により、easystrokeを変更して絶対デバイスに関する制限を削除する必要がありました(これを行う正確な理由は覚えていませんが、申し訳ありません):
diff --git a/handler.cc b/handler.cc
index 8830ea2..c9e3f91 100644
--- a/handler.cc
+++ b/handler.cc
@@ -563,7 +563,7 @@ protected:
}
protected:
void move_back() {
- if (!prefs.move_back.get() || (xstate->current_dev && xstate->current_dev->absolute))
+ if (!prefs.move_back.get())
return;
XTestFakeMotionEvent(dpy, DefaultScreen(dpy), orig_x, orig_y, 0);
}
また、ジェスチャーのエラーマージンを減らしました。
diff --git a/gesture.cc b/gesture.cc
index 8531c08..0df990e 100644
--- a/gesture.cc
+++ b/gesture.cc
@@ -104,9 +104,9 @@ int Stroke::compare(RStroke a, RStroke b, double &score) {
return -1;
score = MAX(1.0 - 2.5*cost, 0.0);
if (a->timeout)
- return score > 0.85;
+ return score > 0.95;
else
- return score > 0.7;
+ return score > 0.92;
}
...そしてそれは素晴らしい作品です。
苦しい設定に関する補足事項:xinputを使用してその場で設定し、それに応じてxorg.confを編集するか、xinput呼び出しで起動スクリプトを作成できます。