Переназначение клавиши на клавиатуре

Kubuntu, Xubuntu и другие

Модератор: Модераторы разделов

ilembitov
Сообщения: 20

Переназначение клавиши на клавиатуре

Сообщение ilembitov »

Привет, глубокоуважаемый all!
Случилась у меня беда - на клавиатуре ноутбука сломалась клавиша "ш/i". Соответственно, нужно переназначить эту клавишу на какую-то другую (например, "\ /| \", которая над Enter-ом у Dell inspiron 1525) - так, чтобы у меня был способ напечатать эти буквы в GNOME, gdm и консоли. setkeycodes не осилил. Проблема очень мучительная, так что надеюсь на помощь!
ОС - Ubuntu 9.04, как уже говорил, GNOME.
Заранее спасибо.
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Переназначение клавиши на клавиатуре

Сообщение eddy »

Попробуйте сделать замену в /usr/share/X11/xkb/symbols/ru
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
ilembitov
Сообщения: 20

Re: Переназначение клавиши на клавиатуре

Сообщение ilembitov »

eddy писал(а):
01.09.2009 09:31
Попробуйте сделать замену в /usr/share/X11/xkb/symbols/ru

Вот только брякнул про то, чтобы использовать кнопку с чертами, а потом понял - она довольно-таки нужна. Идеальный вариант - CapsLock (в жизни им не пользовался), но его нет в этом списке... Не подскажите, где подсмотреть его код?
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Переназначение клавиши на клавиатуре

Сообщение eddy »

Посмотреть коды клавиш (которые распознаются системой) можно при помощи xev.

Исправьте строчку
key <CAPS> { [ Caps_Lock ] };

на

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

 key <CAPS> {
       type= "ALPHABETIC",
        symbols[Group1]= [               i,               I ],
        symbols[Group2]= [    Cyrillic_sha,    Cyrillic_SHA ]
    };

и уберите
modifier_map Lock { <CAPS> };

По идее, должно заработать.
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
ilembitov
Сообщения: 20

Re: Переназначение клавиши на клавиатуре

Сообщение ilembitov »

eddy писал(а):
01.09.2009 10:58
Посмотреть коды клавиш (которые распознаются системой) можно при помощи xev.

Исправьте строчку
key <CAPS> { [ Caps_Lock ] };

на

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

 key <CAPS> {
       type= "ALPHABETIC",
        symbols[Group1]= [               i,               I ],
        symbols[Group2]= [    Cyrillic_sha,    Cyrillic_SHA ]
    };

и уберите
modifier_map Lock { <CAPS> };

По идее, должно заработать.

А в каком файле убрать modifier_map Lock { <CAPS> }? В ru его нет.
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Переназначение клавиши на клавиатуре

Сообщение eddy »

/usr/share/X11/xkb/symbols/pc
Но попробуйте без этой модификации, возможно, будет работать и так.

посмотреть, какие из настроек symbols у вас задействованы, можно при помощи

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

xkbcomp :0.0 - | grep xkb_symbols

Правда, в новых иксах изменение файлов конфигурации в /usr/share/X11/xkb/symbols/ на раскладке не отражается (см.
подобную проблему )
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
ilembitov
Сообщения: 20

Re: Переназначение клавиши на клавиатуре

Сообщение ilembitov »

eddy писал(а):
01.09.2009 12:11
/usr/share/X11/xkb/symbols/pc
Но попробуйте без этой модификации, возможно, будет работать и так.

На данный момент (без этой модификации) при переходе на русскую раскладку нажатие капса вызывает i и одновременно собственно капс) В английской раскладке веселее - при нажатии на капс включается собственно капс. При повторном нажатии - капс не выключается. Более того, если я включу капс из русской раскладки, перейду в английскую и нажму капс еще раз - он не выключится.
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Переназначение клавиши на клавиатуре

Сообщение eddy »

А если из /usr/share/X11/xkb/symbols/pc убрать строку про CAPS ?
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
kerne1
Сообщения: 45
ОС: Debian unstable

Re: Переназначение клавиши на клавиатуре

Сообщение kerne1 »

2ilembitov

А так?

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

$ cat > ~/.xmodmaprc << EOF
clear lock
keycode 66 = i I Cyrillic_sha Cyrillic_SHA
EOF

$ xmodmap .xmodmaprc
Errare humanum est
Спасибо сказали: