LINUX.ORG.RU

Посмотри в /usr/share/kbd/keymaps/i386/qwerty/, может быть найдется подходящее.

Deleted
()

Читай `less /usr/share/X11/xkb/rules/base.lst` (ищи option), если не найдешь нужное — можно попробовать переназначить клавишу при помощи `xmodmap`.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Читай `less /usr/share/X11/xkb/rules/base.lst` (ищи option), если не найдешь нужное — можно попробовать переназначить клавишу при помощи `xmodmap`.

Без Иксов!

Kroz ★★★★★
()

Copycat тебе уже подсказал. Я лично менял, но на кнопку Win (но принцип остается). Если не получится - маякни, помогу.

Kroz ★★★★★
()
Ответ на: комментарий от Kroz

Я отредактировал /lib/kbd/keymaps/i386/qwerty/ru.map.gz следующим образом:

altgr           keycode 57 = AltGr_Lock
                keycode 125 = AltGr

57 — Space, 125 — Cmd. Переключение на русский язык происходит нормально, но обратно переключается нажатием на Space без CMD. Никак не пойму как сделать правильно. Был-бы признателен за помощь.

ganagin
() автор топика
Ответ на: комментарий от ganagin

но обратно переключается нажатием на Space без CMD

Да, ведь русский язык это AltGr_Lock, то есть как бы зажатый CMD в вашей конфигурации.

CMD нужно не в altgr, а в что-нибудь ещё (alt, ctrl, shift) превращать. Обычно свободны shiftL и shitfR. Полный список возможных модификаторов есть в ″man keymaps″.

mky ★★★★★
()
Ответ на: комментарий от border-radius

Не знаю, что на маках. Я отвечал по поводу конктретных строк в ru.map.gz и почему они дают такое поведение.

А mod4 это ведь из X-ов, а не из текстовой консоли?

mky ★★★★★
()
Ответ на: комментарий от ganagin

Переключение на русский язык происходит нормально, но обратно переключается нажатием на Space без CMD.

Все правильно делает. Ты сделал что пробел в альтернативной раскладке меняет раскладку (AltGr_Lock), а кнопка Cmd временно меняет раскладку пока зажата (AltGr). Вот и получается такой эффект.

Начнем с простого. Допустим, нужно чтобы Alt+Space переключало раскладку. Это выглядит вот так:

        alt     keycode  57 =   AltGr_Lock
altgr   alt     keycode  57 =   AltGr_Lock

Согласно твоей задаче, Cmd (а на обычной клаве это кнопка Win) должна быть четвертым модификатором, кроме Ctrl, Alt, Shift. Команда

$ dumpkeys -l
(только не из иксов) покажет тебе доступные модификаторы. Возьмем, например, ctrlr . Соответственно, тебе нужно вот такое:
        ctrlr   keycode  57 =   AltGr_Lock
altgr   ctrlr   keycode  57 =   AltGr_Lock
И еще нужно рассказать, что твоя кнопка Cmd будет модификатором ctrlr
                keycode 125 = CtrlR
(название кнопки-модификатора из man keymaps).

Profit.

P. S. Долго допирал, что название модификатора (ctrlr) и название кнопки (CtrlR) пишутся по-разному.

Kroz ★★★★★
()
Ответ на: комментарий от Kroz

Спасибо, полностью разобрался в вопросе — всё прекрасно работает.

ganagin
() автор топика
Ответ на: комментарий от mky

А mod4 это ведь из X-ов, а не из текстовой консоли?

В текстовой консоли Mod4 соответствует Meta (в данном случае не следует путать с Alt).

anonymous
()
Ответ на: комментарий от anonymous

Если не сложно, можно эту мысль в более развёрнутом виде, потому что в ″man keymaps″ даётся следующее:

          modifier                symbol
           none                    x              Y
           Shift                   X              y
           AltGr                   x              Y
           Alt                     Meta_x         Meta_Y
           Shift+Alt               Meta_X         Meta_y

То есть вроде как ″Meta″ это и есть модификатор ″Alt″.

И как я понял из файла ″/lib/kbd/keymaps/mac/include/mac-linux-keys-bare.inc″ из строки:

keycode  55 = Alt             # Command/Apple key
то по фен-шую ТС должен был делать кнопку CMD модификатором ″Alt″, а не ″AltGr″ или ″CtrlR″?

mky ★★★★★
()
3 ноября 2014 г.
Ответ на: комментарий от Kroz

Спасибо! И мне помогли =)

К сожалению в иксах это не работает(

MotusAnimi
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.