2009-07-17

mediaKeys

На день рождения в 2008 году группа подарила беспроводной комплект: клавиатура и мышь a4tech. Радости моей было много — валяться на диване и управлять компом очень удобно, только вот зрение не позволяет :( На клавиатуре есть мультимедиа клавиши, что очень удобно для управления Amarok'ом. В кедах они завелись без проблем, но так как последнее время пользуюсь весьма аскетичным DE (iceWM, а теперь и fluxBox), то они как-то отвалились и не воспринимаются.

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

Запускаем xev, тыкаем нужные клавиши и получаем примерно следующее в консоли:

KeyPress event, serial 36, synthetic NO, window 0x5200001,

root 0x104, subw 0x0, time 99807059, (170,-16), root:(175,34),

state 0x0, keycode 24 (keysym 0x71, q), same_screen YES,

XLookupString gives 1 bytes: (71) "q"

XmbLookupString gives 1 bytes: (71) "q"

XFilterEvent returns: False


KeyRelease event, serial 36, synthetic NO, window 0x5200001,

root 0x104, subw 0x0, time 99807064, (170,-16), root:(175,34),

state 0x0, keycode 24 (keysym 0x71, q), same_screen YES,

XLookupString gives 1 bytes: (71) "q"

XFilterEvent returns: False

Отсюда нам нужна строчка

state 0x0, keycode 24 (keysym 0x71, q), same_screen YES,

А из этой строчки нужен keycode.

Этот кейкод мы записываем в ~/.xmodmaprc примерно так:

keycode XX = XF86Audio[Play|Pause|Stop|Prev|Next|RaiseVolume|LowerVolume|Mute],

где XX — только что полученный кейкод.

Затем запускаем

xmodmap ~/.xmodmaprc

и радуемся работающим медиа-клавишам.