Жесты тачпада для linux mint

Жесты на тачпаде

Доброго времени суток. На оффтопике есть очень интересные жесты, к примеру тремя пальцами смахнуть все окна, четырьмя поменять рабочий стол.

Есть ли возможность на онтопике завести такое/подобное?

А пока этот libinput доведут до ума, не проще ли https://wiki.archlinux.org/index.php/Touchpad_Synaptics использовать?

Жесты распознаются (libinput), но не видел ещё приложений, которые хотя бы свайп умели нормально обрабатывать (плавно с анимацией). Вообще с этим туго, есть только костыли вроде приведённого выше.
Ещё есть ощущение, что распознаются хуже, чем в win/mac или нужно калибровать как-то.

На deepin работает из коробки. Весьма интересно

так оно уже мертвенькое, и вообще все эти плюшки будут уже в вяленом с либинпутом (как и нормальная работа сенсорного экрана)

AFAIK либинпут может бэкэндом и в X11. Проблема в том, что поддержку мультитача (swipe, rotate, zoom) должны впилить себе приложения и тулкиты, чего не наблюдается даже в дефолтных хиганутых приложениях гнома.

А ещё тачпады калибровать нужно, гугл, например, тестирует нормальную работу тачпада на хромбуках финскими роботами.

Источник

Touchegg — жесты для тачпада на X11

Введение

Лично для меня, Gnome 40 раскрыл потенциал использования тачпада. Когда я его только попробовал, сразу же стало дико удобно испольпользовать жесты. Однако по некоторым причинам я не могу использовать Gnome и Wayland.

Touchegg — программа, позволяющая расширить возможности тачпада, добавляя дополнительные жесты, которые работают только под X11.

Установка

Ubuntu и производные:

$ sudo add-apt-repository ppa:touchegg/stable
$ sudo apt update
$ sudo apt install touchegg

Также можно скачать и установить через deb-пакет.

Fedora:

/Downloads # Или любая другая директория, где лежит скачанный пакет.
$ sudo dnf install touchegg-*.rpm

ArchLinux и производные:

В Arch Linux устанавливается через AUR. Стоит обратить внимание, что по умолчанию службы не будут включены, поэтому необходимо прописать следующие команды:

$ sudo systemctl enable touchegg.service
$ sudo systemctl start touchegg

Версия для дистрибутивов на основе Arch Linux без поддержки systemd, таких как Artix, также доступна в AUR.

VoidLinux

$ sudo xbps-install touchegg
$ sudo ln -s /etc/sv/touchegg /var/service

Дополнительно

Если вы используете Gnome, то рекомендуется так же установить расширение X11 Gestures.

После установки Touchegg необходимо перезагрузить систему.

Настройка

Для настройки советуется использовать утилиту Touche, которая позволяет в графическом режиме настраивать жесты. Ее можно установить как пакет flatpak.

Установка:
flatpak install flathub com.github.joseexposito.touche

Запуск:
flatpak run com.github.joseexposito.touche

Также возможно установить нативно для Ubuntu через deb-пакет и для Arch Linux через AUR.

Помимо прочего, присутствует возможность настроить вручную, отредактировав XML-файл. Скопируйте файл конфигурации по умолчанию из /usr/share/touchegg/touchegg.conf в

/.config/touchegg/touchegg.conf (если автоматически он не создался в домашней директории).

Доступные жесты

SWIPE — жесты смахивания выполняются при синхронном движении трех или более пальцев в одном направлении. Три- это минимальное количество пальцев, которое Touchegg допускает для жестов смахивания натачпадахи два на сенсорных экранах.

PINCH — щипковые жесты выполняются, когда два или более пальца находятся на тачпаде и либо изменяют относительное расстояние друг от друга (сжимание), либо изменяют относительный угол (поворот).

TAP — жесты касания выполняются, когда два или более пальцев «нажимают» на сенсорный экран.

В целом, названия тегов говорят сами за себя:

Тег » » означает жест. Имеет следующие параметры:

  • type — вид жеста (вариации указаны выше);
  • finger — количество пальцев (для свайпа — 3-4, для остальных — 2-4);
  • direction — направление движения пальцев (для свайпа — up/down/left/right, для пинча — in/out).
Читайте также:  Linux отображать скрытые файлы

Далее идет тэг действий » «, но об ниже.

Доступные действия

Стандартные действия с окнами

Доступны следующие стандартные действия с окнами:

  • Развернуть или восстановить окно (MAXIMIZE_RESTORE_WINDOW).
  • Свернуть окно (MINIMIZE_WINDOW).
  • Закрыть окно (CLOSE_WINDOW).
  • Развернуть окно на весь экран (FULLSCREEN_WINDOW).
  • Показать рабочий стол (SHOW_DESKTOP).
  • Клик мыши (MOUSE_CLICK).

Они содержат следующие параметры:

  • animate — включаетили отключает анимации (значения: true/false);
  • color — отвечает за цвет анимации;
  • BorderColor — отвечает за цвет границы анимации.

Тайлинг (TILE_WINDOW)

Изменяет размер окна, который находится под указателем мыши, и перемещает его вправо/влево на половину экрана.

Помимо параметров прошлых действий, также содержит в себе параметр direction, который отвечает за расположение окна (значения: left/right).

Переключение рабочих столов/рабочих пространств (CHANGE_DESKTOP)

Содержит следующие параметры:

  • direction — рабочий стол/пространство, на который нужно переключиться (значения —previous/next/up/down/left/right/auto);
  • animate — включает или отключает анимации (значения: true/false);
  • AnimationPosition — указывает, на каком краю будет отображаться анимация перехода (up/down/left/right/auto);
  • color — отвечает за цвет анимации;
  • borderColor — отвечает за цвет границы анимации.

Сочетание клавиш (SEND_KEYS) и выполнение команд (RUN_COMMAND)

Также можно настроить выполнение сочетаний клавиш (SEND_KEYS) и выполнение команд (RUN_COMMAND), но я их не тестировал. Поэтому более подробно советую ознакомиться здесь (для сочетаний клавиш) и здесь (для выполнения команд)

Заключение

Таким образом, Touchegg расширяет возможности при ипользовании тачпада. Благодаря этому можно полноценно им пользоваться. Тестировал только на Gnome и KDE, поэтому про остальные DE сказать ничего не могу. Если кто-то пробовал или собирается проверить, то просьба об этом отписать в комментариях. В проверенных мной DE все работает исправно. Единственное, не факт, что поменяется цвет анимации, как минимум у меня для сворачивания окон он так и не завелся.

Надеюсь, что эта статья кому-то пригодится. Возможно что-то упустил, поэтому рекомендую дополнительно ознакомиться со всем здесь. Всем добра!

Источник

MNorin.com

Блог про Linux, Bash и другие информационные технологии

Настройка тачпада в Linux (Synaptics TouchPad)

Настройка тачпада в Linux предполагает, что драйвер тачпада позволяет делать гораздо больше, чем с ним обычно делают. Например, можно включить или выключить скроллинг двумя пальцами (как вертикальный, так и горизонтальный), включить клик одним, двумя, тремя пальцами по тачпаду, изменить направление скроллинга (если вы, например, привыкли к скроллингу на планшете). Давайте посмотрим, как же можно тонко настроить тачпад, причем из командной строки.

Условия

Прежде всего нужно обговорить, если вы упустили это в заголовке, что речь идет о настройке тачпадов, пожалуй, самого известного производителя — Synaptics. За поддержку тачпадов Synaptics в Debian GNU/Linux отвечает пакет xserver-xorg-input-synaptics. Соответственно, он должен быть установлен. Обычно он ставится по умолчанию, но проверить лишним не будет. Это можно сделать командой

И, если такой пакет у вас не установлен, а тачпад Synaptics есть, то этот пакет надо будет поставить командой

В других дистрибутивах название пакета не отличается принципиально, в некоторых даже полностью совпадает.

Программа synclient

Эта программа — основной инструмент тонкой настройки сенсорной панели (тачпада) Synaptics. Synclient использует интерфейс командной строки, формат команды следующий:

Как видите, длинных (GNU) опций нет, только короткие (Posix), и то совсем немного.

-h, -? Вывод справки
-V Вывод версии программы
-l Вывод всех используемых опций и их значений
var1=value1 Задать опции с названием var1 ее новое значение value1. Программа может в одной строке принимать сразу много разных опций. После названия переменной перед знаком равенства и после знака равенства пробелов быть не должно

Опции и их назначение

Вот список доступных опций с описанием:

Читайте также:  Linux copy folder with subfolders
LeftEdge Координаты левой стороны тачпада
RightEdge Координаты правой стороны тачпада
TopEdge Координаты верхней стороны тачпада
BottomEdge Координаты нижней стороны тачпада
FingerLow Минимальная степень нажатия. Если давление становится ниже, чем указанное, считается, что произошло отпускание
FingerHigh Максимальная степень нажатия. Если давление стало выше указанного, значит произошло нажатие
MaxTapTime Таймаут, до истечения которого касание считается одиночным нажатием. После истечения интервала считается, что происходит удержание
MaxTapMove Максимальное движение пальца, допустимое при клике по тачпаду. Его значение отбрасывается и не считается перемещением.
MaxDoubleTapTime Аналогично MaxTapTime, но для двойного клика
SingleTapTimeout Когда вы делаете одно касание, в течение данного таймаута ожидается, что последует следующее касание. Если в течение указанного временного интервала повторное касание не произошло, считается, что произошло одно касание
ClickTime Продолжительность клика. То есть, длительность касания, интервал времени, в течение которого засчитывается клик, если вы в пределах этого интервала коснулись, а затем подняли палец
EmulateMidButtonTime Интервал времени, в течение которого обрабатывается нажатие на среднюю кнопку мыши, которое может быть настроено на нажатие одним, двумя или тремя пальцами
EmulateTwoFingerMinZ Минимальный уровень давление, который будет определен как касание двумя пальцами
EmulateTwoFingerMinW Минимальное расстояние между точками нажатия, которое будет определено как касание двумя пальцами
VertScrollDelta Расстояние, на которое надо передвинуть палец для вертикального скроллинга
HorizScrollDelta Расстояние, на которое надо передвинуть палец для горизонтального скроллинга
VertEdgeScroll Включить вертикальный скроллинг при проведении пальцем вдоль правого края тачпада (1 — включить, 0 — выключить)
HorizEdgeScroll Включить горизонтальный скроллинг при проведении пальцем вдоль верхнего края тачпада (1 — включить, 0 — выключить)
CornerCoasting Опция, которая используется при скроллинге проведением пальца вдоль правой стороны тачпада. Она определяет, использовать ли продолжение скроллинга после того, как палец дошел до правого нижнего угла.
VertTwoFingerScroll Включить вертикальный скроллинг двумя пальцами (1 — включить, 0 — выключить)
HorizTwoFingerScroll Включить горизонтальный скроллинг двумя пальцами (1 — включить, 0 -выключить)
MinSpeed Минимальная скорость движения курсора
MaxSpeed Максимальная скорость движения курсора. Если максимальная скорость равна минимальной, то ускорения движения курсора не будет
AccelFactor Коэффициент ускорения курсора. Чем он больше, тем быстрее скорость увеличивается с минимальной до максимальной
TouchpadOff Выключить тачпад (0 — тачпад включен, 1 — тачпад выключен, любые значения больше 1 — включено только перемещение курсора)
LockedDrags При перетаскивании касаниями (tap-and-drag), если эта опция выставлена в 1, отпускание кнопки мыши происходит только после дополнительного клика. Это позволяет отрывать палец от поверхности тачпада до окончания перетаскивания
LockedDragTimeout Опция, определяющая, по истечении какого временного интервала после отрывания пальца от тачпада автоматически закончить перетаскивание касаниями.
RTCornerButton Какую кнопку мыши эмулировать при нажатии на правый верхний угол тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
RBCornerButton Какую кнопку мыши эмулировать при нажатии на правый нижний угол тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
LTCornerButton Какую кнопку мыши эмулировать при нажатии на левый верхний угол тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
LBCornerButton Какую кнопку мыши эмулировать при нажатии на левый нижний угол тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
TapButton1 Какую кнопку мыши эмулировать при касании одним пальцем не у края тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
TapButton2 Какую кнопку мыши эмулировать при касании двумя пальцами не у края тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
TapButton3 Какую кнопку мыши эмулировать при касании тремя пальцамине у края тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
ClickFinger1 Какую кнопку мыши эмулировать при касании одним пальцем в левой стороне тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
ClickFinger2 Какую кнопку мыши эмулировать при касании двумя пальцами в левой стороне тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
ClickFinger3 Какую кнопку мыши эмулировать при касании тремя пальцами в левой стороне тачпада (0 — отключено, 1 — левая кнопка, 2 — средняя кнопка, 3 — правая кнопка)
CircularScrolling Интересная возможность — круговая прокрутка. Это работает следующим образом: вы делаете круговые движения по тачпаду, и таким образом заменяете прокрутку колесиком мыши. По часовой стрелке — прокрутка вниз, против часовой стрелки — прокрутка вверх. 0 — выключено, 1 — включено
CircScrollDelta Угол смещения пальца относительно центра тачпада при прохождении которого генерируется такое же системное событие, как при прокрутке колесика на одно деление
CircScrollTrigger Область тачпада, при начале движения по которой будет активироваться скроллинг при использовании круговой прокрутки.
0 — любая сторона тачпада
1 — верхняя сторона
2 — верхний правый угол
3 — правая сторона
4 — правый нижний угол
5 — нижняя сторона
6 — нижний левый угол
7 — левая сторона
8 — левый верхний угол
CircularPad Если эта опция выставлена в 1, то область тачпада определяется не как прямоугольник, а как эллипс, вписанный в стороны тачпада
PalmDetect Определять нажатие ладонью. Эта опция полезна, когда вы печатаете на клавиатуре и случайно нажимаете частью ладони на тачпад. Если она включена, то при нажатии на большую площадь движение курсора будет выключено. 0 — выключено, 1 — включено
PalmMinWidth Минимальная ширина касания, при которой касание будет определено как касание ладонью.
PalmMinZ Минимальное давление, при котором будет определено касание ладонью
CoastingSpeed Скорость, с которой должны генерироваться события скроллинга, чтобы поддерживалось продолжение скроллинга при достижении пальцем стороны тачпада
CoastingFriction Количество событий скроллинга делёное на секунду в квадрате, на которые будет снижаться скорость скроллинга при достижении стороны тачпада
PressureMotionMinZ Минимальное давление пальца на тачпад, при котором будет происходить определение движения по тачпаду
PressureMotionMaxZ Максимальное давление на тачпад, при котором будет определяться движение пальцем по тачпаду
PressureMotionMinFactor Минимальный множитель усиления коэффициента давления при определении движения пальцем
PressureMotionMaxFactor Максимальный множитель усиления коэффициента давления при определении движения пальцем
GrabEventDevice Эта опция имеет смысл только при использовании событий устройств в ядре linux 2.6. При использовании других протоколов эта опция игнорируется. Если опция выставлена в 1, драйвер будет эксклюзивно захватывать устройство для обработки событий с него.
TapAndDragGesture Включить перетаскивание при помощи двойного касания (первое короткое, второе постоянное) аналогично перетаскиванию левой кнопкой мыши (0 — выключено, 1 — включено)
AreaLeftEdge Координата с левой стороны, любые движения и клики слева от которой
AreaRightEdge Включить (1) или выключить (0) область вдоль правой стороны тачпада
AreaTopEdge Включить (1) или выключить (0) область вдоль верхней стороны тачпада
AreaBottomEdge Включить (1) или выключить (0) область вдоль нижней стороны тачпада
HorizHysteresis Минимальное аппаратное расстояние по горизонтали, необходимое для генерации события движения. Может указываться в процентах
VertHysteresis Минимальное аппаратное расстояние по вертикали, необходимое для генерации события движения. Может указываться в процентах
ClickPad Является ли устройство клик-падом, то есть панелью без аппаратных кнопок
Читайте также:  Powershell ssh windows linux

Сохранение настроек

Для сохранения настроек тачпада придется вызывать команду synclient удобным для вас способом. Для этого можно сделать скрипт, который будет вызывать эту команду, и который будет запускаться при входе в учетную запись, например.

Вот как это сделать в LXDE. Создаем скрипт /home/user/bin/touchpad следующего содержания:

После этого создаем файл /home/user/.config/autostart/touchpad.desktop

И при входе в систему настройки тачпада должны подгрузиться автоматически.

Источник

Оцените статью