настройка synaptics touchpad linux

Тонкая настройка Synaptics Touchpad

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

Вот только одна незадачка: вся эта прелесть прекрасно работает в Windows 7, в то время как в Linux как всегда лишь унылые огрызки, и наполовину не использующие все свои возможности.

Бесстрашный Хабраюзер, готов ли ты бороться со вселенской несправедливостью? Тогда добро пожаловать под хабракат, тебя ждет море удовольствия, linux-way и миллионы счастливых кликов на выходе 🙂

По сути надо: скачать скрипт, подправить под себя и добавить в автозагрузку. Правда скучно? Читаем дальше 🙂

Проблема

Стандартные пути решения

Существует 2 наиболее простых решения этой проблемы: настройка мышки через Mouse Preferences в Gnome и программа gSynaptics. В первом случае настроек кот наплакал (выключать тачпад при наборе текста и разрешить горизонтальный скроллинг? Круто!). gSynaptcs тоже решает только часть проблем (есть циркулярная прокрутка, попытка настроить перемещение курсора и чувствительность), но у меня кстати работает довольно криво и почему-то запоминает не все конфиги. Так что все это не торт.

Впрочем, довольно лирики и драматизма. Перейдем к самому интересному!

Решение проблемы

Конфетка

На самом деле Synaptics предлагает ту самую кнопку «сделать ах%?№№0» специальный пакет, с помощью которого можно реализовать мультитач в большинстве популярных дистрибутивов, но только для ОЕМ производителей и меинтейнеров. Возможно, счастье ждет нас в ближайшем будущем, но мы не любим ждать и идем своим (пока единственным) путем.

Оговорюсь сразу: решение и конфиг рассматривается в рамках Ubuntu. Нет, вовсе не потому, что «это самая лучшая ОС в мире«. Просто я ее использую 🙂 Всем, кто протестирует в других дистрибутивах и отпишется, шлюхи и блек джек отдельное спасибо!

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

**Решения, найденные в google, оперируют к xorg.conf и HAL, который успешно вырезан из Ubuntu 10.04

Процесс

Как работают строчки скрипта?

Отличная консольная утилита, позволяющая менять настройки устройств ввода налету.

Чтобы посмотреть список всех устройств:
xinput list
Далее, чтобы посмотреть список параметров конкретного устройства и их значения нужно обращаться к нему по имени или через номер id (лучше уж по имени, когда оно уже известно):
xinput list-props «SynPS/2 Synaptics TouchPad»
Чтобы изменить значение конкретного параметра:
xinput set-int-prop «SynPS/2 Synaptics TouchPad» «имя параметра» #размер значени(я)й в битах# #значения через пробел#
Например:
xinput set-int-prop «SynPS/2 Synaptics TouchPad» «Synaptics Jumpy Cursor Threshold» 32 250
— решает проблему «прыгающего» курсора
xinput set-int-prop «SynPS/2 Synaptics TouchPad» «Circular Scrolling» 8 1
— разрешает прокрутку «по кругу»

Подробно о каждом параметре на сайте X.org

В примитивном скрипте можно посмотреть, какие параметры использовал я. Но, как известно, на вкус и цвет…
Скачать скрипт
Ну вот, вроде все довольны и счастливы. Теперь можно смело рисовать в Photoshop GIMP 😉
Данный алгоритм настройки должен сработать не только для Ubuntu и, возможно, также и для других тачпадов, надо пробовать 😉

К сожалению, мне неизвестно, как настроить такую функцию мультитач, как scale и rotate. Может, кто-то подскажет? Если вам есть, что добавить/поправить, welcome в комментарии.

UPD: Спасибо за предложения и пожелания, учтем-с в будущем!

UPD2: Где же ты красавец-кодер на своей машинке-коне, который сделает небольшую утилитку для тех, для кого, скажем Ubuntu — ОС действительно для человеческих существ?

Источник

