lleo (lleo) wrote,
lleo
lleo

Categories:

Linux - перенаправление клавиатуры

это перепост заметки, оригинал находится на моем сайте: http://lleo.me/dnevnik/2019/03/10

UPD: Всем спасибо за советы, решение в итоге такое: компилируем мою прежнюю утилитку захвата выбранной клавиатуры: keyboardoid и пишем такой скрипт, который запускает сканирование клавиш:

#!/bin/sh
if [ "$1" = "" ] ; then sudo ./keyboardoid "0b9b:4012" "$0 %c"
else
if [ "$1" = "9" ] ; then A="space" ; else A="BackSpace" ; fi
xdotool key --window `xdotool search --name qiv | tail -1` $A
fi

C устройства приходят коды 9 и 3 (так видит коды keyboardoid), и если 9, то в окно qiv отправляется пробел — листать слайды вперед, а если вторая кнопка — то backspace, листать назад.

БЫЛО:

Товарищ Игорь дал мне парочку таких лазерных указок. Девайс не только лазерная указка, но по нажатию двух кнопочек на корпусе генерирует как USB-клавитура события клавиш «стрелка вверх» и «стрелка вниз». Что, видимо, удобно для чтения лекций со слайдами и проектором. Но комбинация клавиш меня не устраивает (в qiv листаются картинки другими кнопками), а работа с девайсиками, изображающими USB-клавиатуру в Линуксе, напротив, вызывает у меня интерес. Поэтому возник вопрос — а вообще какой-то технологией можно взять под контроль нажатия «кнопок» и переназначить их по пути к приложению? Варианты мне видятся такие:

1. Научиться самому передавать событие «нажата кнопка X» в конкретное приложение. Как перехватывать одну из клавиатур я уже знаю, а вот можно ли подсовывать якобы события клавиатуры какому-то одному конкретному приложению — пока не знаю.

2. Научиться переназначать клавиши одной из имеющихся клавиатур. Переназначить кнопки в Линуксе несложно — есть специальный конфиг, это я даже на Андроиде делал, когда у меня был Droid 4 с физической клавиатурой. Но здесь проблема в том, что основную клавиатуру как раз трогать не надо, речь про устройство номер 0b9b:4012

Есть идеи?

PS: Никакой насущной необходимости нет, советы по приобретению других девайсов или других листалок слайдов не нужны: интересует лишь сама технология в юниксах. Читать лекции со слайдами или иным способом использовать эту безделушку пока не планирую. Кстати если кому нужна — у меня парочка таких есть еще, могу поделиться.



это перепост заметки, оригинал находится на моем сайте: http://lleo.me/dnevnik/2019/03/10
Tags: неведомая хуйня, программирование, сделай сам
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments