web-dev-qa-db-ja.com

シナプス設定を編集する方法は? xorg.confの方法が機能しない

TapButton3を中央のマウスボタンとしてバインドする必要があるので、次のようにします。

synclient TapButton3=2

うまく機能しますが、再起動したり、サスペンドから復帰したりすると、設定が失われます。次のようにxorg.confを作成する必要があることを知っています

Section "InputClass" 
Identifier "touchpad catchall" 
    Driver "synaptics" 
    MatchIsTouchpad "on" 
    Option "TapButton3" "2" 
EndSection

しかし、これは機能しません。誰も私を助けることができますか? ...お願いします?

5
Aldo DeeJay

次の内容でSudo viを含む/etc/X11/xorg.conf.d/71-synaptics.confファイルを作成しました。

Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
        Option "TapButton3" "2"
EndSection

オプションが設定されていることを/var/log/Xorg.0.logで確認できます。

[ 91056.468] (**) Option "TapButton3" "2"

このオプションは、70-synaptics.confファイルで同様に設定したオプションとマージされました。

デバイスが異なるデバイスまたは異なるドライバーを使用している場合(/var/log/Xorg.0.logを参照)、IdentifierおよびDriver行を適切に調整する必要があります。

別のアプローチは、gnomeマウス設定プラグインを無効にすることです。

  • これを行うには、ターミナルを Alt+Ctl+T、次にdconf-editorをインストールします。

    apt-get install dconf-editor hleinone

  • Dconf-editorを起動します

    dconf-editor

ツリーをorg.gnome.settings-daemon.plugins.mouseに移動します。

  • 最後に、アクティブボックスのチェックを外します

この後者のアプローチの欠点は、[システム設定]-> [マウスとタッチパッド]で構成した設定が有効にならないことです。

コメントからのこのアプローチは、 here からhleinone経由です。

3
John S Gruber

古い答え

代わりにClickFinger3を使用できます。これはTapButton3に非常に近いものです。

私はまったく同じ問題に遭遇しました。 TapButton3に加えて、私のconfファイルはClickFinger3を2に設定します。

Section "InputClass"
        Identifier "touchpad bind middle button"
        MatchDriver "synaptics"
        Option "TapButton3" "2"
        Option "ClickFinger3" "2"
EndSection

ただし、私のXorg.0.logには次のものがあります。

[    35.860] (**) Option "TapButton3" "2"
[    35.860] (**) Option "ClickFinger3" "2"

皮肉なことに、ClickFinger3は非常にうまく機能しますが、TapButton3は機能しません。

また、スタートアップアプリケーションスクリプトのsynclient TapButton3=2 ClickFinger3=2ファイルに.xsessionrcを配置しようとしました。

私はこれを試しました

xinput set-prop --type=int --format=8 "SYNA2393:00 06CB:75E2 Touchpad" "Synaptics Tap Action" \
       `xinput list-props "SYNA2393:00 06CB:75E2 Touchpad" | sed -n 's/,//g; s/Synaptics Tap Action.*:\(.*\)./\1/p'` 2

そしてそれ

xinput set-prop --type=int --format=8 "SYNA2393:00 06CB:75E2 Touchpad" "Synaptics Tap Action" 2 3 0 0 1 3 2

無駄に、それらのどれもTapButton3で動作せず、すべてがClickFinger3で動作します。私はそれについて研究するために1日(文字通り、誇張なし)を過ごし、この結論に到達しました。

この line のコードは、この奇妙な動作の原因である可能性が非常に高いです。

参照:
14.04のマルチタッチジェスチャの状態/ Unity
nityで任意のデフォルトのマルチタッチジェスチャを無効にするにはどうすればよいですか?


新しい回答

上記を書いた後、本当のsolutionを見つけました。

誤って、GUIを介してマウスとタッチパッドの[タップしてクリック]オプションをオフにし、synclientの出力を読み取りました。タップに関連するすべての値が0に設定されていることに気付きました。これにより、Unityマウスパネルはログイン時にsynclientを実行し、"Synaptics Tap Action"2, 3, 0, 0, 1, 3, 0に設定します。

推測を検証するには、このGUIを無効にする必要がありました。私は「ubuntu unity control center override synclient」をグーグル検索し、これを link が上位の結果として得ました。

GNOMEマウスプラグインを無効にして実験を行いました。

gsettings set org.gnome.settings-daemon.plugins.mouse active false

その後、再起動しました。ログイン後にTapButton3が最終的に機能しました。じっと見て、GUI設定で設定した通常の自然な(逆方向の?)スクロールがすぐに見つかりましたが、機能しなくなりました。いくつかの調査の後、GNOMEマウスプラグインによって行われた以下のアクション(おそらく不完全)を収集しました。

synclient HorizTwoFingerScroll=1 VertEdgeScroll=0
syndaemon -i 1.0 -t -K -R &

これで、ユーザーごとにタッチパッドの設定を行うことができます(これは好みです)。そこでsynaptics.confファイルを削除し、~/.xsessionrcとして次のように書きました。

synclient TapButton3=2 ClickFinger3=2
synclient HorizTwoFingerScroll=1 VertEdgeScroll=0
# the following ampersand is significant
syndaemon -i 1.0 -t -K -R &
# natural scrolling
synclient VertScrollDelta=-28 HorizScrollDelta=-28

参照:
synclient設定を固定するにはどうすればよいですか?

1
Lei Zhao