Настройка тачпада и установка драйвера Synaptics

В большинстве случаев драйвер тачпада на ноутбуках ставится автоматически, и тачпад работает без каких-либо дополнительных действий, но иногда хочется изменить настройки тачпада. Я устанавливал Ubuntu на многих ноутбуках, и почти на всех тачпад почему-то очень чувствительно реагировал на любые прикосновения, всегда хотелось понизить чувствительность или отключить возможность нажатия на него или же полностью отключить тачпад.

Для изменения некоторых параметров тачпада мы воспользуется программой GSynaptics. Но для начала нужно проверить? установлен ли у вас драйвер тачпада xserver-xorg-input-synaptics (Synaptics TouchPad driver for X.Org/XFree86 server). Не путайте Synaptics с Synaptic. Synaptic это программа управления пакетами в Ubuntu, а Synaptics это один из производителей тачпадов.

Драйвер тачпада Synaptics TouchPad driver

Драйвер тачпада Synaptics TouchPad driver позволяет изменять различные настройки тачпада (реакцию на одинарное или двойное нажатие, чувствительность, реакцию на движение пальцев — горизонтальную и вертикальную прокрутку и другие).

Чтобы установить драйвер, выполните в консоли команду:

Если драйвер у вас уже установлен, тогда появится примерно следующее сообщение:

Установка программы настройки тачпада GSynaptics

Установим программу GSynaptics. Для этого наберите в консоли:

Теперь, если вы попробуете запустить Gsynaptics, то скорее всего получите следующее предупреждение «GSynaptics couldn’t initialize. You have to set ‘SHMConfig’ ‘true’ in xorg.conf or XF86Config to use Gsynaptics».
настройка synaptics touchpad linux

Это связано с тем, что необходимо вначале прописать тачпад в файле xorg.conf и установить опцию SHMConfig в значение true.

Настройка xorg.conf

Файл xorg.conf это конфигурационный файл X-сервера в Linux, он храниться в каталоге /etc/X11. Откройте файл xorg.conf, выполнив команду:

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

Нам нужно прописать наш тачпад в файле xorg.conf. Для этого добавьте в файл xorg.conf следующие строки:

Мы определили раздел устройства тачпад с именем Synaptics Touchpad, которое использует драйвер synaptics.

После этого нужно добавить в раздел ServerLayout строку:

Раздел ServerLayout может и отсутствовать в файле xorg.conf. Но добавлять его нужно аккуратно, так как в нем обобщаются разделы (секции) Screen и InputDevice. Поэтому, если вы создаете раздел ServerLayout, то должны прописать в нем ваши разделы Screen и InputDevice, иначе система не захочет загружать какой-либо драйвер. Вот пример раздела ServerLayout:

После редактирования файла xorg.conf выйдите и снова войдите в систему, чтобы изменения вступили в силу.

Запуск программы GSynaptics и настройка тачпада

Изменение любых настроек происходит мгновенно.

Источник

Touchpad Synaptics (Русский)

настройка synaptics touchpad linuxЭта статья или раздел нуждается в переводенастройка synaptics touchpad linux

synaptics — это драйвер для тачпадов Synaptics, которые встраиваются в большинство ноутбуков. Эта статья поможет вам установить и настроить работу драйвера так, как вам необходимо.

Contents

Установка

Вы можете установить модули synaptics из репозитория Extra при помощи pacman:

Настройка

Настройка тачпада в файле конфигурации X-сервера

Основным способом конфигурации тачпада является редактирование файла настроек Xorg. После установки пакета xf86-input-synaptics, появляется исходный конфигурационный файл /etc/X11/xorg.conf.d/10-synaptics.conf следующего содержания:

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

Часто используемые опции

Следующий листинг удовлетворит потребности большинства пользователей. Это просто часть конфигурационного файла в /etc/X11/xorg.conf.d/10-synaptics.conf, можно заметить, что при использовании данной конфигурации включается вертикальная, горизонтальная и круговая прокрутка:

Синтаксис: Система будет думать, что это именно эта кнопка: (если ей соответствует код) код можно узнать с помощью команды xev.

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

, чтобы отключить ее.

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

Обратите внимание что ваш свежеисправленный конфигурационный файл Xorg приводит к автоматической загрузке модулей ядра evdev и psmouse от которых зависит synaptics, в том случае, если вы захотите добавить его для явной загрузки в массив MODULES файле /etc/rc.conf:

GNOME/Cinnamon

Пользователи GNOME также могут редактировать настройки. По умолчанию в GNOME отключена симуляция клика левой кнопкой мыши, горизонтальная прокрутка, а также тачпад не отключается при нежелательном касании ладони во время печати.

Для изменения этих настроек в Gnome 2:

Для изменения этих настроек в Gnome 3:

Демон настроек Gnome может заменять существующие настройки (например указанные в xorg.conf.d), которые в графической утилите настройки не представлены вовсе. Можно исправить подобное поведение Gnome:

И никакой Gnome больше не помешает вам настроить работу тачпада.

Как и с GNOME, в MATE настройка выглядит схожим образом:

Во избежании затирания настроек демоном Mate settings на предопределённые, выполните следующее:

Конфигурирование «на лету»

Кроме традиционного, есть еще несколько способов конфигурирования. Драйвер Synaptics поддерживает изменение настроек «на лету». Это предполагает, что пользователи могут выбирать нужные им опции в приложении, которые вступят в силу немедленно, без перезапуска X. Возможны четыре варианта конфигурирования:

xinput

Используйте `xinput list` чтобы определить название устройства.

Используйте `xinput list-props «SynPS/2 Synaptics TouchPad»` для того, чтобы увидеть доступные возможности.

Также можно прочесть руководства соответствующих программ.

GPointingDeviceSettings

GPointingDeviceSettings требует xf86-input-synaptics и libsynaptics. Эти пакеты доступны в [extra] и [community] репозиториях, Вы можете установить их используя pacman.

Настройка тачпада через правило HAL

В связи с тем, что последние версии X-server меньше зависят от настроек в файле xorg,conf, можно заметить что не все настройки тачпада были применены так, как это было там записано. Проверить это можно, выполнив в терминале :

Таким образом Вы получите список всех действующих на данный момент значений. Сверьте их с теми, что записаны в xorg.conf. Если есть несовпадения ( как правило — определение размера тачпада и как следствие — проблемы с прокруткой), то следует перенести настройки тачпада в правило HAL. Для этого необходимо закоментировать в файле конфигурации X-сервера строчку отоносящуюся к тачпаду :

Создайте новое правило для HAL :

и добавте туда следующее :

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

и перезапустите Х-сервер, чтобы настройки вступили в силу.

Обратите внимание: в случае если изменений не произошло посмотрите в решение проблем

Настройка сенсорной панели через xinput

Если Вы стали счастливым обладателем GNOME версии 2.28 и выше, то видимо первое, что может броситься в глаза, это практически полная неуправляемость устройства по приведенным выше рекомендациям. Все дело в том, что теперь более тонкая настройка производится через xinput ( но, все же, конфигурационный файл, по приведенной выше Настройка тачпада через правило HAL рекомендации, может понадобиться ). Все доступные опции Вы можете просмотреть, выполнив в терминале следующее:

В ответ на это можно будет наблюдать примерно следующий вывод:

SynPS/2 Synaptics TouchPad это и есть Ваша сенсорная панель. Запомните значение, указанное после id= в этой строке. Далее, выполните в терминале команду

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

Детальная конфигурация

Драйвер synaptics предоставляет множество опций для настройки. Следующий список описывает опции секции InputDevice, которую мы объявили в конфигурационном файле Xorg ( или в параметре «input.x11_options» в правиле HAL ):

Identifier — имя этого устройства ввода, которое мы указали в секции ServerLayout выше.

Device указывает на файл устройства synaptic. Смотрите Решение проблем чтобы найти ваше устройство, если у вас это не /dev/input/mouse0.

LeftEdge, RightEdge, TopEdge и BottomEdge — целые числа, которые задают виртуальные размеры вашего тачпада в координатах x и y.

FingerLow и FingerHigh — целочисленные значения, определяющие ‘силу нажатия’, которую драйвер расценит как прикосновение (сила нажатия становится больше FingerHigh) или отпускание (сила нажатия падает ниже FingerLow).

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

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

MinSpeed и MaxSpeed являются минимальным и максимальным коэффициентами скорости. Дробные числа с плавающей точкой.

AccelFactor — коэффициент ускорения, также дробное число с плавающей точкой.

SHMConfig — булевское значение (on/off) для включения/выключения использования разделяемой памяти. Эта опция должна быть включена, если вы хотите наблюдать и конфигурировать ваше устройство synaptics такими клиентскими утилитами как synclient, который мы будем использовать в данной статье.

Больше информации по опциям вы найдёте на man-страничке synaptics:

Тонкая настройка при помощи synclient

Монитор synclient может отображать силу нажатия и положение пальца на тачпаде в реальном времени, позволяя точно задавать опции synaptics под свои нужды. Для работы synclient требуется чтобы опция SHMConfig была установлена в on или true.

Вы можете запустить монитор synaptics следующей командой:

где -m активирует монитор, а следующее за опцией число задаёт интервал обновления в миллисекундах.

Этот монитор предоставляет информацию о текущем состоянии вашего тачпада. Например, если вы двигаете тачпадом указатель мыши, то значения x и y в мониторе synclient будут изменяться. Таким образом вы можете легко узнать виртуальные размеры вашего тачпада, которые задаються в опциях LeftEdge, RightEdge, BottomEdge и TopEdge.

Аббревиатуры расшифровываются следующим образом:

время в секундах с начала логирования.

координаты x/y пальца на тачпаде. Точка отсчёта — верхний левый угол.

давление. Характеризует вашу силу нажатия на тачпад при работе с ним.

количество пальцев, которые сейчас прикасаются к тачпаду.

состояния левой(left), правой(right), (верхней)up, (нижней)down, (средней)middle и многофункциональной (multi) кнопок. Нажатое состояние отражается единицей, ненажатое — нулём.

для тачпадов с подключаемым устройством (guest device) эти параметры соответствуют его состоянию кнопок: левой(guest left), средней(guest middle) и правой (guest right). Кнопки могут быть нажаты(1) или не нажаты(0).

координаты x/y подключаемого устройства (guest device).

Если какое-то значение постоянно равно нулю, это означает что ваше устройство не поддерживает его.

Если графа f отображает максимальное значение 1, но есть необходимость в использовании двухпальцевого режима, в таком случае обратите внимание на опции EmulateTwoFingerMinW,EmulateTwoFingerMinZ и EmulateMidButtonTime ( см. Детальная конфигурация) и добавьте соответствующие строки в файл конфигурации ( в правило ).

Вооружившись этими знаниями вы сможете подобрать правильные значения для вашего тачпада.

Круговая прокрутка

Круговая прокрутка — это удобство, предлагаемое вам synaptics, которое вы могли знать по iPod. Вместо (или, в придачу к) прокрутке по горизонтали или по вертикали, вы можете осуществлять прокрутку по кругу. Многие пользователи находят этот способ более быстрым и точным. Для включения круговой прокрутки, вам необходимо добавить следующие опции в секцию устройства ввода /etc/X11/xorg.conf.d/50-synaptics.conf :

Вы наверное догадались, что опция CircularScrolling включает или выключает круговую прокрутку. Опция CircScrollTrigger может принимать одно из следующих значений, определяющий с какой границы тачпада должна начинаться круговая прокрутка:

