Как задействовать дополнительные клавиши клавиатуры (Linux Mandriva 2010)

PCLinuxOS

Модератор: Bizdelnick

Аватара пользователя
nilpointer
Сообщения: 149
ОС: Linux

Как задействовать дополнительные клавиши клавиатуры

Сообщение nilpointer »

Как задействовать дополнительные клавиши клавиатуры в Linux Mandriva 2010
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение SLEDopit »

например с помощью пакета lineakd.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Аватара пользователя
ATIpro
Сообщения: 614
ОС: Arch Linux x86_64

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение ATIpro »

А как они видятся системой? Если для них event ввода есть, то наверное через lirc можно прикрутить.
Спасибо сказали:
Аватара пользователя
AlexYeCu
Сообщения: 1137
ОС: fedora

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение AlexYeCu »

1. Открываем терминал и запускаем xev
2. Жмём клавишу
3. Смотрим вывод в части keycode и keysym. Если не xmonad, то ищем соответствие для keycode в
/usr/share/X11/xkb/keycodes
4. Повторяем для каждой мультимедийной клавиши
5. В /usr/share/X11/xkb/symbols/inet дописываем свою клаву по аналогии с уже существующими
6. В xorg.conf прописываем нужную модель клавы (ту, что указали в пункте 4) (Если у вас клавиатура из hal настраивается, то пусть кдругие подскажут как модель указать)
7. Рестартуем иксы, радуемся
Вместо 5 и 6 можно создать свой файл вида:

Код: Выделить всё

#!/bin/sh
xmodmap -e "keycode 162 = XF86AudioPlay"
xmodmap -e "keycode 164 = XF86AudioStop"
xmodmap -e "keycode 144 = XF86AudioPrev"
xmodmap -e "keycode 153 = XF86AudioNext"
xmodmap -e "keycode 160 = XF86AudioMute"
xmodmap -e "keycode 174 = XF86AudioLowerVolume"
xmodmap -e "keycode 176 = XF86AudioRaiseVolume"
xmodmap -e "keycode 236 = XF86Mail"
xmodmap -e "keycode 223 = XF86Standby"
xmodmap -e "keycode 178 = XF86MyComputer"
xmodmap -e "keycode 229 = XF86Search"
xmodmap -e "keycode 230 = XF86Favorites"
xmodmap -e "keycode 233 = XF86Forward"
xmodmap -e "keycode 234 = XF86Back"
xmodmap -e "keycode 232 = XF86Stop"
xmodmap -e "keycode 231 = XF86Reload"
xmodmap -e "keycode 187 = XF86WebCam"

Затем сделать его исполняемым и запихнуть в автозапуск (сессии или DE)
Ну или прям так запустить.
Если пользуетесь xmonad, то может не хватить мозгов всё сделать как надо (у меня не хватило, у остальных вроде ок). Там мультимедийка прописывается прямо в .xmonad/xmonad.hs по кейсимам (не совсем верно, зато просто):

Код: Выделить всё

--XF86WebCam
    , ((0, 0x1008ff8f ), spawn "camx")

В посте не рассмотрен вопрос, когда клавиша не выдаёт ни толкового кейкода, ни кейсима (0x0), это вам погуглить. Там просто, но я забыл (поскольку таких клавиши встречал ровно две) :)
Спасибо сказали:
Аватара пользователя
SinClaus
Сообщения: 1952
Статус: Мучитель Мандривы
ОС: Arch,BSD

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение SinClaus »

Вообще-то клавиатуру Microsoft Curve 2000 Mandriva 2008.1 опознала сама, и кнопки можно было назначать в центре управления КДЕ.
Спасибо сказали:
Аватара пользователя
AlexYeCu
Сообщения: 1137
ОС: fedora

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение AlexYeCu »

SinClaus писал(а):
24.12.2009 10:07
Вообще-то клавиатуру Microsoft Curve 2000 Mandriva 2008.1 опознала сама, и кнопки можно было назначать в центре управления КДЕ.

Иксы «знают» далеко не все клавиатуры. Клавиши могут выдавать те же самые кейеоды и кейсимы, однако одной буквы в названии хватит, чтобы конкретная модель «не распозналась». И так будет до тех пор, пока процессом именования будут руководить маркетологи, брэнд-менеджеры и прочие неотягощённые интеллектом.
Спасибо сказали:
Аватара пользователя
SinClaus
Сообщения: 1952
Статус: Мучитель Мандривы
ОС: Arch,BSD

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение SinClaus »

Это понятно, но xev-ом отнюдь не каждый сможет воспользоваться... А уж написать профайл клавиатуры (гораздо удобнее просто определения макросов) - вообще единицы :)
Спасибо сказали:
Аватара пользователя
nilpointer
Сообщения: 149
ОС: Linux

Re: Как задействовать дополнительные клавиши клавиатуры

Сообщение nilpointer »

Воспользовался xev, определил вывод keycode и keysym, а дальше я что-то не очень понимаю, что делать?

Код: Выделить всё


keycode 166 (keysym 0x1008ff26, XF86Back),
 keycode 167 (keysym 0x1008ff27, XF86Forward),
 keycode 136 (keysym 0xff69, Cancel),
 keycode 181 (keysym 0x1008ff73, XF86Reload),
 keycode 180 (keysym 0x1008ff18, XF86HomePage),
/////////////////////////////////////////////////////////////////////////////////////////////
 keycode 121 (keysym 0x1008ff12, XF86AudioMute),
 keycode 122 (keysym 0x1008ff11, XF86AudioLowerVolume),
 keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume),
 keycode 173 (keysym 0x1008ff16, XF86AudioPrev),
 keycode 171 (keysym 0x1008ff17, XF86AudioNext),
 keycode 174 (keysym 0x1008ff15, XF86AudioStop),
 keycode 172 (keysym 0x1008ff14, XF86AudioPlay),
////////////////////////////////////////////
 keycode 225 (keysym 0x1008ff1b, XF86Search),
 keycode 164 (keysym 0x1008ff30, XF86Favorites),
 keycode 163 (keysym 0x1008ff19, XF86Mail),
 keycode 152 (keysym 0x1008ff5d, XF86Explorer),
  keycode 148 (keysym 0x1008ff1d, XF86Calculator),
///////////////////////////////////////////////////////////////////////////////////////////


Клавиатура подключена через конвертер ( PS/2 в USB ) и в оборудование определяет конвертер При возможности определить самостоятельно такой как у меня нет в списках A4Tech KL-7MU

Для Amarok в KDE я както настроил клавиши мультимедиа, а вот с остальными, как-то не очень.

Кроме мультимедиа еще работают XF86Back, XF86Forward, XF86HomePage, XF86Search и XF86Mail (настроил запуск Kmail), а

Cancel, XF86Reload, XF86Favorites, XF86Explorer, XF86Calculator никак не реагируют, но через xev как-бы определены.

Спасибо за инструкцию но куда именно все прописывать я так и не разобрался, так в тех папках что указано еще куча файлов и папок....
Я просто до этого момента этого никогда еще не делал.
Спасибо сказали: