Добавить в избранное | Сделать стартовой страницей

Большая Linux библиотека для пользователей OS Linux и ПО для нее
Есть что сказать? Нужен совет? Посети наш форум.


При поддержке
Продвижение сайта
Создание сайта
Администрирование сервера
настройка сервера
Администрирование сервера
настройка сервера
Администрирование сервера
аренда сервера


Русификация OpenBSD.

Русификация OpenBSD

Русификация wscons

Начиная с OpenBSD 2.9, драйвер консоли был полностью переписан. Русская раскладка была добавлена после выхода 2.9, поэтому для набора текста в 2.9, вам необходим этот скрипт. В случае если у вас OpenBSD 3.0 или новее, добавьте в файл /etc/kbdtype раскладку вашей клавиатуры:

# echo "ru" > /etc/kbdtype
  

или раскомментируйте следующею строку в /etc/wsconsctl.conf:

keyboard.encoding=ru
  

Поддержка русского языка достигается путем создания custom ядра с опциями:

option WSDISPLAY_COMPAT_USL
option WSDISPLAY_COMPAT_RAWKBD
option WSDISPLAY_COMPAT_PCVT
option WSDISPLAY_DEFAULTSCREENS=2
  

Исходя из количества экранов по умолчанию, в данном случае два, добавьте в /etc/rc.local следующие строки, в зависимости от версии OpenBSD, для создания трех дополнительных экранов с предварительно загруженным русским шрифтом. Не забудьте запустить дополнительные процессы getty(8), если нужны, на этих экранах, см. /etc/ttys.

Для OpenBSD 2.9:

if [ -x /usr/sbin/wsconscfg -a -x /usr/sbin/wsfontload ]; then
        # Русские koi8 шрифты
        /usr/sbin/wsfontload -h 16 /usr/share/misc/pcvtfonts/koi8-8x16

        for SCREEN in 2 3 4; do
                /usr/sbin/wsconscfg -t 80x25bf -e vt100 $SCREEN
        done

        /bin/sh /path/to/koi8-map.sh > /dev/null
fi
  

Для OpenBSD 3.0 и новее:

if [ -x /usr/sbin/wsconscfg -a -x /usr/sbin/wsfontload ]; then
        # Русские koi8 шрифты
        /usr/sbin/wsfontload -h 16 /usr/share/misc/pcvtfonts/koi8-r-8x16
        # Украинские koi8 шрифты
        # /usr/sbin/wsfontload -h 16 /usr/share/misc/pcvtfonts/koi8-u-8x16

        for SCREEN in 2 3 4; do
                /usr/sbin/wsconscfg -t 80x25bf -e vt100 $SCREEN
        done

        # Следующие строчка позволяет создать фиксированный
        # переключатель на правом Ctrl
        /sbin/wsconsctl -w keyboard.map+="keycode 157 = Mode_Lock" > /dev/null
        # а если вы привыкли пользоваться обычным переключателем - правый Alt
        /sbin/wsconsctl -w keyboard.map+="keycode 184 = Mode_switch" > /dev/null
fi
  

В OpenBSD 2.9 набор русского текста происходит так же, как и в PCVT консоли - зажимая правый Alt. Доступен патч для реализации т.н. sticky переключателя (фиксированного). Патч и краткое руководство по установке доступны здесь. Начиная с версии 3.0, такой переключатель интегрирован в OpenBSD.

Русификация PCVT консоли

Версии OpenBSD 2.8 и ниже, содержат три различных русских шрифта в кодировке koi8-r для русификации PCVT консоли: koi8-8x16, koi8-8x14 и koi8-8x8. Эти шрифты могут быть загружены в знакогенератор EGA/VGA адаптера для использования в различных видеорежимах:

Шрифт Число строк
EGA
Число строк
VGA
koi8-8x8 43 50
koi8-8x14 25 28
koi8-8x16 - 25

Для русификации консоли:

  1. Убедитесь, что система собрана с драйвером PCVT. Файл конфигурации ядра должен содержать следующую строчку:
    vt0 at isa? port 0x60 irq 1
      
  2. Добавьте в /etc/rc.local команды загрузки шрифтов:
    if [ -x /usr/sbin/ispcvt ] && /usr/sbin/ispcvt; then
            /usr/sbin/loadfont -c0 -f/usr/share/misc/pcvtfonts/koi8-r-8x16
            /usr/sbin/loadfont -c1 -f/usr/share/misc/pcvtfonts/koi8-r-8x14
            /usr/sbin/loadfont -c2 -f/usr/share/misc/pcvtfonts/koi8-r-8x8
            /usr/sbin/kcon -m koi8
            /usr/sbin/scon -o
    
            # Следующие строчки нужны только для OpenBSD 2.5 и более ранних версий
            # for t in /dev/ttyC[0-7]; do
            #       echo -n '\033/X' > ${t}
            # done
    fi
      

      После выполнения данных действий, на консоли можно будет нормально читать русский текст в кодировке koi8-r. Однако набор русского текста превратится в этакое упражнение по машинописи, чтобы набрать букву "ф" придётся нажать LeftAlt-A, "Ф" - Shift-LeftAlt-A, "ы" - LeftAlt-S и т.д. На домашней странице Игоря Грабина находится патч, позволяющий создать фиксированный переключатель.

      Русификация X Window

      В файл конфигурации X Window (/etc/X11/XF86Config для XF4 или /etc/XF86Config для X11) в раздел Section "Files" добавьте следующую строчку, перед ранее написанными директивами FontPath:

      FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/"
        

      После рестарта X Window, вы сможете читать тексты на русском языке в кодировке koi8-r. Для ранних версий X Window, вам может понадобится установить дополнительные шрифты, для этого создан порт xcyrillic. Для русификации клавиатуры можно настроить XKB, либо воспользоваться xruskb.

      Настройка XKB

      Для того, чтобы настроить XKB:

      В XFree86 3.x, необходимо добавить следующие строки в секцию Keyboard файла /etc/XF86Config:

      XkbKeycodes     "xfree86"
      XkbSymbols      "us(pc101)"
      XkbGeometry     "pc"
      XkbRules        "xfree86"
      XkbModel        "pc104"
      XkbLayout       "ru"
      XkbOptions      "grp:ctrl_shift_toggle"
        

      В XFree86 4.x, необходимо добавить следующие строки в секцию InputDevice файла /usr/X11/XF86Config:

      Option   "XkbRules"   "xfree86"
      Option  "XkbModel"   "pc101"
      Option  "XkbLayout"  "ru"
      Option  "XkbOptions" "grp_led:scroll,grp:ctrl_shift_toggle"
        

      Эти настройки можно сделать в удобной графической утилите xf86cfg в разделе Keyboard.

      В данных примерах переключателем режимов является комбинация клавиш Ctrl+Shift. Теперь чтобы увидеть вводимые Вами символы, необходимо эти символы определить, так как X Window ничего не знает о символах кириллицы. Для этого необходимо загрузить соответствующую раскладку с помощью xmodmap. Пример такой раскладки можно найти здесь или здесь.

      Загрузка раскладки происходит по-умолчанию из файла ~/.Xmodmap при запуске startx. Если вы используете XDM, добавьте следующую команду в файл ~/.xsession:

      [ -x /usr/X11R6/bin/xmodmap ] && /usr/X11R6/bin/xmodmap ~/.Xmodmap
        

      Более подробную информацию по настройке XKB можно получить здесь.

      Установка xruskb

      Установите порт xruskb. Добавте в ~/.xinitrc или ~/.xsession следующую команду:
    [ -x /usr/local/bin/xrus ] && xrus jcuken-koi8.xmm
      

    Русификация программ

    Bash

    Чтобы заставить bash работать с русскими буквами, нужно создать файл ~/.inputrc, содержащий следующие строки:

    set convert-meta off
    set input-meta on
    set output-meta on
      

    Приложений на базе GTK

    Все приложения на базе GTK (GIMP, Slypheed, X-Chat и другие), можно русифицировать добавив в ~/.gtkrc следующие строчки:

    style "user-font"
    {
            font = "-cronyx-helvetica-*-r-normal-*-12-*-*-*-*-*-koi8-r"
    }
    
    widget_class "*" style "user-font"
      

    Majordomo

    Под русификацией Majordomo мы подразумеваем приведение сообщений, отправляемых Majordomo, в ответ на запросы к такому виду, чтобы почтовый клиент не строил догадок относительно кодировки сообщения, а точно знал ее. Патч, который можно взять здесь, предназначен для Majordomo 1.94.5 и устанавливает кодировку сообщений в koi8-r.

    Mg - emacs-like text editor

    Чтобы заставить mg работать с русскими буквами, достаточно создать файл ~/.mg, содержащий строчку:

    meta-key-mode
      

    Netscape

    Наибольшую проблему при русификации Netscape представляют кнопки и поля ввода. К сожалению по-видимому не существует "нормального" способа решить эту проблему, но кое что все же сделать можно:

    1. Прежде всего конечно следует русифицировать X Window.
    2. Установите порт netscape (navigator или communicator).
    3. Добавте в файл ~/.Xdefaults следующие строки:
      *fontList: -cronyx-helvetica-medium-r-normal-*-14-*-*-*-*-*-koi8-r
      *documentFonts.charset*iso8859-1: koi8-r
      *toolBar*fontList: -cronyx-helvetica-medium-r-normal-*-14-*-*-*-*-*-koi8-r
          

    Остальные настройки производятся обычным способом, из меню Edit/Preferences.

    Talk

    Начиная с OpenBSD 2.9, в программе talk, появилась поддержка русских символов. Другие, более старые версии talk не поддерживали русские символы. Для решения этой проблемы была создана программа bazar. Программа оформлена в виде порта с использованием файлов из /usr/src/usr.bin/talk от OpenBSD. Загрузить порт bazar можно отсюда.

    Программа bazar полностью совместима с talk, но содержит следующие дополнения:

    • Добавлен скроллинг в окна
    • Поддерживаются русские символы
    • Добавлена возможность перекодировки koi8-r <> windows-1251

    Vi/Ex

    Стандартный дистрибутив OpenBSD содержит nvi/nex версию редакторов vi и ex. Для того чтобы эти редакторы правильно отображали русские буквы, необходимо создать файл ~/.nexrc, содержащий следующие строки:

    set print=абвгдежзийклмнопрстуфхцчшщыьъэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЫЬЪЭЮЯ
    set noprint=
    

    вентиляция ресторанов