Задание этой опции отличной от нуля может быть полезным если вы хотите использовать круговую прокрутку совместно с горизонтальной и/или вертикальной прокруткой. В таком случае тип прокрутки будет определяться границей тачпада с которой вы её начинаете.

Для быстрой прокрутки рисуйте маленькие круги в центре вашего тачпада. Для медленной и более точной прокрутки рисуйте большие.

Отключение тачпада при подключенной мыши

При помощи udev можно автоматически отключать тачпад при подключении внешней мыши!

Для достижения этого, просто добавьте следующее правило udev:

Поместите это в /etc/udev/rules.d/01-touchpad.rules, убедитесь что опция SHMConfig включена и наслаждайтесь.

Эмуляция среднего клика мыши

в /etc/X11/xorg.conf.d/10-evdev.conf (или любой другой конфигурационный файл Xorg, который вы захотите) и вы включите эмуляцию среднего клика: средний клик будет эмулироваться одновременным нажатием левой и правой кнопки мыши.

Если ваш тачпад поддерживает несколько одновременных нажатий, то вы можете эмулировать его, например, тройным нажатием, выполнив в терминале (работает в течение сессии):

Решение проблем

Мой тачпад не /dev/input/mouse0

В этом случае вы можете посмотреть информацию по всем вашим устройствам ввода следующей командой:

Найдите устройство с именем «SynPS/2 Synaptics TouchPad». Вам нужно смотреть на параметр Handler, который подскажет вам какое устройство нужно указать в xorg.conf.

Т.к. выши Handler’ы mouse0 и event1, вам нужно использовать /dev/input/mouse0.

Отключение кликов мыши при наборе с клавиатуры

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

Также вы можете добавить ключ -t который говорит демону не отключать перемещение мыши, а отключать только клики и прокрутку:

Как обычно более детальную информацию вы можете найти на man-страничке:

Прокрутка включена, но не работает

Если после включения прокрутки (горизонтальной или вертикальной) она так и не заработала, то попробуйте поиграть с опциями RightEdge и BottomEdge (если для прокруток Вы хотите использовать эти области) и для вертикальной и горизонтальной прокрутки соответственно, уменьшая их значения. Таким же образом можно отрегулировать и ширину области прокрутки.

Не работает прокрутка и тапы после логина

Прокрутка, тапы работают в экране ввода логина и пароля, но перестают работать после загрузки Gnome. В Gnome в меню «Система-Параметры-Мышь-Манипулятор Тачпэд» находятся собственные настройки Gnome, которые перетирают настройки X.org.

Firefox неправильно распознаёт горизонтальную прокрутку

Несмотря на то что эта проблема не касается драйверов synaptics, всё равно решение её вы, скорее всего, будете искать здесь.

Чтобы предотвратить firefox от прокрутки истории и заставить его прокручивать страницу, вам необходимо установить следующие настройки:

Создал правило, но изменений в работе тачпада не произошло

Если в ходе редактирования созданного правила были допущены ошибки, то об этом можно узнать выполнив в терминале

Посмотрите на ошибку, исправте ее в созданном правиле и перезапустите демон еще раз:

Создал правило/конфиг но GNOME его игнорирует

Чтобы GNOME пользовался системными настройками, но не теми скупыми пятью ключами в настройке сенсорной панели, необходимо просто выключить соответствующий плагин. Для этого необходимо открыть gconf-editor, и установить ключ /apps/gnome_settings_daemon/plugins/mouse/active в FALSE или выполнить в терминале:

Устройство определяется как «ImPS/2 Wheel Pointer» или как «PS/2 Generic Mouse»

Выполняем для каждого патча, в порядке, указанном цифрами в его имени. Переходим в каталог с исходниками драйвера

Пробуем вставить полученный модуль в ядро:

И смотрим как определилась наша панель иксами:

