LINUX.ORG.RU

Выключение и включение тачпада на EeePC одной кнопкой.


0

1

Недавно достался мне компьютер ASUS Eee PC 1001HA. Недолго думая, снес стартовую операционную систему, поставив Linux Mint 13 со средой XFCE. Сам я тот еще нуб, поэтому простите, если раздел не тот, но вроде бы это именно сюда. На нетбуке есть аж два варианта влиять на тачпад: можно нажать Fn+F3, можно специальную кнопку чуть выше, чем Esc. В Windows была предустановлена реакция на команду. В Linux я смог настроить эту кнопку на отключение тачпада. Увы, на включение настроить ее же невозможно, пришлось на включение настраивать другую. Сделал я это очень тупо - командой synclient TouchpadOff=1, присвоенной клавише. Ну и аналогичная с нулем.

СОБСТВЕННО, ВОПРОС: Можно ли сделать зависимость по типу «if TouchpadOff=0 then synclient TouchpadOff=1 else synclient TouchpadOff=0?»

Ответ на: комментарий от Baskakov_Dima

А у меня пашет.

[v@t430s]$ synclient TouchpadOff=0; synclient | grep -qe 'TouchpadOff.*= 1' ; echo $?
1

[v@t430s]$ synclient TouchpadOff=1; synclient | grep -qe 'TouchpadOff.*= 1' ; echo $? 
0

Скопипасти команды и дай выхлоп - должно быть точно так же.

kernelpanic ★★★★★
()
Ответ на: комментарий от kernelpanic

Слегка поправлюсь. Это должна быть не консольная команда, а то, что вводится в строку «Выполнить программу...»

Baskakov_Dima
() автор топика
Ответ на: комментарий от kernelpanic

И да, в терминале на первое выдает 1, на второе 0.

Baskakov_Dima
() автор топика
Ответ на: комментарий от kernelpanic

Одна выключает, одна включает. ПОвторный ввод одного и того же не дает результата. А мне нужно, чтобы это можно было ввести в строку «Выполнить программу», и каждый следующий ввод включал и отключал тачпад.

Baskakov_Dima
() автор топика
Ответ на: комментарий от Baskakov_Dima

В терминале вот эта команда Выключение и включение тачпада на EeePC одной кнопкой. (комментарий) работает? Должна. Если она не работает в какой-то там строке, то засунь ее в скрипт и вызывай уже этот скрипт. Понятно объяснил?

kernelpanic ★★★★★
()
Ответ на: комментарий от kernelpanic

Если подробнее: при назначении этой команды на горячую клавишу она работает не через терминал. Она запускает ее через меню «Выполнить программу»

Baskakov_Dima
() автор топика
Ответ на: комментарий от Baskakov_Dima

Если она [команда] не работает в какой-то там строке [«Выполнить программу»], то засунь ее [команду] в скрипт и вызывай уже этот скрипт.

kernelpanic ★★★★★
()
Ответ на: комментарий от Baskakov_Dima

Напиши простейший скрипт, который содержит приведенную выше команду.

kernelpanic ★★★★★
()
Ответ на: комментарий от Baskakov_Dima
#!/bin/bash
synclient | grep -qe 'TouchpadOff.*= 1' && synclient TouchpadOff=0 || synclient TouchpadOff=1

это содержимое простого текстового файла.
потому этому фалй даёшь права на исполнение ---> клацаешь по нему --->профит
как объяснить ещё проще я хз

megabaks ★★★★
()
Ответ на: комментарий от Baskakov_Dima

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

megabaks ★★★★
()
Ответ на: комментарий от Baskakov_Dima

флаг не обязателен, он скорее для удобства в таких случаях.
ну и скрипты бывают не только на *sh* (коим является и баш), но и на многих других языках - тот же питон, перл и т.д. - так называемые интерпретируемые языки.
/всё, больше грузить не буду :3

megabaks ★★★★
()
synclient TouchpadOff=$(synclient -l | grep -c TouchpadOff=0)

Если TouchpadOff=0, grep -c найдёт одно вхождение и вернёт 1. Если TouchpadOff=1, grep -c не найдёт вхождений и вернёт 0.

// Придумал не я.

AITap ★★★★★
()
Последнее исправление: AITap (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.