Опубликован: 01.07.2008 | Уровень: специалист | Доступ: платный
Дополнительный материал 1:

Приложение

< Лекция 8 || Дополнительный материал 1: 12345678

* ЗАСАДА С ЛОКАЛЬЮ В Redhat 7.3

Консольные приложения (чисто текстовые)

Для корректной работы текстовых приложеный должна быть выставлена локаль ru_RU.KOI8-R или ru_RU.koi8r. Оба варианта включают показы русских букв в ls, обеспечивают сортировку по алфавиту в кодировке koi8.

Установка: в /etc/profile или в ~/.profile или ~/.bashrc

export     LANG=ru_RU.KOI8-R
export LC_CTYPE=ru_RU.KOI8-R

или

export LANG=ru_RU.koi8r
export LC_CTYPE=ru_RU.koi8r
KDE-приложения (X-овые)

Для корректной работы KDE эти установки НЕ ПОДХОДЯТ! Для KDE программ локаль _должна_ быть выставлена в

export     LANG=ru_RU.KOI8-R.KOI8-R
export LC_CTYPE=ru_RU.KOI8-R
Персональный Emacs (это личное, М.М.)
LC_CTYPE=                     Rk       дает вводить,        считает буквами
LC_CTYPE=ru_RU.koi8r          Rk    не дает вводить, иногда считает буквами
LC_CTYPE=ru_RU.KOI8-R         Rk    не дает вводить, иногда считает буквами
LC_CTYPE=ru_RU.KOI8-R.KOI8-R  Rk       дает вводить, иногда считает буквами

Мораль: командный файл запускающий Rk должен перед вызовом emacs 'a исполнить

unset LANG
unset LC_CTYPE
Русская раскладка клавиатуры в RedHat 7.3

В файле /etc/X11/XF86Config-4

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "keyboard"
        Option      "CoreKeyboard"
	Option "XkbRules" "xfree86"
	Option "XkbModel" "pc101"
        Option     "XkbLayout"   "ru"           # русская раскладка
        Option     "XkbVariant"  "phonetic"     # раскладка qwerty/яверты
#       Option     "XkbVariant"  "base"         # раскладка qwerty/йцукенг
#       Option     "XkbVariant"  "winkeys"
        Option     "XkbOptions"  "grp:alt_shift_toggle"
EndSection

* ДЛЯ СТАРЫХ ВЕРСИЙ Linux и properitary Unix - HP, Solaris...

Как подключить русские фонты к компьютеру с X11
  1. Создаем каталог cyrfonts. Копируем туда файлы *.bdf или *.pcf
    mkdir cyrfonts
       cp *.bdf *.pcf cyrfonts
    Замечание: предпочтительно добыть фонты в формате PCF а не BDF. Проблема в том, приложение заказывает размер фонта, которого у X или FONT-сервера нет, то FONT-сервер пытается скалировать и в случае .BDF погибает и убивает все, что под ним запущено. Конвертировать bdf-фонты можно командой bdftopcf.
  2. В каталоге с фонтами создаем оглавление фонтов для X-server'а : fonts.dir
    cd cyrfonts
       mkfontdir
  3. Указываем X-server'у, чтоб он брал фонты из нашего каталога
    xset +fp $HOME/cyfonts
       xset fp rehash
  4. Пользуемся русскими фонтами.
    xterm -fn koi9x15
       mailtool -fn koi6x10
    и т.д.
Чтобы русские фонты включались и находились по умолчанию
  1. До запуска X-Windows установить переменную окружения FONTPATH. Если у вас
    FONTPATH=$HOME/cyrfonts: export FONTPATH  # для /bin/sh или bash или ksh
    
    setenv FONTPATH $HOME/cyrfonts:  # для C-Shell /bin/csh или tcsh
  2. Или скопировать фонты в директорию со стандартными фонтами.
    cp *.bdf /usr/lib/X11/fonts/misc
       cd /usr/lib/X11/fonts/misc
       mkfontdir
       xset fp rehash
  3. Если у вас XFree86, то добавить строчку в файл /etc/X11/XF86Config
    FontPath	"/home/yourname/cyrfonts/"
  4. Установить фонт по умолчанию в своем .Xdefaults файле. Добавить в файл .Xdefaults такие строчки:
    font.name:              koi9x15
    icon.font.name:         koi6x10
    
    XTerm*font:             koi6x10
    XTerm*VT100*font1:	koi6x10
    XTerm*VT100*font2:	koi8x13
    XTerm*VT100*font3:	misc16
    XTerm*VT100*font4:	misc24
    XTerm*VT100*font5:	demos8x14
    XTerm*VT100*font6:	demos8x16
    
    emacs.font:	        koi9x15
    emacs.default_font:	koi9x15
Если у вас SunOs 4.1.1 и, соответственно, NeWS

Тогда вся вышеописанная процедура не сработает. У NeWS совершенно собственный формат фонтов.

  1. Преобразуем фонты в формат NeWS
    convertfont *.bdf
  2. Создаем оглавление для NeWS server
    bldfamily
  3. Подключаем фонты в точности, как в стандартном X11
    xset +fp `pwd`     # Дополняем каталог, подключаем фонты.
    xset  fp rehash    # Чтоб сервер перезачитал каталоги с фонтами
    все.

Еще можно в файл Synonims.list воткнуть строчку с aliaсами. Иначе фонты будут браться только по имени файлов.

Редактирование фонтов

Некоторые комплектты X-Windows имеют редактор фонтов. Он может называться xfed, fontedit, xfd. Если у вас такового нет, попробуйте найти исходники.

xfed font.bdf

convertfont -v font   # получаем   font.vfp
fontedit font.vfp
# затем  
convertfont  -b ?? font.vfp #  и получаем font.ff

Подключение русской клавиатуры в X-Windows

Достаньте файлы с раскладкой клавиатуры. (Их можно найти во многих местах, в частности здесь). Выполните команду

xmodmap   файл-с-раскладкой.xmm

Переключатель рус/лат - клавиша CapsLock

Чтобы отключить русскую клавиатуру, выполните команду

xmodmap   default.xmm

Подключение русской клавиатуры в XFree86 3-й версии

XF86Config:

Section Keyboard
 LeftAlt      Meta
 AltGr        ModeShift
 Right_Ctl    ModeLock
 ScrollLock   ScrollLock
 EndSection

Вешает переключатель на правый Ctrl, при этом еще и лампочка CapsLock будет загораться.

< Лекция 8 || Дополнительный материал 1: 12345678
Дмитрий Ярцев
Дмитрий Ярцев
Россия
Игорь Зарубин
Игорь Зарубин
Россия