Если Вы видите, что теперь устройство определилось как «Alps PS/2 (Dual | Glide)Point», то все в порядке и можно переходить к следующим действиям. Копируем полученный модуль к модулям текущего ядра

Если в результате не возникло ошибок, то можно переходить к тонкой настройке сенсорной панели, описанной в этой статье. Если же после сборки модуля не произошло никаких изменений, то, возможно, Вам необходимо вписать цифровую подпись Вашего устройства в файле alps.c, в распакованных исходниках ядра.

Отключение «Авто-скроллинга» в 1.5.99.903

Для отключения новой функции «Авто-скроллинг» добавленной в последнем релизе драйвера (она позволяет скроллить информацию как на мобильных устройствах, то есть после того как пользователь убрал палец от тачпада, информация все еще скроллится), добавьте в файл /etc/X11/xorg.conf.d/10-synaptics.conf :

Ссылки

Synaptics TouchPad driver для XOrg/XFree86 : [1]

Источник

Ubuntu Documentation

Introduction

A touchpad, and clickpad is a built-in input device for laptops that is used as a computer mouse. Synaptics is a driver for these.

Default clickpad gestures

When clicking the bottom 20% clickpad buttons, one would want to use two fingers to maximize the accuracy of the click.

Basic Configuration with a Graphical Interface

Ubuntu provides basic configuration of your touchpad options in System > Preferences > Mouse, under the Touchpad tab.

Try the touchpad after unchecking the Enable mouse clicks with touchpad check box.

Check operation after Enable horizontal scrolling is checked. This may not have been the default setting.

Disabling Touchpad while Typing

Go to System > Preferences > Mouse > Touchpad and uncheck ‘Disable touchpad while typing’ and ‘Enable mouse clicks with touchpad’. (This method is not available under Ubuntu 14.04.)

Completely disabling Touchpad

You may run the command during session startup

Adjust Touchpad Sensitivity

Determine device number (see above)

Open a separate terminal to watch emitted events:

Replace [device number] with the number of your touchpad from ‘xinput list’. It will probably be one of the devices under «Virtual core pointer».

This step is not mandatory but it can help to track problems:

If text flies by as you move your mouse pointer using the touchpad, you know that you got the correct device number.

Open another terminal to see current settings: (Again this step can be omitted but is helpful to see available options. Watch for «Synaptics Finger». It will change as soon as you apply the next command.)

The higher you set the numbers the more force is needed to make an event fire. And the less sensitive the touchpad get.

Troubleshooting

Determine whether a touchpad has been detected

To check if a touchpad has been detected open a terminal and check the input device list given by this command:

If one of the lines mentions a touchpad or glidepoint (perhaps also «Synaptics» or «ALPS»), your touchpad has been detected.

If one of the lines mentions an «ADB mouse», then your touchpad is old. Use the trackpad command line tool to configure it. Here’s an example to switch on tapping and dragging:

Enabling SHMConfig in order to get synclient debug output

Paste this into the document:

If it’s not empty, put it at the end. Save, close the file and reboot.

Now you should be able to see what kind of input your touchpad detects by running

The synclient manpage will explain what the numbers you see onscreen mean.

Touchpad not working after login

This usually happens when you disable your touchpad and then suspend your computer. To fix this just run this command:

Control touchpad features using synclient

synclient is a commandline utility to query and modify Synaptics driver options. This would allow one to adjust touchpad features that may not be exposed via the GUI. One would adjust parameters via a terminal:

where PARAMETER is as listed below, and # is a number. While the formal definition of each parameter may be found in the synaptics manpage, here is a more user friendly description of each of the parameters:

See also

Known Issues

SynapticsTouchpad (последним исправлял пользователь stevecoh1 2014-07-27 19:45:42)

The material on this wiki is available under a free license, see Copyright / License for details
You can contribute to this wiki, see Wiki Guide for details

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *