у меня такаяже клава стоит под вистой и у многих тут такие есть покупают в месте с машиной вот думаю потом этот ком перевести на Ubuntu полностю , сейчас убунты стоят только на лаптопах , )) не было надобности не интересовался как настроить ! а как перщеведу надо если настроишь опиши как или вышли файл настройки многие будут благодарны
Попробуй вот такой ход:
1. "Система :: Параметры :: Комбинация клавиш клавиатуры" - очисти _все_ (потом некоторые включишь, _после_ назначения KeySym'ов) noname комбинации вида "0xHH";
2. Добавь следующие команды в конец файла
/etc/init.d/bootmisc.sh (перед завершающим ":", на самом деле, а не в самый конец):
#
# Setting key codes
#
#
# Group: user, hp, ?, photo, music, video
#
setkeycodes e02c 172 # xev keycode: 130; user
setkeycodes e014 148 # xev keycode: 159; hp
setkeycodes e026 167 # xev keycode: 177; ?
setkeycodes e01f 160 # xev keycode: 163; photo
setkeycodes e016 151 # xev keycode: 201; music
setkeycodes e039 186 # xev keycode: 93; video
#
# Group: shopping, sports, finance, connect, search, chat, e-mail
#
setkeycodes e01e 161 # xev keycode: 204; shopping
setkeycodes e012 146 # xev keycode: 200; sports
setkeycodes e027 168 # xev keycode: 152; finance
# missing dmesg.. # xev keycode: 178; connect
# missing dmesg.. # xev keycode: 229; search
setkeycodes e015 149 # xev keycode: 151; chat
# missing dmesg.. # xev keycode: 236; e-mail
#
# Group: eject 1, eject 2
#
setkeycodes e018 152 # xev keycode: 146; eject 1
setkeycodes e003 131 # xev keycode: 135; eject 2
#
# Group: rec, stop, play/pause, prev, next
#
setkeycodes e006 134 # xev keycode: 191; rec
# missing dmesg.. # xev keycode: 164; stop ([*1] conflicts w/ ?)
# missing dmesg.. # xev keycode: 162; play/pause
# missing dmesg.. # xev keycode: 144; prev
# missing dmesg.. # xev keycode: 153; next
#
# Group: volume, mute
#
# missing dmesg.. # xev keycode: 174; volume down
# missing dmesg.. # xev keycode: 176; volume up
# missing dmesg.. # xev keycode: 160; volume up
# /Setting key codes
... объясняю зачем так мнгого букф.. Это на случай если у нас клавы разные коды репортают..
Например, у меня некоторые клавиши уже определялись сразу xev'ом (без необходимости добалять че-нить типа "setkeycodes e006 134".. для этих клавиш у меня строка начинается с коммента "# missing dmesg..".
Так же для любой строки прописана инфа типа "# xev keycode: 174; volume down" - это уже какой код дает утилита xev, _после_ того как необходимая etkeycodes выполнена.
... Вобщем, все эти камменты - чисто чтобы не запутаться.
Warning: в командах типа
setkeycodes e003 131 вторая цифра _не_ должна быть такой-же какая уже есть в выводе
sudo dumpkeycodes!! .. иначе будут дубликаты.
двигаем дальше...
3. вопреки этому вот
HowTo , прописывание
/usr/bin/xmodmap /etc/xmodmap.conf в файл
/etc/gdm/PostLogin/Default у меня на самом деле не сработало никаким боком - xev продолжал дампить коды клавы без KeySym'ов..
Обходный путь, как выяснилось, достаточно прост. Лично я сделал так:
3.1. Выполнил подряд следующие команды (на самом деле у меня был .sh файл, который я исполнял ручками, до того как понял как можно сделать на автомате):
xmodmap -e "keycode 130 = hpUser"
xmodmap -e "keycode 159 = hpSystem"
xmodmap -e "keycode 177 = Help"
xmodmap -e "keycode 163 = XF86Pictures"
xmodmap -e "keycode 201 = XF86Music"
xmodmap -e "keycode 93 = XF86Video"
xmodmap -e "keycode 204 = XF86Shop"
xmodmap -e "keycode 200 = XF86LaunchA"
xmodmap -e "keycode 152 = XF86Finance"
xmodmap -e "keycode 178 = XF86WWW"
xmodmap -e "keycode 229 = XF86Search"
xmodmap -e "keycode 151 = XF86Messenger"
xmodmap -e "keycode 236 = XF86Mail"
xmodmap -e "keycode 146 = XF86Eject"
xmodmap -e "keycode 135 = XF86Eject"
xmodmap -e "keycode 191 = XF86AudioRecord"
xmodmap -e "keycode 164 = XF86AudioStop"
xmodmap -e "keycode 162 = XF86AudioPause"
xmodmap -e "keycode 144 = XF86AudioPrev"
xmodmap -e "keycode 153 = XF86AudioNext"
xmodmap -e "keycode 174 = XF86AudioLowerVolume"
xmodmap -e "keycode 176 = XF86AudioRaiseVolume"
xmodmap -e "keycode 160 = XF86AudioMute"
3.2. _После_ 3.1., сделал:
$ xmodmap -pke > ~/.Xmodmap
3.3. Перезагрузился. После логина, система выдала страный диалог с вопросом "Найдены фалы xmodmap: .Xmodmap, вы хотите их загрузить?". Вобщем, выбрал .Xmodmap в правом селекторе и нажал какую--то кнопочку ("Загрузить", кажется) чтобы он появился в левом. Потом обрал галочку со "Спрашивать каждый раз" и применил это дело.
После выполнения 3.x, система должна каждый раз грузиться с опознаными MMedia кнопками (
xev при их нажатии должен давать и keycodeкод и KeySym).
4. Собственно, назначение KeySym'ов конкретным действиям...
.. лично я только четыре клавиши назначил с пом. гномовского "Комбинация клавиш клавиатуры" т.к. мне нравится как оно по дефолту работает. Это:
- Отключить звук: XF86AudioMute
- Уменьшить громкость: XF86AudioLowerVolume
- Увеличить громкость: XF86AudioRaiseVolume
- Извлечь: XF86Eject /** я нажимал нижнюю eject, т.к. верхняя уже до меня чем-то непонятным назначена действию lock screen и я так и не нашел как это отменить **/
P.S.: на этом шаге, в апплете "Комбинация клавиш клавиатуры" должны уже светиться именно KeySyms, а не noname коды. Если это не так, значит что-то не верно сделано до этого...
Остальные клавиши назначил путем прописки в гномовский "реестр" следующих команд (для compiz.. если надо для metacity - то ключи другие!).
Привожу пример shell скрипта, написанного для этой цели (быстрее чем копаться в gnome-editor):
#!/bin/sh
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command0_key" \
--type string "XF86Pictures"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command0" \
--type string '***gthumb /path/to/my/photos/;-)/***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command1_key" \
--type string "XF86Music"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command1" \
--type string '***audacious***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command2_key" \
--type string "XF86Video"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command2" \
--type string '***gxine***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command3_key" \
--type string "XF86AudioRecord"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command3" \
--type string 'gnome-sound-recorder'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command4_key" \
--type string "XF86AudioStop"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command4" \
--type string '***audacious -s***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command5_key" \
--type string "XF86AudioPause"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command5" \
--type string '***audacious -t***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command6_key" \
--type string "XF86AudioPrev"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command6" \
--type string '***audacious -r***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command7_key" \
--type string "XF86AudioNext"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command7" \
--type string '***audacious -f***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command8_key" \
--type string "XF86WWW"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command8" \
--type string 'firefox'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command9_key" \
--type string "XF86Search"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command9" \
--type string 'firefox "http://www.google.com/"'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command10_key" \
--type string "XF86Messenger"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command10" \
--type string '***xterm -fn "-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1" -geometry 128x48 -e BitchX***'
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/run_command11_key" \
--type string "XF86Mail"
gconftool-2 \
--set "/apps/compiz/general/allscreens/options/command11" \
--type string 'firefox "http://mail.google.com/mail/"'
.. сразу оговорюсь: пишлось проигнорить некоторые клавиши, т.к. количество команд, задаваемых таким образом, оказалось ограниченным (не более 12 или 13..)
также, е все юзают BitchX либо audacious .. вобщем я выделил такие "спорные" команды с пом. "***...***" в выгеприведенном коде.
Good luck.. self-killers ;-)