i3wmにマルチタッチジェスチャーをバインドさせてデスクトップを変更するにはどうすればよいですか?


16

私がOSXに本当に欠けている機能の1つは、デスクトップを変更するためのマルチタッチジェスチャーです。いずれかの方向に3本指でスワイプすると、次/前のフルスクリーンアプリまたはデスクトップに移動できます。タイルウィンドウマネージャーを備えたLinuxでも同じ機能が欲しいです。私は現在i3wmを使用していますが、誰かが説得力のある理由を提供できる場合は、喜んで切り替えます。

私の.config/i3/configファイルには次の行があります

# multitouch gestures
bindsym --whole-window $mod+button10 workspace prev_on_output
bindsym --whole-window $mod+button11 workspace next_on_output

xev私によると、私のタッチパッドでbutton10 / button11を正しく設定しています。--whole-window(フラグのドキュメントによる)とは、私の知る限り、私は、画面上のこの結合の任意の場所を使用できるようにする必要があります。しかし、バインディングは、マウスがウィンドウのタイトルバーの上にあるときにのみ機能します。

私の設定で何か問題がありましたか?または、この機能を取得する別の方法はありますか?

編集:私はv 4.10.3を実行しています

$ i3 -v
> i3 version 4.10.3 (2015-07-30, branch "4.10.3") © 2009-2014 Michael Stapelberg and contributors

Macハードウェアでもi3wmを多用していて、3本指でスワイプするのを見逃しているので、興味深いコンセプトです。「全ウィンドウ」パラメータは必要ないと思いますが、bindsymは関係なく動作します。現時点ではテストできませんfocus_follows_mouse noが、影響があるかどうか確認してみましたか?
Eric Duncan

1
私はまだ2019年にこれに対する解決策を探しています
ガブリエルジーグラー

@GabrielZieglerは私の答えを確認してください。
Enetheru

回答:


2

i3-wmはデフォルトでマルチタッチジェスチャーをサポートしていないため、それらを検出してコマンドを起動できる外部ツールが必要です。

libinputのアーチウィキを少し読んだ:https ://wiki.archlinux.org/index.php/Libinput

  1. からlibinput-gesturesをインストールします aur
  2. 入力グループのメンバーとして自分を追加して、タッチパッドデバイスを読み取る権限を付与します。 sudo gpasswd -a $USER input
  3. 次の2行またはそれらのバリエーションを~/.config/libinput-gestures.confファイルに追加します。
gesture swipe up 3 i3-msg workspace prev
gesture swipe down 3 i3-msg workspace next
  1. セッションから完全にログアウトするか、単に再起動します。
  2. libinputデーモンを起動します。
libinput-gestures-setup autostart
libinput-gestures-setup start

うまく機能させることができませんでした。ドライバーとXorgの設定があなたのものと比べて少しずれていると思います。libinputジェスチャがジェスチャを認識しているかどうかを確認するためにジェスチャをテストする方法はありますか?
ガブリエルジーグラー

@GabrielZieglerがgithubリポジトリでバグレポートを提出します。開発者自身がgithub.com/bulletmark/libinput-gestures
Enetheru

うまくいきました!インストール後にいくつかの設定手順を実行する必要があります!ありがとうございました!
Gabriel Ziegler、

1
どんなステップ?あなたがコメントでそれらをここに置く覚えていることができれば、誰かが中にそれらを追加するには私の答えを編集することがあります。
Enetheru
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.