Как изменить значения Xinput по умолчанию?

Я хочу отключить ускорение мыши на своей мыши и хотел бы изменить его путем изменения значения libinput Accel Profile Enabled Default от 1, 0 кому: 0, 1 с командой xinput --set-prop [ID] [id of the value] 0, 1 но это возвращает ошибку:

X Error of failed request:  BadAccess (attempt to access private resource denied)
  Major opcode of failed request:  131 (XInputExtension)
  Minor opcode of failed request:  57 ()
  Serial number of failed request:  19
  Current serial number in output stream:  20

Я не могу создать приложение запуска, потому что идентификатор моей мыши постоянно не изменяется ни по какой причине. Я также не могу изменить глобальное значение переменной, потому что у меня должно быть Ускорение указателя на для моей сенсорной панели.

2
задан 8 December 2017 в 16:51

1 ответ

Отредактированный:

Я редактирую свой ответ для показа настолько более простого подхода. Можно использовать устройство type:name вместо ID как так:

xinput set-prop "keyboard:Logitech K400 Plus" "libinput Middle Emulation Enabled" 1

Это избегает необходимости знать энергозависимое ID поле.


Старый ответ:

Я не нашел способ изменить Значения по умолчанию Xinput, но можно использовать каналы удара, чтобы получить идентификатор динамично и использовать его в Запуске Aplication.

Поскольку я испытываю недостаток в специфических особенностях Вашего устройства, я иллюстрирую со своим персональным случаем. Я хочу изменить некоторые свойства Xinput своего K400 + клавиатура.

Сначала необходимо определить местоположение недвусмысленно строки Xinput, которая определяет устройство.

$ xinput

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech K400 Plus                        id=6    [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Logitech K400 Plus                        id=7    [slave  keyboard (3)]

Таким образом, я могу использовать простой regex K400.*keyboard получить последнюю строку (не указатель один). Затем я grep этот regex в канал, изолируйте идентификатор через cut утилита.

$ xinput | grep K400.*keyboard | cut -f2 | cut -c4-
7

Finnaly, который я использую его для изменения безотносительно свойства, которое я хочу. В этом случае я интересуюсь libinput Middle Emulation Enabled. Полная команда, которая делает это:

xinput | grep K400.*keyboard | cut -f2 | cut -c4- | 
xargs -I{} xinput set-prop {} "libinput Middle Emulation Enabled" 1

Теперь можно использовать его в качестве Запуска Aplication.

1
ответ дан 2 December 2019 в 04:48

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

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