URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 3262
[ Назад ]

Исходное сообщение
"RH дистрибутив. Переключение раскладки в консоли"

Отправлено irman , 06-Сен-10 16:27 
Всем здравствуйте.
У меня есть нормальная дефолтная eng/rus раскладка. Все работает. Б том числе и переключение.
Подскажите как сделать переключение раскладки клавиатуры с нынешней комбинации клавиш ctrl+shift(идет по дефолту), на alt+shift?
Скажу сразу, xorg.conf которых 2 миллиона в интернете, не решает проблемы и вроде не должен, потому что на моей машине нет и небыло никаких иксов. Голая консоль.

Кстати, просто ради любопытства, а зачем там в xorg.conf, секции о раскладке клавиатуры если они не действуют? На случай если я захочу Х доустановить, - а вот мы уже все приготовили?


Содержание

Сообщения в этом обсуждении
"RH дистрибутив. Переключение раскладки в консоли"
Отправлено alexmasz , 06-Сен-10 18:14 
> Подскажите как сделать переключение раскладки клавиатуры с нынешней комбинации клавиш ctrl+shift(идет по дефолту), на alt+shift?

#apt-get install console-cyrillic
#dpkg-reconfigure console-cyrillic

как оно в RH незнаю


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено irman , 06-Сен-10 18:21 
>> Подскажите как сделать переключение раскладки клавиатуры с нынешней комбинации клавиш ctrl+shift(идет по дефолту), на alt+shift?
>
>#apt-get install console-cyrillic
>#dpkg-reconfigure console-cyrillic
>
>как оно в RH незнаю

Тоесть надо еще что-то устанавливать? Консоль уже имеет у меня кирилицу! Мне надо лишь сменить настройки переключения с дефолтных ctrl+shift на alt+shift.


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено alexmasz , 07-Сен-10 13:20 
>Тоесть надо еще что-то устанавливать? Консоль уже имеет у меня кирилицу! Мне
>надо лишь сменить настройки переключения с дефолтных ctrl+shift на alt+shift.

то есть: если нету посмотрите репозитории,
если установлен - настроить как вам требуется.

в RH-distro посмотрите на предмет:
system-config-language
system-config-keyboard


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено dado , 08-Сен-10 00:08 
>>Тоесть надо еще что-то устанавливать? Консоль уже имеет у меня кирилицу! Мне
>>надо лишь сменить настройки переключения с дефолтных ctrl+shift на alt+shift.
>
>то есть: если нету посмотрите репозитории,
>если установлен - настроить как вам требуется.
>
>в RH-distro посмотрите на предмет:
>system-config-language
>system-config-keyboard

Посмотрел. system-config-language спрашивает, какой язык я хочу. У меня с этим и до этого был порядок. Русский есть и работает
попробовал yum install system-config-keyboard, -предложил установить 44Mb / 77 пакетов От неожиданности я немного эээ, растерялся. Всего то, хочу сменить переключение языка в чистой консоли. Так и не решил этот вопрос. Казалось, будет просто. Спасибо помогавшим в любом случае...


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено ze6ra , 09-Сен-10 10:50 
>>> Подскажите как сделать переключение раскладки клавиатуры с нынешней комбинации клавиш ctrl+shift(идет по дефолту), на alt+shift?
>>
>>#apt-get install console-cyrillic
>>#dpkg-reconfigure console-cyrillic
>>
>>как оно в RH незнаю
>
>Тоесть надо еще что-то устанавливать? Консоль уже имеет у меня кирилицу! Мне
>надо лишь сменить настройки переключения с дефолтных ctrl+shift на alt+shift.

loadkeys с нужной раскладкой, чтоб автоматом грузилось изменить /etc/sysconfig/keyboard.

Посмотрите в /lib/kbd какая раскладка с переключением по ctrl+shift


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено dromermail.ru , 09-Сен-10 20:08 
>[оверквотинг удален]
>>>#dpkg-reconfigure console-cyrillic
>>>
>>>как оно в RH незнаю
>>
>>Тоесть надо еще что-то устанавливать? Консоль уже имеет у меня кирилицу! Мне
>>надо лишь сменить настройки переключения с дефолтных ctrl+shift на alt+shift.
>
>loadkeys с нужной раскладкой, чтоб автоматом грузилось изменить /etc/sysconfig/keyboard.
>
>Посмотрите в /lib/kbd какая раскладка с переключением по ctrl+shift

Я пробую найти файл который мне дает текущую раскладку. Гугл не помогает. В папке /lib/kbd пробую команду: grep -rl 'control shift' .

./keymaps/mac/include/mac-linux-keys-bare.inc
./keymaps/ppc/include/mac-linux-keys-bare.inc
./keymaps/i386/include/linux-keys-extd.inc
./keymaps/i386/include/linux-keys-bare.inc

Ни один из них вроде не катит. Строчки переключения раскладки в них нет

>Посмотрите в /lib/kbd какая раскладка с переключением по ctrl+shift

Как посмотреть? Там туча файлов раскладок. Какой из них с моей текущей раскладкой? Как выглядит в конфиге срока-переключатель раскладки?


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено ze6ra , 10-Сен-10 09:26 

>Как посмотреть? Там туча файлов раскладок. Какой из них с моей текущей
>раскладкой? Как выглядит в конфиге срока-переключатель раскладки?

AltGr_Lock - на постоянное переключениe группы.
AltGr - на момент нажатия.

Привязка идёт к коду клавиши

а так, man keymaps, loadkeys, showkey, dumpkeys.

текущий скорее всего тот что прописан в /etc/sysconfig/keyboard (думаю что ru.map)

ls -l /lib/kbd/keymaps/i386/qwerty/ru* - должна покажет уже имеющтеся раскладки с руским языком, выбирайте или подредактируйте текущую выставив свою комбинацию на переключение.


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено dromermail.ru , 10-Сен-10 22:17 
>[оверквотинг удален]
>
>Привязка идёт к коду клавиши
>
>а так, man keymaps, loadkeys, showkey, dumpkeys.
>
>текущий скорее всего тот что прописан в /etc/sysconfig/keyboard (думаю что ru.map)
>
>ls -l /lib/kbd/keymaps/i386/qwerty/ru* - должна покажет уже имеющтеся раскладки с руским языком,
>выбирайте или подредактируйте текущую выставив свою комбинацию на переключение.
>

cat /etc/sysconfig/keyboard
KEYBOARDTYPE="pc"
KEYTABLE="ru"
Какая из раскладок моя в данный момент?

ls -l /lib/kbd/keymaps/i386/qwerty/ru*
/lib/kbd/keymaps/i386/qwerty/ru1.map.gz
/lib/kbd/keymaps/i386/qwerty/ru2.map.gz
/lib/kbd/keymaps/i386/qwerty/ru3.map.gz
/lib/kbd/keymaps/i386/qwerty/ru4.map.gz
/lib/kbd/keymaps/i386/qwerty/ru-cp1251.map.gz
/lib/kbd/keymaps/i386/qwerty/ru.map.gz
/lib/kbd/keymaps/i386/qwerty/ru-ms.map.gz
/lib/kbd/keymaps/i386/qwerty/ru_win.map.gz
/lib/kbd/keymaps/i386/qwerty/ru-yawerty

grep -rl 'AltGr' /lib/kbd/keymaps/i386/qwerty/
Ничего такого нет похожего на AltGr во всех файлах папки

Дистрибутив CentOS. Я уже ищу ответ около года. И НИКТО мне непомог и маны тоже :(


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено ze6ra , 11-Сен-10 08:52 
>[оверквотинг удален]
>/lib/kbd/keymaps/i386/qwerty/ru1.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru2.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru3.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru4.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru-cp1251.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru-ms.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru_win.map.gz
>/lib/kbd/keymaps/i386/qwerty/ru-yawerty
>

ваша ru.map.gz
(суффикс map.gz дляloadkeys указывать не обязятельно утилита сама всё сделает)

>grep -rl 'AltGr' /lib/kbd/keymaps/i386/qwerty/
>Ничего такого нет похожего на AltGr во всех файлах папки
>

А если так попробовать (неужели суффикс .gz не навёл на размышления):
zgrep -l 'AltGr' /lib/kbd/keymaps/i386/qwerty/ru*

>Дистрибутив CentOS. Я уже ищу ответ около года. И НИКТО мне непомог
>и маны тоже :(

в man loadkeys и map keymaps подробно всё расписано, да и статей по русификации консоли в сети море, там ещё более подробно.


"RH дистрибутив. Переключение раскладки в консоли"
Отправлено dromermail.ru , 11-Сен-10 15:12 
Произошло чудо, сделал. Видно глаз был замылен, большое спасибо, подсказали кое чего зебра и другие.
Может кому понадобиться, пишу как сделал.
vim /lib/kbd/keymaps/i386/qwerty/ru.map.gz

1. Все строки содержащие AltGr_Lock банально коментирую. Их 8. Потом делаю такие вставки как:

                        keycode 42 = Shift
         alt            keycode 42 = AltGr_Lock    # My insert 1
altgr    alt            keycode 42 = AltGr_Lock    # My insert 2

                        keycode 54 = Shift
        alt             keycode 54 = AltGr_Lock     # My Insert 3
altgr   alt             keycode 54 = AltGr_Lock     # My Insert 4


                        keycode 56 = Alt            
        shift           keycode 56 = AltGr_Lock     # My Insert 5
altgr   shift           keycode 56 = AltGr_Lock     # My Insert 6


                        keycode 100 = Alt            # Тут был AltGr (Врем. переключатель)
        shift           keycode 100 = AltGr_Lock     # My Insert 7
altgr   shift           keycode 100 = AltGr_Lock     # My Insert 8

В принципе все, переключалку сделал по alt+shift, а старую по ctrl+shift убрал. Но ведь надо и переключение на время удержания какой либо клавиши. Делаю так

                        keycode 125 = AltGr
                        keycode 126 = AltGr
Это клавиши Windows-логотип

Дальше я себе добавил CapsLock как Tab работать. Имею слабость промахиваться, а CapsLock мне не нужен
58 = Tab  # Все CapsLockа у вас уже нет :))

Ну или точнее после сохранения и перезагрузки

Какие утилиты вам помогут понять кто есть кто из клавиш?
showkey --keycodes в иксах у меня глючила. В консоли все идеально объяснила маны ненадо :)

cat /etc/sysconfig/keyboard
KEYBOARDTYPE="pc"
KEYTABLE="ru"
Какая из раскладок моя в данный момент?
Вот эта /lib/kbd/keymaps/i386/qwerty/ru.map.gz Почему так секретно, я не знаю. Если будет раскладка
/lib/kbd/keymaps/i386/qwerty/ru1.map.gz,  то cat покажет KEYTABLE="ru1"

Простенький мануал тут
http://skif.bas-net.by/bsuir/admin/node68.html

Анализ моих непониманий
1) Смена раскладки клавиатуры - плохой запрс гуглу
2) Файл текущей раскладки хитро шифруется в строке KEYTABLE="ru"
3) Переключатель и сама раскладка все в одном файле - (писал каком) и к xorg.conf ни малейшего отношения не имеют. Если мы конечно говорим про консоль, при установке вы выбирали русскую UTF-8

Надеюсь кому-то помог