LINUX.ORG.RU

Русификация консоли в Slackware 14

 


0

3

Здравствуйте, товарищи.

У меня в консоли после русификации этого дистра вместо кириллицы отображаются квадраты. Как можно исправить? Чё да где прописать, откорректировать и т. д.? Спасибо за внимание.

*Вопрос скорее не о русификации, а о кириллизации консоли.

В консоли или виртуальном терминале? Покажите результаты выполнения

# grep -v "^#\|^$" /etc/rc.d/rc.font /etc/profile.d/lang.sh
# echo $LANG
# locale

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

В консоли, в эмуляторе все нормально.

Вот вывод:

grep -v «^#\|^$» /etc/rc.d/rc.font /etc/profile.d/lang.sh

/etc/rc.d/rc.font:setfont -v Cyr_a8x16.psfu.gz

/etc/profile.d/lang.sh:export LANG=ru_RU.UTF-8

/etc/profile.d/lang.sh:export LC_COLLATE=C

echo $LANG

ru_RU.UTF-8

locale

LANG=ru_RU.UTF-8

LC_CTYPE=«ru_RU.UTF-8»

LC_NUMERIC=«ru_RU.UTF-8»

LC_TIME=«ru_RU.UTF-8»

LC_COLLATE=C

LC_MONETARY=«ru_RU.UTF-8»

LC_MESSAGES=«ru_RU.UTF-8»

LC_PAPER=«ru_RU.UTF-8»

LC_NAME=«ru_RU.UTF-8»

LC_ADDRESS=«ru_RU.UTF-8»

LC_TELEPHONE=«ru_RU.UTF-8»

LC_MEASUREMENT=«ru_RU.UTF-8»

LC_IDENTIFICATION=«ru_RU.UTF-8»

LC_ALL=

puyamolina ()
Ответ на: комментарий от puyamolina
dan@darkstar:~$ cat /etc/rc.d/rc.font
#!/bin/sh
#
# This selects your default screen font from among the ones in
# /usr/share/kbd/consolefonts.
#
unicode_start LatArCyrHeb-16
for i in 1 2 3 4 5 6;do
        echo -ne "\033%G" >/dev/tty$i
done
dn2010 ★★★★★ ()
Ответ на: комментарий от puyamolina

Поправьте строчку setfont в /etc/rc.d/rc.font на
setfont -v Cyr_a8x16 -m cp866_to_uni
Проверьте, что /etc/rc.d/rc.font исполняемый:
# ls -l /etc/rc.d/rc.font
Этого будет достаточно.

bormant ★★★★★ ()

Настрой консоль на шрифт, который умеет кириллицу

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

Дело в том, что шрифт Cyr_a8x16 содержит символы в раскладке 866 и не содержит встроенной юникодной таблицы перекодировки, поэтому, если хотите использовать именно этот шрифт (а он не содержит Ёё), нужно указать таблицу перекодировки из 866 в юникод явно.

Шрифты, содержащие встроенные юдикодные таблицы можно использовать без явного указания таблиц, например:
setfont UniCyr_8x16
setfont LatArCyrHeb-16
setfont ter-k16n
setfont ter-k16b
setfont cyr-sun16
...

bormant ★★★★★ ()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от serkhay

шрифт, который умеет кириллицу

Cyr_a8x16 умеет кириллицу, но одного этого недостаточно.

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

Да, спасибо, это действительно помогло: теперь, например, ошибки набора команд выводятся кириллицей.

Скажите, а каким образом переключать раскладки находясь в консоли? В иксах у меня раскладки переключаются Ctrl+Shift.

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

От root-а создайте файл /etc/rc.d/rc.keymap:

#!/bin/sh
# Load the keyboard map. More maps are in usr/share/kbd/keymaps.
if [ -x /usr/bin/loadkeys ]; then
   loadkeys ruwin_ct_sh-UTF-8
fi
сделайте исполняемым, запустите, чтоб не перегружаться:
# chmod a+x /etc/rc.d/rc.keymap
# /etc/rc.d/rc.keymap

bormant ★★★★★ ()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от bormant

Огромнейшее вам спасибо! Все функционирует. Вы так легко повествуете, что все без исключения получается. Я ваш рецепт законспектировал в текстовом документе.

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

В кедах не забудь сделать то-же самое. Даю наводку: «параметры ситемы - локаль» и «устройства ввода». Просто чтобы в дальнейшем непоняток не было.
Не буду повторять избитое «Патрег - бох», но ось действительно хорошая получилась, особенно начиная с 13.37, поставив 14.1 не пожалел еще ни разу.

cadaber ()
  • Ставишь вот этот пакет
  • Потом правишь вот этот файл (плюс делаешь его исполняемым)
  • Потом вот этот (тоже должен быть исполняемым)
  • В /etc/profile.d/lang.sh ставишь
    export LANG=ru_RU.UTF-8
  • Profit
gwinn ★★★★ ()
Ответ на: комментарий от gwinn

Ставишь вот этот пакет

Совет утратил актуальность, сейчас в стоковой Slackware выбор вариантов раскладок/шрифтов стал намного больше. С 14.1 terminus уже в комплекте.

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

В кедах не забудь сделать то-же самое

Выбрать раскладку клавиатуры или что-то ещё? Если раскладку, то проще для всех сразу задать в иксах: www.linux.org.ru/forum/desktop/9787305?cid=9789481

С учётом любви ТС к Ctrl+Shift, поменять «grp:caps_toggle» на grp:ctrl_shift_toggle. Правда я этой любви не разделяю, жалко терять все Ctrl+Shift+нечто кнопкосочетания ради одной переключалки языка, да и CapsLock-ом всяко удобнее (ИМХО). Если выбор Ctrl+Shift проистекает из оффтопика, то для него тоже есть решения для переноса переключения на CapsLock (например, lswitch).

Если язык, то он по локали выбирается (если установлены kdei/*-ru-*t?z).

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

Про терминус в курсе, а вот за набором раскладок как-то не следил.

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

вот этот пакет

Вообще говоря, является дурным тоном наличие в пакете:

etc/rc.d/rc.font
etc/rc.d/rc.keymap
прямо вот как выше показано, а не как принято у приличных людей:
etc/rc.d/rc.font.new
etc/rc.d/rc.keymap.new
Негоже пользовательские файлы в /etc без предупреждения затирать.

bormant ★★★★★ ()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от gwinn

набором раскладок

Стоит прежде всего обратить внимание на ruwin под разные кодировки и варианты переключения:

$ (cd /usr/share/kbd/keymaps/i386/qwerty/; ls -1 ru*)
ru1.map.gz
ru2.map.gz
ru3.map.gz
ru4.map.gz
ru-cp1251.map.gz
ru.map.gz
ru-ms.map.gz
ruwin_alt-CP1251.map.gz
ruwin_alt-KOI8-R.map.gz
ruwin_alt-UTF-8.map.gz
ruwin_cplk-CP1251.map.gz
ruwin_cplk-KOI8-R.map.gz
ruwin_cplk-UTF-8.map.gz
ruwin_ctrl-CP1251.map.gz
ruwin_ctrl-KOI8-R.map.gz
ruwin_ctrl-UTF-8.map.gz
ruwin_ct_sh-CP1251.map.gz
ruwin_ct_sh-KOI8-R.map.gz
ruwin_ct_sh-UTF-8.map.gz
ru_win.map.gz
ru-yawerty.map.gz

bormant ★★★★★ ()
Последнее исправление: bormant (всего исправлений: 2)

Кончался 2013 год, слака до сих пор не умела юникодную консоль...

Dark_SavanT ★★★★★ ()

А по поводу шрифта есть такой ещё трюк. В /etc/rc.d/rc.font по умолчанию вписано «setfont -v».

setfont без указания шрифта загрузит что? Правильно, /usr/share/kbd/consolefonts/default.psf*, а при его отсутствии default8x16.* или default8x9.* в соответствии с разрешением. Достаточно скопировать любимый шрифт, содержащий юникодную таблицу, в /usr/share/kbd/consolefonts/default.psf.gz, и вот оно, чудо.

Для фреймбуферной консоли рекомендую ter-v16v или другого размера по вкусу, для чисто текстовой, что-то из ter-?16b сообразно часто используемым символам (например, в ter-k* нет символа «№»).

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

Кончался 2013 год, Dark_SavanT до сих пор не умел читать или понимать прочитанное

Не благодарите. Всё сказанное выше — про юникодную (utf8) консоль, которая и в ядре уже по дефолту. А умеет её слака с 12.2 точно, про «раньше» могу ошибаться, надо глянуть, с когда там unicode_start в комплекте. Просто не все умели её корректно включать, частенько почёсывая правой пяткой левое ухо. Но это ведь не проблема слаки, правда?

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

Кончался 2013 год, слака до сих пор не умела юникодную консоль...

Звиздёж и провоцирование поноса. Умеет, только руки нужны из плеч растущие.

cadaber ()
Последнее исправление: cadaber (всего исправлений: 2)
Ответ на: комментарий от bormant

Согласен, что перед установкой стоило бы хотя википедию почитать. Если на старте выбрано Cyr_a8x16 и ct_sh-utf8.map, то вопросов вобще никаких. Разве что в /etc/profile.d/lang.sh написать ru_RU.UTF-8. И фсЁ!!
Дурдом какой-то. Я единственно для переключения правый контрол использую, привык с редхата 6.
Вот что оказывается случается, когда слакварь начинают ставить долбоящеры и убунтофилы.

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