12.9 Почему во FreeBSD русификация стандартно сделана через scrnmap из koi8-r в cp866, а не непосредственно koi8-r?

На самом деле существует два способа русификации консоли FreeBSD. Первый способ заключается в установке шрифтов koi8-r и изменении параметра ядра SC_MOUSE_CHAR. Второй сводится к использованию шрифтов cp866 и scrnmap из koi8-r в cp866.

Стандартным для FreeBSD является использование второго способа. Дело в том, что некоторые видеоадаптеры аппаратно и неотключаемо расширяют символы (то есть копируют девятый бит изображения символа из его восьмого бита), соответствующие псевдографике в оригинальной таблице символов. При использовании шрифтов koi8-r псевдографика получается "рваной", а русские буквы сливаются. Кроме того, при использовании мыши на консоли в случае использования шрифтов koi8-r происходит порча символов на экране и необходимо переопределять SC_MOUSE_CHAR в конфигурационном файле ядра следующим образом:

   options SC_MOUSE_CHAR=0x03
     


Для других адаптеров можно выбрать использование шрифтов koi8-r без использования scrnmap, однако способ с использованием scrnmap более универсален. В частности, для просмотра информации в других кодировках достаточно сменить scrnmap, например, cp1251-cp866.

Более подробную информацию о русификации консоли можно найти по адресу http://www.tsu.ru/~pascal/unix/syscons/russian.html

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.