1. Добейтесь, чтобы дерево директорий для локализации iso8859-5 имело вид
(длины файлов могут отличаться - они будут скорректированы позже):
|
# pwd
/usr/openwin/lib/locale
# ls -l
............................. skipped
lrwxrwxrwx 1 root other 9 Mar 10 19:18 ru -> iso8859-5
lrwxrwxrwx 1 root other 9 Mar 10 19:17 ru_RU -> iso8859-5
lrwxrwxrwx 1 root other 9 Mar 10 19:17 ru_RU.ISO8859-5 -> iso8859-5
............................. skipped
drwxrwxr-x 8 root root 512 Feb 25 13:18 iso8859-5
............................. skipped
# ls -l iso8859-5
-rw-r--r-- 1 root bin 3402 Jan 5 14:37 Compose
drwxr-xr-x 2 root other 512 Feb 25 13:18 LC_MESSAGES
drwxr-xr-x 2 root other 512 Feb 25 13:03 OW_FONT_SETS
-rw-r--r-- 1 root other 157 Feb 25 11:07 OWfontpath
lrwxrwxrwx 1 root root 23 Jul 24 2000 XI18N_OBJS -> ../iso8859-1/XI18N_OBJS
-rw-r--r-- 1 root bin 675 Sep 18 1996 XLC_LOCALE
drwxrwxr-x 2 bin bin 512 Oct 10 2000 app-defaults
drwxrwxr-x 2 root bin 512 Jul 24 2000 libs
drwxrwxr-x 2 root bin 512 Jul 24 2000 print
lrwxrwxrwx 1 root root 25 Jul 24 2000 xomEuro.so.2 -> ../iso8859-1/xomEuro.so.2
drwxrwxr-x 2 root bin 512 Feb 25 13:07 xview
# ls -l iso8859-5/LC_MESSAGES
drwxrwxr-x 2 root bin 512 Feb 25 13:07 .
drwxrwxr-x 8 root root 512 Feb 25 13:18 ..
# ls -l iso8859-5/OW_FONT_SETS
drwxrwxr-x 2 root bin 512 Feb 25 13:07 .
drwxrwxr-x 8 root root 512 Feb 25 13:18 ..
-rw-r--r-- 1 root other 3917 Feb 25 13:03 OpenWindows.fs
# ls -l iso8859-5/app-defaults
drwxrwxr-x 2 root bin 512 Feb 25 13:07 .
drwxrwxr-x 8 root root 512 Feb 25 13:18 ..
-rw-r--r-- 1 root bin 667 Feb 25 03:15 Olwm
# ls -l iso8859-5/libs
drwxrwxr-x 2 root bin 512 Feb 25 13:07 .
drwxrwxr-x 8 root root 512 Feb 25 13:18 ..
lrwxrwxrwx 1 root other 13 Mar 10 20:29 wckind.so -> ./wckind.so.0
-rwxrwxr-x 1 root bin 3244 Dec 4 1999 wckind.so.0
# ls -l iso8859-5/print
drwxrwxr-x 2 root bin 512 Feb 25 13:07 .
drwxrwxr-x 8 root root 512 Feb 25 13:18 ..
-rw-r--r-- 1 bin bin 1072 Dec 9 1999 prolog.ps
# ls -l iso8859-5/xview
drwxrwxr-x 2 root bin 512 Feb 25 13:07 .
drwxrwxr-x 8 root root 512 Feb 25 13:18 ..
-rw-rw-r-- 1 bin bin 1362 Mar 10 20:43 .text_extras_menu
-rw-rw-r-- 1 bin bin 1378 Sep 23 1996 defaults
|
2. Убедитесь, что указанные файлы в директории /usr/openwin/lib/locale
содержат следующие строки:
|
$ grep "ru" locale.dir
iso8859-5/XLC_LOCALE ru.ISO8859-5
ru_RU.ISO8859-5/XLC_LOCALE ru_RU.ISO8859-5
ru.koi8-r/XLC_LOCALE ru.koi8-r
ru_RU.ANSI1251/XLC_LOCALE ru.ansi1251
ru.UTF-8/XLC_LOCALE ru.UTF-8
$ grep "ru" locale.alias
ru_RU.ISO8859-5 ru.ISO8859-5
ru_SU ru.ISO8859-5
ru_RU ru.ISO8859-5
ru_RU.KOI8-R ru.koi8-r
ru_RU.ANSI1251 ru.ansi1251
ru ru.ISO8859-5
ru.koi8-r ru.koi8-r
ru.ansi1251 ru.ansi1251
ru.UTF-8 ru.UTF-8
ru_RU.UTF-8 ru.UTF-8
$ grep "ru" compose.dir
iso8859-5/Compose ru.ISO8859-5
iso8859-5/Compose ru_RU.ISO8859-5
iso8859-5/Compose ru
ru.koi8-r/Compose ru.koi8-r
ru_RU.ANSI1251/Compose ru.ansi1251
ru.UTF-8/Compose ru.UTF-8
|
Вы можете проверить, правильность установки локализаций, выполнив
следующие команды:
|
$ LANG=ru
$ LANG=ru_RU
$ LANG=ru_RU.ISO8859-5
$ locale -a | grep "ru"
ru
ru.koi8-r
ru_RU
ru_RU.ANSI1251
ru_RU.ISO8859-5
ru_RU.KOI8-R
|
Если локализация установлена или указана неверно, то Вы, например, увидите:
|
$ LANG=ru_RU.iso8859-5
couldn't set locale correctly
|
3. Если Вы имеете клавиатуру Sun, то переключение Lat/Рус
осуществляется клавишей <Multi_key>. Если же у Вас обычная
PC-клавиатура (104-клавиши), то удобно сделать переключение Lat/Рус по
клавише <Menu>. Вы можете посмотреть имя (keysym) нажимаемой
клавиши с помощью программы /usr/openwin/demo/xev. Таким образом, в
файле iso8859-5/Compose может быть записано:
|
# %Z%%M% %I% %E% (c) Sun Microsystems, Inc.
#
# Compose table for the Russian language
#
#
# Native English mode
#
STATE "[ English ]"
# Uncomment for Sun keyboard:
<Multi_key> : SWITCH_STATE_TO "[ Русский ]"
# Uncomment for PC keyboard (104 keys):
#<Menu> : SWITCH_STATE_TO "[ Русский ]"
# Uncomment for PC keyboard (101 keys):
#Ctrl<space> : SWITCH_STATE_TO "[ Русский ]"
END_STATE
#
# Russian Mode
#
STATE "[ Русский ]"
# Uncomment for Sun keyboard:
<Multi_key> : SWITCH_STATE_TO "[ English ]"
# Uncomment for PC keyboard (104 keys):
#<Menu> : SWITCH_STATE_TO "[ English ]"
# Uncomment for PC keyboard (101 keys):
#Ctrl<space> : SWITCH_STATE_TO "[ English ]"
................................................. skipped
END_STATE
|
4. Файл iso8859-5/OWfontpath обрабатывается
скриптом /usr/dt/bin/Xsession, функцией ADDFONTPATH_LOCAL
(ADDFONTPATH_REMOTE). В этом скрипте имеется ошибка: в квадратных
скобках вместо 5 пробелов должен быть один символ пробела и один символ
табуляции. По-видимому, табуляция исчезла при копировании файла.
Исправить лучше так:
|
ADDFONTPATH_LOCAL() {
# Combine lines together to make arguments for the xset command
FP=`awk '
BEGIN { fp="fp+ " }
/^[\t ]*$/ { fp=" +fp " ; continue }
{ printf("%s%s", fp, $0) ; fp="," } ' $1`
if [ -n "$FP" ]; then
Log "setting auxiliary font path..."
eval "$XDIR/xset $FP"
fi
}
|
Исправьте все аналогичные ошибки в других скриптах из /usr/dt/bin,
/usr/dt/config. Единственную правильную запись выражения в квадратных
скобках удалось найти в конце файла /usr/dt/config/Xsession.d/0015.sun.env.
Файл iso8859-5/OWfontpath должен иметь вид:
|
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/75dpi
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/Type1
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/TrueType
|
Первая строка файла должна быть пустой или заполненной пробелами и
табуляциями. Это означает, что пути к шрифтам будут добавлены в начало
списка путей поиска. Если пустая строка отсутствует, то пути будут
добавлены в конец списка.
Каждый путь должен быть записан на отдельной строке с её первой позиции.
Это необходимо для тех программ, которые сами читают и анализируют
файл OWfontpath, например /usr/dt/bin/sdtfontadm. Если пути перечислены
в одной строке через запятую, то sdtfontadm не сможет найти путь к
шрифтам в данной локализации.
|
5. Для того, чтобы olwm мог запустится, файл iso8859-5/app-defaults/Olwm
должен иметь вид:
|
! @(#)Olwm 1.7 93/06/04; SMI
!
! Default OLWM resource for Russian locale
!
*olDefaultFont: -b&h-lucida-medium-r-normal-sans-12-120-75-75-p-71-iso8859-5
!
OpenWindows.TitleFont.ru: -b&h-lucida-bold-r-normal-bold-12-120-75-75-p-79-iso8859-5
OpenWindows.ButtonFont.ru: -b&h-lucida-medium-r-normal-sans-12-120-75-75-p-71-iso8859-5
OpenWindows.TextFont.ru: -b&h-lucida-medium-r-normal-sans-12-120-75-75-p-71-iso8859-5
OpenWindows.IconFont.ru: -b&h-lucida-medium-r-normal-sans-12-120-75-75-p-71-iso8859-5
OpenWindows.GlyphFont.ru: -sun-open look glyph-*-*-*-*-*-120-*-*-*-*-*-*
OpenWindows.BoldFontEmulation.ru: False
OpenWindows.CharacterSet.ru: ru
|
6. Семейства шрифтов для приложений OpenWindows определяются в файле
iso8859-5/OW_FONT_SETS/OpenWindows.fs, который
также должен быть исправлен:
|
!
! /usr/openwin/lib/locale/iso8859-5/OW_FONT_SETS/OpenWindows.fs
!
xv_font_set.default: -b&h-lucida-medium-r-normal-sans-12-120-75-75-p-71-iso8859-5
!
font10:definition,-*-*-medium-r-*-*-10-*-*-*-p-*-iso8859-5
font11:definition,-*-*-medium-r-*-*-12-*-*-*-p-*-iso8859-5
font12:definition,-*-*-medium-r-*-*-14-*-*-*-p-*-iso8859-5
font13:definition,-*-*-medium-r-*-*-16-*-*-*-p-*-iso8859-5
font14:definition,-*-*-medium-r-*-*-20-*-*-*-p-*-iso8859-5
font15:definition,-*-*-medium-r-*-*-24-*-*-*-p-*-iso8859-5
!
font20:definition,-*-*-medium-r-*-*-10-*-*-*-m-*-iso8859-5
font21:definition,-*-*-medium-r-*-*-12-*-*-*-m-*-iso8859-5
font22:definition,-*-*-medium-r-*-*-14-*-*-*-m-*-iso8859-5
font23:definition,-*-*-medium-r-*-*-16-*-*-*-m-*-iso8859-5
font24:definition,-*-*-medium-r-*-*-20-*-*-*-m-*-iso8859-5
font25:definition,-*-*-medium-r-*-*-24-*-*-*-m-*-iso8859-5
!
font30:definition,-*-*-bold-r-*-*-10-*-*-*-m-*-iso8859-5
font31:definition,-*-*-bold-r-*-*-12-*-*-*-m-*-iso8859-5
font32:definition,-*-*-bold-r-*-*-14-*-*-*-m-*-iso8859-5
font33:definition,-*-*-bold-r-*-*-16-*-*-*-m-*-iso8859-5
font34:definition,-*-*-bold-r-*-*-20-*-*-*-m-*-iso8859-5
font35:definition,-*-*-bold-r-*-*-24-*-*-*-m-*-iso8859-5
!
font40:definition,-*-*-bold-r-*-*-10-*-*-*-p-*-iso8859-5
font41:definition,-*-*-bold-r-*-*-12-*-*-*-p-*-iso8859-5
font42:definition,-*-*-bold-r-*-*-14-*-*-*-p-*-iso8859-5
font43:definition,-*-*-bold-r-*-*-16-*-*-*-p-*-iso8859-5
font44:definition,-*-*-bold-r-*-*-20-*-*-*-p-*-iso8859-5
font45:definition,-*-*-bold-r-*-*-24-*-*-*-p-*-iso8859-5
!
xv_font_set.small: 10
xv_font_set.medium: 12
xv_font_set.large: 14
xv_font_set.extra_large: 20
!
xv_font_set.default_family: FONT_FAMILY_SANS_SERIF
!
FONT_FAMILY_SANS_SERIF-FONT_STYLE_NORMAL-10:alias,font10
FONT_FAMILY_SANS_SERIF-FONT_STYLE_NORMAL-12:alias,font11
FONT_FAMILY_SANS_SERIF-FONT_STYLE_NORMAL-14:alias,font12
FONT_FAMILY_SANS_SERIF-FONT_STYLE_NORMAL-16:alias,font13
FONT_FAMILY_SANS_SERIF-FONT_STYLE_NORMAL-20:alias,font14
FONT_FAMILY_SANS_SERIF-FONT_STYLE_NORMAL-24:alias,font15
!
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_NORMAL-10:alias,font20
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_NORMAL-12:alias,font21
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_NORMAL-14:alias,font22
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_NORMAL-16:alias,font23
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_NORMAL-20:alias,font24
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_NORMAL-24:alias,font25
!
FONT_FAMILY_SANS_SERIF-FONT_STYLE_MEDUIM-10:alias,font10
FONT_FAMILY_SANS_SERIF-FONT_STYLE_MEDUIM-12:alias,font11
FONT_FAMILY_SANS_SERIF-FONT_STYLE_MEDIUM-14:alias,font12
FONT_FAMILY_SANS_SERIF-FONT_STYLE_MEDIUM-16:alias,font13
FONT_FAMILY_SANS_SERIF-FONT_STYLE_MEDIUM-20:alias,font14
FONT_FAMILY_SANS_SERIF-FONT_STYLE_MEDIUM-24:alias,font15
!
FONT_FAMILY_SANS_SERIF-FONT_STYLE_BOLD-10:alias,font40
FONT_FAMILY_SANS_SERIF-FONT_STYLE_BOLD-12:alias,font41
FONT_FAMILY_SANS_SERIF-FONT_STYLE_BOLD-14:alias,font42
FONT_FAMILY_SANS_SERIF-FONT_STYLE_BOLD-16:alias,font43
FONT_FAMILY_SANS_SERIF-FONT_STYLE_BOLD-20:alias,font44
FONT_FAMILY_SANS_SERIF-FONT_STYLE_BOLD-24:alias,font45
!
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_BOLD-10:alias,font30
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_BOLD-12:alias,font31
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_BOLD-14:alias,font32
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_BOLD-16:alias,font33
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_BOLD-20:alias,font34
FONT_FAMILY_DEFAULT_FIXEDWIDTH-FONT_STYLE_BOLD-24:alias,font35
!
FONT_FAMILY_SANS_SERIF-FONT_STYLE_TYPEWRITER-10:alias,font20
FONT_FAMILY_SANS_SERIF-FONT_STYLE_TYPEWRITER-12:alias,font21
FONT_FAMILY_SANS_SERIF-FONT_STYLE_TYPEWRITER-14:alias,font22
FONT_FAMILY_SANS_SERIF-FONT_STYLE_TYPEWRITER-16:alias,font23
FONT_FAMILY_SANS_SERIF-FONT_STYLE_TYPEWRITER-20:alias,font24
FONT_FAMILY_SANS_SERIF-FONT_STYLE_TYPEWRITER-24:alias,font25
|
7. Файл iso8859-5/xview/.text_extras_menu должен иметь вид:
|
# @(#)text_extras_menu 1.7 94/12/15 SMCC
#
# Copyright (c) 1987-1995 by Sun Microsystems, Inc.
#
# Text "Extras" menu
#
"Отформатировать" fmt
"Отконвертировать" MENU
"WIN -> ISO" iconv -f win -t iso
"WIN -> ALT" iconv -f win -t alt
"WIN -> KOI" iconv -f win -t koi
"KOI -> ISO" iconv -f koi -t iso
"KOI -> ALT" iconv -f koi -t alt
"KOI -> WIN" iconv -f koi -t win
"ISO -> KOI" iconv -f iso -t koi
"ISO -> ALT" iconv -f iso -t alt
"ISO -> WIN" iconv -f iso -t win
"ALT -> ISO" iconv -f alt -t iso
"ALT -> KOI" iconv -f alt -t koi
"ALT -> WIN" iconv -f alt -t win
"Отконвертировать" END
"Изменить регистр" MENU
"abcd -> ABCD" capitalize -u
"ABCD -> abcd" capitalize -l
"abcd -> Abcd" capitalize -c
"Изменить регистр" END
"Сдвинуть строки" MENU
"Вправо" shift_lines -t 1
"Влево" shift_lines -t -1
"Сдвинуть строки" END
"Pretty-print C" indent -st
"Вставить скобки" MENU
" ( )" insert_brackets ( )
" [ ]" insert_brackets \[ \]
" { }" insert_brackets { }
"`` ''" insert_brackets \" \"
"Вставить скобки" END
"Удалить скобки" MENU
" ( )" remove_brackets ( )
" [ ]" remove_brackets \[ \]
" { }" remove_brackets { }
"`` ''" remove_brackets \" \"
"Удалить скобки" END
|
8. Для того, чтобы раздел OpenWindows появился в меню сессий программы
Dtlogin, исправьте файл
/usr/dt/config/ru_RU.ISO8859-5/Xresources.d/Xresources.ow
|
!!######################################################################
!!
!! Xresources.ow
!!
!! Configuration file for the OpenWindow alternate desktop resources
!!
!! (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc.
!!
!! @(#)Xresources.ow.src 1.3 96/05/03
!!
!!######################################################################
!!
!! This file used by the Solaris Desktop Login manager
Dtlogin*altDtsIncrement: True
Dtlogin*altDtName: OpenWindows Desktop
Dtlogin*altDtKey: /usr/openwin/bin/olwm
Dtlogin*altDtStart: /usr/dt/config/Xsession.ow
Dtlogin*altDtLogo: OWlogo
|
Файлы /usr/dt/config/ru_RU.KOI8-R/Xresources.d/Xresources.ow и
/usr/dt/config/ru.ansi-1251/Xresources.d/Xresources.ow
должны выглядеть так:
|
!!######################################################################
!!
!! Xresources.ow
!!
!! Configuration file for the OpenWindow alternate desktop resources
!!
!! (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc.
!!
!! @(#)Xresources.ow.src 1.3 96/05/03
!!
!!######################################################################
!!
!! This file used by the Solaris Desktop Login manager
Dtlogin*altDtsIncrement: True
Dtlogin*altDtName:
Dtlogin*altDtKey:
Dtlogin*altDtStart:
Dtlogin*altDtLogo:
|
9. В домашней директории пользователя, в файле .OWdefaults необходимо
разместить следующие строки:
|
OpenWindows.ScreenSaver.OnOff: off
OpenWindows.ScreenSaver.IdleTime: 10 10
OpenWindows.ObsoleteNotice: True
OpenWindows.SetInput: followmouse
OpenWindows.KeyboardCommands: Full
OpenWindows.Scale: medium
OpenWindows.ScrollbarPlacement: right
OpenWindows.BasicLocale: ru
OpenWindows.DisplayLang: ru
OpenWindows.InputLang: ru
OpenWindows.NumericFormat: ru
OpenWindows.timeFormat: ru
|
10. olwm можно запустить только в локализации ru (ru_RU,
ru_RU.ISO8859-5). В локализациях ru_RU.KOI8-R (ru.koi8-r) и
ru_RU.ANSI1251 это сделать невозможно, т.к. отсутствуют необходимые
для оформления окон шрифты. Однако, Вы можете запускать в этих
локализациях приложения OpenWindows из-под CDE, исправив файлы
|
/usr/openwin/lib/locale/ru_RU.ANSI1251/OW_FONT_SETS/OpenWindows.fs
/usr/openwin/lib/locale/ru_RU.ANSI1251/OWfontpath
/usr/openwin/lib/locale/ru_RU.KOI8-R/OW_FONT_SETS/OpenWindows.fs
/usr/openwin/lib/locale/ru_RU.KOI8-R/OWfontpath
|
аналогично тому, как было объяснено выше.
|
11. Если Вы хотите поменять screen-saver, например на rotor и сделать
диалог на русском языке, то поместите в Вашу домашнюю директорию
файл XLockN со следующим содержимым:
|
|
XLock.mode: rotor
XLock.font: -*-lucida sans-normal-r-*-*-24-*-*-*-*-*-iso8859-5
XLock.background: White
XLock.foreground: Black
XLock.username: Имя:
XLock.password: Пароль:
XLock.info: Для входа введите пароль.
XLock.validate: Идёт проверка...
XLock.invalid: Отвали.
XLock.nice: 10
XLock.timeout: 30
XLock.mono: off
XLock.nolock: off
XLock.remote: off
XLock.allowroot: off
XLock.enablesaver: off
XLock.allowaccess: off
XLock.echokeys: off
XLock.usefirst: off
XLock.verbose: off
XLock.hop.delay: 0
XLock.hop.batchcount: 1000
XLock.hop.saturation: 1
XLock.qix.delay: 30000
XLock.qix.batchcount: 64
XLock.qix.saturation: 1
XLock.image.delay: 2000000
XLock.image.batchcount: 8
XLock.image.saturation: 0.3
XLock.life.delay: 1000000
XLock.life.batchcount: 100
XLock.life.saturation: 1
XLock.swarm.delay: 10000
XLock.swarm.batchcount: 100
XLock.swarm.saturation: 1
XLock.rotor.delay: 10000
XLock.rotor.batchcount: 4
XLock.rotor.saturation: 1
XLock.pyro.delay: 15000
XLock.pyro.batchcount: 40
XLock.pyro.saturation: 1
XLock.blank.delay: 5000000
XLock.blank.batchcount: 1
XLock.blank.saturation: 1
XLock.flame.delay: 200000
XLock.flame.batchcount: 20
XLock.flame.saturation: 1
|
|