Как сделать команду xinput постоянной после ожидания
Я хочу использовать прокрутку двумя пальцами на сенсорной панели. Я использую Ubuntu 13.04, и конфигурация графического интерфейса мыши и сенсорной панели не позволяет мне включить его (флажок неактивен). В качестве обходного пути я создал скрипт, который запускается при запуске в соответствии с рекомендациями. Сценарий:
xinput set-int-prop "SynPS/2 Synaptics TouchPad" "Two-Finger Scrolling" 8 1
xinput set-int-prop "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Scrolling" 8 1 1
xinput set-int-prop "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Pressure" 32 0
Это работает нормально после того, как я вошел в систему. Однако, когда я сплю и возобновляю, настройка, кажется, исчезает - прокрутка двумя пальцами больше не включена.
Некоторые решения ( например) предлагают использовать synclient и xorg.conf, но, похоже, они не работают. Другие решения ( например) добавляют сценарии, которые запускаются после выхода из спящего режима. Это кажется неправильным путем - должен быть способ вносить постоянные изменения без необходимости заново настраивать их в каждом резюме.
У кого-нибудь есть постоянный способ включить прокрутку двумя пальцами?
4 ответа
Вы можете добавить скрипт в /etc/X11/Xsession.d/, чтобы сохранить изменения во всех сеансах. Просто убедитесь, что вы читаете о том, как настроить процедуру запуска Xsession (в частности, соглашение об именах): http://manpages.ubuntu.com/manpages/raring/man5/Xsession.5.html
Даже если бы вы запустили функцию возобновления, это не сработало бы (по крайней мере, для меня это не сработало), на самом деле это запретило моей системе приостанавливать работу (получал только экран блокировки).
Итак, вот мое, уродливое, но рабочее решение.
Создать скрипт /desired/path/my-synaptic.sh
(назови это X
) со следующим содержимым (установите режим на 777
так, на всякий случай, chmod 777 X
):
#! /bin/sh
while true
do
# all your commands here
sleep 5 # increase the time if you want to be less aggressive about it
done
Затем перейдите в раздел "Запуск приложений" на панели инструментов и добавьте программу запуска с помощью следующей команды:
nohup X
и вы готовы идти до тех пор, пока эта проблема не будет должным образом решена.
Идея сценария была взята отсюда.
И да, даже Cron не помог в этой ситуации.
Я сделал это, чтобы сохранить настройки xinput после перезагрузки (Ubuntu 13.04 Unity), но это может не помочь при выходе из спящего режима:
sudo vi /usr/local/bin/xinput.sh
Добавьте ваши строки xinput и сохраните.
sudo chmod 755 /usr/local/bin/xinput.sh
Нажмите клавишу Super, перейдите в Dash, найдите Startup Applications и нажмите на нее, чтобы открыть. Нажмите Добавить:
Name: xinput
Command: /usr/local/bin/xinput.sh
Comment: xinput settings
Сохранить и перезагрузить
Я должен был положить это в /etc/X11/xorg.conf.d/50-mouse-map.conf
(и перезагрузка), чтобы быть постоянным не только после перезагрузки, но и через приостановку / возобновление.
#instead of: xinput set-button-map "2.4G Wireless Optical Mouse" 1 2 3 4 5 6 7 0
Section "InputClass"
Identifier "2.4G Wireless Optical Mouse"
Option "ButtonMapping" "1 2 3 4 5 6 7 0 0 10 11 12 13 14 15 16"
EndSection