Где я должен вставить команду “xinput” так, чтобы она выполнила его, когда GNOME запускается?

На моем ThinkPad я должен выполнить что-то вроде этого в терминале:

xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Middle Button Emulation" 8 1

так, чтобы мои эти 2 кнопки на моей сенсорной панели эмулировали средний щелчок мышью. Теперь мне нужна эта строка, которая будет выполняться каждый раз, когда я запускаю Gnome или X или что бы то ни было, так, чтобы это "просто работало".

Я попробовал ~/.xsession или ~/.bashrc, но напрасно. Я должен поместить его в GNOME, запускают сценарии или в/etc/X где-нибудь?

Я использую Ubuntu 11.10.

10
задан 13 December 2012 в 17:22

4 ответа

Создайте файл в /etc/X11/Xsession.d/ для него.

3
ответ дан 23 November 2019 в 04:27

Я использую Просвещение DM, но это относится к другому DMS/рабочим столам. Я запускаю свою сессию с помощью xsession, таким образом, я первоначально поместил команды xinput в ~/.xsession, который не изменил все настройки, которые я хотел изменить. Только некоторые из них. Я ожидал или все или никакие изменения, таким образом, я добавил, что 10-interation цикл к моему .xsession с 1 вторым интервалом, работая xinput управляет каждый раз и проверяя, были ли настройки применены. К моему удивлению все настройки были применены после первого повторения.

Это означает, что именно Ваш DM делает что-то для переопределения xinput настроек и начиная с команды, которая запускает DM (E17 в моем случае) последний в .xsession файле, этот файл не является никаким местом для этого.

Я добавил следующие строки в своем ~/.profile, и это решило проблему:

# don't run unless we're being invoked from an xwindows session
if [[ -n ${DISPLAY} ]]; then

  # set your devices names here
  pointer1="IBM TrackPoint"
  pointer2="Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint"
  pointer3="Logitech USB Trackball"

  id1=$(xinput | awk -F= "/$pointer1.*pointer/ {print \$2}" | cut -f1)
  id2=$(xinput | awk -F= "/$pointer2.*pointer/ {print \$2}" | cut -f1)
  id3=$(xinput | awk -F= "/$pointer3.*pointer/ {print \$2}" | cut -f1)

  if [[ -n "${id1}" ]]; then
    xinput --set-button-map "${id1}" 1 2 3 4 5 6 7
    xinput set-prop "${id1}"  "Evdev Wheel Emulation Axes" 6 7 4 5
    xinput set-prop "${id1}"  "Evdev Wheel Emulation" 1
    xinput set-prop "${id1}"  "Evdev Wheel Emulation Button" 2
    xinput set-prop "${id1}"  "Evdev Middle Button Emulation" 0
  fi

  if [[ -n "${id2}" ]]; then
    xinput --set-button-map "${id2}" 1 2 3 4 5 6 7
    xinput set-prop "${id2}"  "Evdev Wheel Emulation Axes" 6 7 4 5
    xinput set-prop "${id2}"  "Evdev Wheel Emulation" 1
    xinput set-prop "${id2}"  "Evdev Wheel Emulation Button" 2
    xinput set-prop "${id2}"  "Evdev Middle Button Emulation" 0
  fi

  if [[ -n "${id3}" ]]; then
    xinput --set-button-map "${id3}" 1 2 3 4 5 6 7 8 9
    xinput set-prop "${id3}"  "Evdev Wheel Emulation Axes" 6 7 4 5
    xinput set-prop "${id3}"  "Evdev Wheel Emulation" 1
    xinput set-prop "${id3}"  "Evdev Wheel Emulation Button" 8
    xinput set-prop "${id3}"  "Evdev Middle Button Emulation" 1
  fi
fi

PS. set-int-prop был удержан от использования в пользу опоры набора (человек xinput).

Надо надеяться, это помогает кому-то.

7
ответ дан 23 November 2019 в 04:27

Добавьте команду непосредственно для запущения приложений. В поле команды.

или

сделайте простой сценарий и добавьте сценарий для запущения приложений.

4
ответ дан 23 November 2019 в 04:27

Это - то, как я сделал это в Ubuntu 14.04 от терминала:

1) Проверьте название своего устройства:

xinput list

2) Посмотрите доступные варианты для своего устройства:

xinput list-props "Your Device Name"

3) Измените настройки (для установки настроек, последовательных после того, как перезагрузка/завершение работы просто добавит эту команду для Запущения Приложений):

xinput set-prop "Your Device Name" "Option Name" "Value"

Вот пример, управляют, чтобы я раньше активировался заблокированный, притягивает мою сенсорную панель:

xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Locked Drags" 1

Для активирования/изменения другой опции просто ищут его в доступных вариантах устройства и играют с ними, пока Вы не получаете желаемый результат, затем добавьте команду для Запущения Приложений, и Вы сделаны! Надежда это помогает!:)

1
ответ дан 23 November 2019 в 04:27

Другие вопросы по тегам:

Похожие вопросы: