настройка клавиатур, которых нет в списке

Форум предназначен для новичков. В нем предполагается рассматривать вопросы, которые встают на первых этапах освоения Linux
Аватара пользователя
exe
Неотъемлемая часть форума
Сообщения: 860
Зарегистрирован: 28 ноя 2003, 21:08
Откуда: Минск

настройка клавиатур, которых нет в списке

Сообщение exe »

На примере моей непонятной unikey, чтобы работали
нестандартные клавиши.

1. Используя xev определить коды клавиш.
keycode определяет имя из /etc/X11/xkb/keycodes/xfree86.

Добавить секцию в /etc/X11/xbk/symbols/inet
partial alphanumeric_keys
xkb_symbols "unikey" {
name[Group1]= "Unikey Keyboard";

key <I66> { [ XF86WebCam ] };
key <I65> { [ XF86Search ] };
key <I67> { [ XF86Refresh ] };
key <I6B> { [ XF86Terminal ] };
key <I6C> { [ XF86Mail ] };
key <I32> { [ XF86WWW ] };

key <I5F> { [ XF86Standby ] };

key <I6D> { [ XF86CD ] };
key <I20> { [ XF86AudioMute ] };
key <I2E> { [ XF86AudioLowerVolume ] };
key <I30> { [ XF86AudioRaiseVolume ] };
key <I10> { [ XF86AudioPrev ] };
key <I19> { [ XF86AudioNext ] };

key <I5E> { [ XF86PowerOff ] };
key <I5F> { [ XF86Sleep ] };
key <I63> { [ XF86WakeUp ] };
};
2. Теперьt /usr/X11R6/lib/X11/xkb/rules/xorg
Добывить unikey в ! $inetkbds list

! $inetkbds = airkey acpi scorpius azonaRF2300 \
brother \
btc5113rf btc5126t btc9000 btc9000a btc9001ah btc5090\
cherryblue cherrybluea \
chicony chicony9885 unikey \
compaqeak8 compaqik7 compaqik13 compaqik18 armada presario ipaq \
dell inspiron dtk2000 \
dexxa diamond genius geniuscomfy2 \
ennyah_dkb1008 \
hpi6 hp2501 hp2505 hp5181 hpxe3gc hpxe3gf hpxe4xxx hpzt11xx \
hp500fa hp5xx hp5185 \
honeywell_euroboard \
rapidaccess rapidaccess2 rapidaccess2a \
ltcd logiaccess logicdp logicdpa logicink logiciink \
logiinkse logiinkseusb logiik itouch \
mx1998 mx2500 mx2750 \
microsoftinet microsoftpro microsoftprooem microsoftprose \
microsoftoffice microsoftmult \
oretec \
propeller \
qtronix \
samsung4500 samsung4510 \
sk1300 sk2500 sk6200 sk7100 \
sven symplon toshiba_s3000 trust trustda yahoo

3. Доюавить описание в /usr/X11R6/lib/X11/xkb/rules/xorg.lst, ! model

! model
pc101 Generic 101-key PC
...
trustda Trust Direct Access Keyboard
unikey Unikey Keyboard
yahoo Yahoo! Internet Keyboard

4. Довабить секцию в /usr/X11R6/lib/X11/xkb/rules/xorg.xml
<model>
<configItem>
<name>unikey</name>
<description>Unikey Keyboard</description>
</configItem>
</model>

5. Поменять xorg.conf
Section "InputDevice"

# Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
# Option "Xleds" "1 2 3"
# To disable the XKEYBOARD extension, uncomment XkbDisable.
# Option "XkbDisable"
# To customise the XKB settings to suit your keyboard, modify the
# lines below (which are the defaults). For example, for a non-U.S.
# keyboard, you will probably want to use:
# Option "XkbModel" "pc102"
# If you have a US Microsoft Natural keyboard, you can use:
# Option "XkbModel" "microsoft"
#
# Then to change the language, change the Layout setting.
# For example, a german layout can be obtained with:
# Option "XkbLayout" "de"
# or:
# Option "XkbLayout" "de"
# Option "XkbVariant" "nodeadkeys"
#
# If you'd like to switch the positions of your capslock and
# control keys, use:
# Option "XkbOptions" "ctrl:swapcaps"
# Or if you just want both to be control, use:
# Option "XkbOptions" "ctrl:nocaps"
#
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "unikey"
Option "XkbLayout" "us,ru(winkeys)"
Option "XkbOptions" "grp:ctrl_shift_toggle"
Option "XkbOptions" "grp:shift_toggle,grp_led:scroll"
EndSection