Не отображаются русские буквы в UTF-консоли (Нигде не нашёл решения)

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

Ответить
Norman
Сообщения: 6
ОС: ArchLinux

Не отображаются русские буквы в UTF-консоли

Сообщение Norman »

Проблема много раз обсуждалась, но ни один из найденных мной рецептов у меня не сработал.
После установки ArchLinux в варианте base, попытался русифицировать консоль. Выполнил

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

pacman -S kbd-ru-keymaps terminus-font

Пакеты ставятся с FTP-сервера в локальной сети (самодельный срез от 28 декабря 2007). Сгенерировал локаль, раскомментировав в /etc/locale.gen строчку с ru_RU.UTF-8 и выполнив

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

locale-gen

Правлю /etc/rc.conf, руководствуясь, например Arch wiki:
LOCALE="ru_RU.utf8"
HARDWARECLOCK="localtime"
TIMEZONE="Asia/Novosibirsk"

KEYMAP="ru4"
#CONSOLEFONT="/usr/share/kbd/consolefonts/ter-c16f.psf.gz"
#CONSOLEFONT="/usr/share/kbd/consolefonts/cyr-sun16.psfu.gz"
#CONSOLEFONT="/usr/share/kbd/consolefonts/LatArCyrHeb-16.psfu.gz"
CONSOLEFONT="/usr/share/kbd/consolefonts/ter-u16b"
CONSOLEMAP="/usr/share/kbd/consoletrans/cp866_to_uni"
USECOLOR="yes"

Закомментированные шрифты я тоже пробовал. Проблема в том, что в некоторых случаях вместо русских букв отображаются или знаки вопроса, или квадратики, или ещё какая-нибудь нечисть. Например, в midnight commander и man'ах всё нормально, а набрать русские буквы в командной строке или в vi не удаётся. В X-терминале проблема исчезает полностью, но чистая консоль мне часто бывает нужна и хотелось бы её настроить.
Скорее всего, у меня неправильно выбран CONSOLEMAP. Какой нужно поставить?
Спасибо сказали:
cassini
Сообщения: 5
ОС: ArchLinux

Re: Не отображаются русские буквы в UTF-консоли

Сообщение cassini »

Для начала

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

LOCALE="ru_RU.utf8"

заменить на

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

LOCALE="ru_RU.UTF8"


И попробуй

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

KEYMAP="ru-utf"
Спасибо сказали:
Norman
Сообщения: 6
ОС: ArchLinux

Re: Не отображаются русские буквы в UTF-консоли

Сообщение Norman »

cassini писал(а):
02.04.2008 12:46

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

LOCALE="ru_RU.UTF8"


И попробуй

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

KEYMAP="ru-utf"

Помогло. Спасибо :)
Выходит, проблема была в кеймапе ru4. Но переключать раскладки по Ctrl+Shift мне не нравится - привык к CapsLock'у. Буду искать кеймап.
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

Norman писал(а):
02.04.2008 13:14
Выходит, проблема была в кеймапе ru4. Но переключать раскладки по Ctrl+Shift мне не нравится - привык к CapsLock'у. Буду искать кеймап.


Видел советы (ArchLinux 7.1 и UTF-8 в консоли http://vadim303.wordpress.com/2007/03/06/012/) использовать
KEYMAP=”-u ru4″

но сам не пробовал.
Спасибо сказали:
heilage
Сообщения: 24
ОС: Arch (Core dump)

Re: Не отображаются русские буквы в UTF-консоли

Сообщение heilage »

cassini писал(а):
02.04.2008 12:46
Для начала

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

LOCALE="ru_RU.utf8"

заменить на

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

LOCALE="ru_RU.UTF8"

А еще лучше на ru_RU.UTF-8, ибо именно так оно значится в locale.gen
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

cassini писал(а):
02.04.2008 12:46

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

LOCALE="ru_RU.UTF8"


Везде, в т.ч. и здесь http://wiki.archlinux.org/index.php/Интернационализация пишут

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

LOCALE="ru_RU.UTF-8"


(у меня именно так).
Спасибо сказали:
Norman
Сообщения: 6
ОС: ArchLinux

Re: Не отображаются русские буквы в UTF-консоли

Сообщение Norman »

Почитав ответы, я сделал так:

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

LOCALE="ru_RU.UTF-8"
HARDWARECLOCK="localtime"
TIMEZONE="Asia/Novosibirsk"
KEYMAP="ru-utf-menu-swapcaps"
#KEYMAP="ru4"
CONSOLEFONT="/usr/share/kbd/consolefonts/ter-u16b"
CONSOLEMAP="/usr/share/kbd/consoletrans/cp866_to_uni"

задействовав для переключения раскладки бесполезную в консольном режиме клавишу "menu".
Всё работает, но хотелось бы переключаться по CapsLock (символом моего желания является закомментированная, но не удалённая строка с ru4).

2 sirocco
Спасибо за ссылки.

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

KEYMAP="-u ru4"

к сожалению, не работает. Не знаю что имелось в виду в той статье (возможно, у меня какого-нибудь пакета не хватает), но раскладка перестаёт переключаться вообще :)

2 heilage
А еще лучше на ru_RU.UTF-8, ибо именно так оно значится в locale.gen

Да, правильно. Но вот "locale -a" пишет в ответ "ru_RU.utf8" - вот я отсюда, по душевной простоте, и скопировал :)
Вообще-то, как ни пиши - хоть ru_RU.UTF-8, хоть ru_RU.UTF8, хоть ru_RU.uft-8, - ничего в поведении консоли не меняется. Хотя, помнится, из-за неверного написания у меня уже вылезала проблема с автоматическим определением локали в скрипте...

Есть ли вариант решения с переключением по CapsLock? На локали koi8r (пару лет назад на 10.1 Slackware) кеймап ru4 работал прекрасно...
Спасибо сказали:
Аватара пользователя
unclegreen
Сообщения: 22
ОС: Arch Core Dump x86_64

Re: Не отображаются русские буквы в UTF-консоли

Сообщение unclegreen »

а вот у меня почему то консоль категорически отказывается отображать русские буквы... вместо них закорючки, причём переключение раскладки работает прекрасно... а букв нет(((
вот всё что у меня есть

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

locale -a
C
POSIX
en_US.utf8
ru_RU.utf8

я уже и терминус поставил и kbd-ru-keymaps
ни как не получается.. подскажите пожалуйста что ещё можно сделать???
Вложения
rc.conf
(2.99 КБ) 67 скачиваний
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

Вот кусок моего rc.conf

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

KEYMAP="ru-utf"
CONSOLEFONT="cyr-sun16"
CONSOLEMAP="cp866_to_uni"
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1100
ОС: ArchLinux

Re: Не отображаются русские буквы в UTF-консоли

Сообщение Black »

А гентушный метод не пробовали:

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

KEYMAP="-u ru4"
CONSOLEFONT="ter-k16f" #или любой koi8-r
CONSOLEMAP=""

В rc.local добавить:

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

dumpkeys -c koi8-r

В арче вроде бы dumpkeys в rc.conf не используется, поэтому и в rc.local.
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение Snupt »

sirocco писал(а):
16.04.2008 07:28
CONSOLEMAP="cp866_to_uni"

Это лишнее.
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

CnupT писал(а):
16.04.2008 21:15
sirocco писал(а):
16.04.2008 07:28
CONSOLEMAP="cp866_to_uni"

Это лишнее.

Спасибо. Отстал я от жизни.
Спасибо сказали:
Аватара пользователя
unclegreen
Сообщения: 22
ОС: Arch Core Dump x86_64

Re: Не отображаются русские буквы в UTF-консоли

Сообщение unclegreen »

sirocco писал(а):
17.04.2008 08:45
CnupT писал(а):
16.04.2008 21:15
sirocco писал(а):
16.04.2008 07:28
CONSOLEMAP="cp866_to_uni"

Это лишнее.

Спасибо. Отстал я от жизни.

самое противное в том что даже после всех операций описанныйх выше у меня всё равно рус язык работать не хочет((( :crazy:
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

unclegreen писал(а):
16.04.2008 01:07
а вот у меня почему то консоль категорически отказывается отображать русские буквы... вместо них закорючки, причём переключение раскладки работает прекрасно... а букв нет(((

Английские буквы отображаются?
framebuffer используете?
Спасибо сказали:
Аватара пользователя
unclegreen
Сообщения: 22
ОС: Arch Core Dump x86_64

Re: Не отображаются русские буквы в UTF-консоли

Сообщение unclegreen »

sirocco писал(а):
18.04.2008 09:05
unclegreen писал(а):
16.04.2008 01:07
а вот у меня почему то консоль категорически отказывается отображать русские буквы... вместо них закорючки, причём переключение раскладки работает прекрасно... а букв нет(((

Английские буквы отображаются?
framebuffer используете?

да с английским всё в поряде... а фреймбуфер не настроен ещё((( наверное8)
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

unclegreen писал(а):
18.04.2008 10:17
а фреймбуфер не настроен ещё((( наверное8)


В файле /boot/grub/menu.lst есть параметр vga=xxx?

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

kernel /boot/vmlinuz26 root=/dev/sda3 vga=771 ro 3
Спасибо сказали:
Аватара пользователя
sirocco
Сообщения: 782
Статус: Задвинутый соучастник
Контактная информация:

Re: Не отображаются русские буквы в UTF-консоли

Сообщение sirocco »

На всякий случай это http://archlinux.org.ru/forum/index.php/topic,588.0.html почитайте.
Спасибо сказали:
Ответить