[РЕШЕНО] touchegg мультитач

Не совсем по теме, но все же связано с железом.

Давно, еще под Убунтой, пробовал ставить touchegg. Даже помню, что появился аплет настройки. Но это наложилось на смену ноутбука и забылось. А все же хочется наладить. Поиск по данному форуму по слову touchegg дает нулевую выдачу. Простая установка из Ауры ничего вроде не дает.

Спрошу наудачу - никто не сталкивался?

upd 2014-04-05
Тем временем внезапно обнаружился проект https://github.com/BlueDragonX/xf86-input-mtrack. Сам еще не пробовал. Ключевая разнича с Точчегом - Точчег позволяет сделать локальные настройки (индивидуальные настройки поведения тачпада в зависимости от того, из какой программы вызывается), а проект с гитхаба - глобальные настройки. В свою очередь локальные настройки могут неадекватно срабатывать - например, паннель запуска Гнома (док) точчегом видится как отдельная программа, что вроде и логично, но требует внимания.
Сам себе отчитываюсь -

yaourt -S touchegg

UPD - см. http://archlinux.org.ru/forum/post/122533/. Т.е. можно ставить не из репозитория Ауры, а либо из Ауры с учетом патча и патча на патч (в исходниках модификация критерия распознавания Вращения и в патче опечатка), либо сразу брать собранный мною пакет.
Соглашаемся со скачиванием и установкой. Тянуть второй пакет, который touchegg-rotate_threshold не надо - тянет с собой кучу зависимостей и в итоге все равно не ставится. В качестве варианта надо корректировать установочный скрипт и делать симлинк на библиотеки.

В конфиге Иксов правим /etc/X11/xorg.conf.d/50-synaptics.conf (это чтобы отнять от Иксов управление тремя пальцами) -
      Option "ClickFinger3" "0"
      Option "TapButton3" "0"
#чтобы на всякий случай иметь правую или среднюю кнопку мыши кликом по тачпаду-
      Option "ClickFinger2" "3"

Перезапускаем иксы.

Далее, для тренировки, освоения и настройки, в терминале запускаем (от пользователя, а не от root)-

touchegg

Сразу при запуске он напишет, какие виды событий touchegg готов различать.
А файл конфига открываем на редактирование -

medit /home/username/.config/touchegg/touchegg.conf
До создания окончательной, или близкой к окончательной редакции конфига не надо touchegg записывать в автозагрузку. Отрабатывая содержание конфига лично под свои предпочтения следует в окне треминала смотреть на реакцию tochegg и реакцию программ. Почему? - потому, что проще сохранить, даже не закрывая, файл конфига и в окне терминала прибить touchegg (Ctrl+c), чем каждый раз перезапускать Иксы. А вот после завершения формирования конфига можно и указать на автозагрузку, от root -

echo '#!/bin/sh' > /etc/gdm/PostLogin/Default
echo 'touchegg' >> /etc/gdm/PostLogin/Default
chmod +x /etc/gdm/PostLogin/Default

Впрочем, лично сам просто прописал через tweak-ер гнома автозапуск touchegg.

Список возможных действий -
https://code.google.com/p/touchegg/wiki/AllActions

Действия настраиваются вообще, т.е. применительно ко всему, и в разрезе программ - т.е. одни и те же действия в разных программах могут иметь разные эффекты, на вкус пользователя. По моим наблюдениям настройки Иксов (гнома) сильнее (перебивают) настройки touchegg - это видно по попытке переназначить тап 2 и 3 пальцами. Вообще пока лично на моем примере отдать в управление touchegg действия 1-2 пальцев не удается, удается от 3 и выше.
Если запустить touchegg в терминале, то будет видно (для отладки как раз самое то), как он обрабатыват работу с тачпадом (например, как конкретно определяет имя программы, в торой происходит нажатие - Mozilla Firefox воспринимает как Firefox, регистр имеет значение), как конкретно воспринимает ваши магичесские пассы пальцами (запросто может видеть 4 вместо 3 пальцев, вместо тапа видеть драп и т.п.) и исходя из этого корректировать настройки (после каждого изменения конфига touchegg надо перезапускать). Очень часто в одном действии находит признаки сразу двух - наиболее часто Щипок, его моеж примешивать к любому действию (и в самом деле к тому есть основания - пальцы не движутся параллельно). Так что не следует настраивать Щипок 5 пальцами и Перетаскивание 5 пальцами. Отмечено, что события Перетаскивание (DRAG) и тап система различает лучше всего. Щикпи и Смахивание хуже, часто путает с DRAG. Возможно, это зависит от конкретного экзепляра тачпада, возможно от пальцев. Т.е. настроить масштабирование разведением-сведением пальцев у меня не получается, а вот логичные действия Скрол 2 пальцами = скрол, 3 пальцами=масштаб, 3 пальцами влево\вправо=листание вкладок (браузер) или картинок (смотрелки), 4 пальца вверх\вниз листание окон програмМ, влево\вправо=листание окон активной программЫ вполне реально.

По-сути настройка touchegg двухуровневая -

а) сам touchegg может передавать оси или десктоп-окружению те команды, которые он уже сам знает (короткий список http://code.google.com/p/touchegg/wiki/AllActions, расширенный список /usr/include/X11/keysymdef.h)
б) сам touchegg может передавать декстоп-окружению заранее забинденные клавиатурные сокращения (прописанные в настройках комбинации клавиш декстоп-окружения или самой пользовательской программы). Любые.

В конфиге каждая секция (конкретная программа или Все программы) может быть описана только один раз (иначе вылетает с ошибкой), в каждой секции любые наборы действий. Секция программы имеет более высокий приоритет на Всеми и полностью переопределяет, т.е. если есть секция программы Eog, то совпадающие действия (пальцев) из секции <application name="All"> применены не будут.

После решетки (#) можно писать комментарии, к ошибкам это не приводит.

Примеры -
 в секции    <application name="All">
#щипок 5 пльцами показывает окна запущенных программ (все щипки видит как Внутрь)
        <gesture type="PINCH" fingers="5" direction="ALL">
            <action type="SEND_KEYS">Alt+F1</action>
        </gesture>

секция     <application name="All">
#закрыть окно программы
        <gesture type="TAP" fingers="4" direction="">
            <action type="CLOSE_WINDOW"></action>
        </gesture>

Важно, чтобы действия внутри одной секции в итоге не конфликтовали.
ВАЖНО - на моем примере любая из поставленных версий touchegg (будь то оба варианта из Ауры, будь то пересобранная мною) может самопроизвольно начинать кушать процессор, до 10%. У себя решил так -
автозапуск - Автоматически запускаемые приложения в гном-сессии
раз в минуту Кроном команду

killall touchegg && touchegg

в таком варианте вроде уже две недели ежедневного использвоания и без проблем.
Нерешенная проблема - отнять от синаптика обработку 1-2 пальцев. Палец 3 уже отняли - см. выше.

Т.е. в нашем распоряжении есть такие хорошо обрабатываемые события:

а) тремя пальцами вверх\вниз\вправо\влево (тап и раньше был)
б) четыремя пальцами тап\вверх\вниз\вправо\влево
в) пятью пальцами щипок

Итого минимум 10 хорошо различимых и обрабатываемых событий на тачпад. Конечно, можно и пятью пальцами двигать в стороны, но мне это затруднительно, некомфортно. Равно как и 3, и 4 пальцами Щипок. Ну да и пальцы у всех разные.

Посты ниже имеют смысл лишь с точки зрения примера настройки и истории поиска отдельных решений.
wau
Сам себе отчитываюсь -
Точно уже знаю, что пятью пальцами окно закрывается. Остальное буду осваивать, отпишу.
Модель вашего ноутбука не подскажете?
MacBookAir mid 2013.

Подначиваю домашних (это еще несколько mid-2011 + lenovo x220i + asus U какой-то) к приобщению.
пока не получается освоить один, два и три пальца - видимо, Иксы не отдают. Возможно именно для этого обсуждаются вопросы конфигов Иксов - http://code.google.com/p/touchegg/wiki/ConfigureDevices, хотя глядя на

# Apple Magic Trackpad
 Section "InputClass"
      Identifier "Magic Trackpad"
      MatchUSBID "05ac:030e"
      Driver "evdev"
 EndSection

я бы не сказал, что что-то должно поменяться - и не поменялось. Отключение плагина mouse в dconf не влияет.
Пойду курить (пер.). Надо найти способ отдавать первые три пальца touchegg.
wau
MacBookAir mid 2013.

Подначиваю домашних (это еще несколько mid-2011 + lenovo x220i + asus U какой-то) к приобщению.

Тогда все ясно, на всех ближайших ноутбуках не более 3 пальцев определяется... А их то и не отдает synaptic.
Ха! и на улице ближайших ноутбуков с их 3 пальцами - будет праздник!

Вернем tochegg, точнее, отнимем от synaptic три пальца -

а) в конфиге Иксов правим /etc/X11/xorg.conf.d/50-synaptics.conf -
      Option "ClickFinger3" "0"
      Option "TapButton3" "0"

Перезапускаем иксы

б) запускаем tochegg и радуемся реакции на 3 пальца.

А с двумя пальцами этот финт не катит. Явно где-то Гном упорствует. Вроде в gconf все просмотрел и все тачпадные галки поснимал, в аплете управления тачпадом сняты галки и с двухпальцевого скроллинга, и с тапа, а и то, и другое работает.
хорошо, конечно, работает, но от процессора может отъедать %%10-14, что при работе от батарейки не радует.
Относительно патча touchegg-rotate_threshold
https://aur.archlinux.org/packages/touchegg-rotate_threshold/

Выяснилось, отчего он не устанавливался - в самом патче есть опечатка - depends=('qt' 'geis') вместо необходимого depends=('qt4' 'geis'). Т.е. следует скачать пачт из Ауры https://aur.archlinux.org/packages/to/touchegg-rotate_threshold/touchegg-rotate_threshold.tar.gz, распаковать архив, открыть PKGBUILD, заменить depends=('qt' 'geis') на depends=('qt4' 'geis'), затем, поскольку этой правкой мы лишь избежим аборта по причине неудовлетворения зависимостей, надо сделать симлинк -

ln -s /usr/lib/qt4 /usr/lib/qt

и после из директория, куда распаковали патч
 makepkg
su
 pacman -U *.xz

Собранный пакет по размышлении убрал - инструкция выше вполне доступна для освоения, а держать файл на внешнем хостинге, куда кто-нибудь теоретически может внедрить бэк-дор не хочется.

Собственно НЕ НАДО качать оригинальный пакет, ставьте патч и вручную, не через yaourt (или в нем правьте PKGBUILD) - патч сам качает исходники, патчит файл распознавания жестов, компилит.
Коллеги, если кто, в отличие от меня, силен в буржуазных языках настолько, что может сведения об опечатках донести до ментриймеров пакетов (автору патча - у него наверняка просто тот симлинк в системе был и пр.), было бы славно.
Жор процессора не пропал.
 
Зарегистрироваться или войдите чтобы оставить сообщение.