*
  Мысли   Галерея   Проекты   Тексты  
  Мысли   Галерея   Проекты   Тексты  
Giver: Multimedia keyboard  (2008-04-14 01:58:26)

Все видели многофункциональные мультимедия клавиатуры, многие даже хотели бы иметь себе такие, некоторые даже имеют. Предлагаю сделать мультимедиа клавиатуру из своей обычной: посмотрите, сколько лишних кнопок на ней, которые могут принести пользу, чего стоят только непонятные флажки около пробела. Мне больше приглянулись три кнопки управления питанием. На основе этих ненужных кнопок и будем делать нашу мультимедиа клавиатуру.

Для начала выясним при помощи утилиты xev, создают ли нужные нам кнопки какие-либо события, и имеются ли у них символика. На моем примере клавиша Wake посылала 223 код и не имела символа. Таким образом, собрав коды всех символов, можно сформировать ~/.Xmodmap примерно такого содержания:

keycode 227 = XF86AudioLowerVolume
keycode 223 = XF86AudioMute
keycode 222 = XF86AudioRaiseVolume

Некоторые среды, например XFCE, имеют предпрописанные действия к данным клавишам, так что дополнительных рукодвижений не потребуется. В остальных окружениях необходимо прописать их действия. Фрагмент файла сочетаний клавиш Enlightenment DR16 (~/.e16/bindings.cfg):

KeyDown - XF86AudioLowerVolume exec amixer sset PCM 2-
KeyDown - XF86AudioMute exec amixer sset PCM toggle
KeyDown - XF86AudioRaiseVolume exec amixer sset PCM 2+

Эти кнопки можно использовать с каким либо из модификаторов, например Control. Таким образом получаем не только изменение громкости, но и смену трека. Пример реализации в e16 с плеером sonata:

KeyDown C XF86AudioLowerVolume exec sonata prev
KeyDown C XF86AudioMute exec sonata pp
KeyDown C XF86AudioRaiseVolume exec sonata next

Имя:
Комментарий: