You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
2.2 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Приложение для управления SuperCollider скетчами
с использованием HID (клавиатура, мышь, тачпад)
Минимальная версия SC 3.14.0
Целевая платформа Linux
Это может быть простой шаблон на sclang,
основаный на HIDDef и Dictionaries
для навешивания обработчиков на события
HID устройств.
Оcновная задача - иметь возможность быстро
управлять NDef и Tdef и видеть минимальный
визуальный фидбек состояния.
Нужна поддержка событий KeyUp и KeyDown для
клавиатур и кнопок мыши/тачпада, а также
движение тачпада по осям.
Если тачпад поддерживает другие события, их тоже
можно поддержать.
Основные рабочие машины - ноутбуки ThinkPad.
* Доступ к HID на Linux (udev)
sclang без привилегий видит HID-устройства только если может читать
/dev/hidraw*. По умолчанию они root:root 0600, поэтому нужно udev-правило.
Простое решение «без групп» (читать может любой пользователь):
#+begin_src sh
# /etc/udev/rules.d/99-hidraw-input.rules
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0666"
#+end_src
Затем применить:
#+begin_src sh
sudo udevadm control --reload-rules && sudo udevadm trigger
#+end_src
Проверить:
#+begin_src sh
ls -l /dev/hidraw* # должно стать crw-rw-rw-
head -c 0 /dev/hidraw0 # чтение от обычного пользователя должно пройти
#+end_src
Альтернатива «с группой» (безопаснее): MODE="0660", GROUP="input" +
пользователь в группе input (`sudo usermod -aG input $USER`, затем
перелогиниться). При MODE="0660" без членства в input доступа не будет.