Как сделать так, чтобы i3wm связывал мультитач жест для смены рабочего стола?
Одна особенность, которую мне действительно не хватает в OSX, - это жесты с несколькими касаниями для смены рабочих столов. Проведите тремя пальцами в любом направлении, чтобы перейти к следующему / предыдущему полноэкранному приложению или рабочему столу. Я бы очень хотел иметь такую же функцию в 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
У меня кнопка 10/ кнопка 11 настроена правильно с моей сенсорной панелью. --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
2 ответа
I 3-wm не поддерживает жесты мультитач по умолчанию, поэтому необходим внешний инструмент, который может их обнаружить, а затем запустить команды.
Я сделал небольшое чтение архива для libinput: https://wiki.archlinux.org/index.php/Libinput
- Установите libinput-жесты из
aur
- Добавьте себя в качестве члена группы ввода, чтобы получить разрешение на чтение устройства с сенсорной панелью:
sudo gpasswd -a $USER input
- Добавьте эти две строки или их вариант в
~/.config/libinput-gestures.conf
файл:
gesture swipe up 3 i3-msg workspace prev
gesture swipe down 3 i3-msg workspace next
- Выйдите из сеанса полностью или просто перезагрузите компьютер.
- Запустите демон libinput:
libinput-gestures-setup autostart
libinput-gestures-setup start
Для меня шаг 5 @enetheru не сработал должным образом иlibinput-gestures-setup
не запустился автоматически при перезагрузке. Но я исправил это, просто активировав жесты в файле конфигурации i3 следующим образом:
exec --no-startup-id libinput-gestures-setup start