如果要配置本地化的桌面会话,需要:
设置 LANG
环境变量及其它国际语言 支持 (NLS) 环境变量
访问与语言相关的信息目录和资源文件
通过国际化系统,远程执行应用程序
如果要使用操作系统中对语言有关的例程,就必须为桌面设置 LANG
环境变量。桌面支持:
西欧及拉丁语系语言
日语
繁体中文
简体中文
韩语
桌面供应商可能已经添加了对其它类型语言的支持。
可以将 LANG
设置为操作系统所支持的任何值。 登录屏幕中的"选项"菜单显示了系统所支持的语言和地区列表。
为桌面设置 LANG
的方法有四种:
编辑 Xconfig 文件中的资源
使用登录屏幕中的"选项"菜单
创建可执行的 sh 或 ksh 的 Xsession.d 正文。(关于使用 Xsession.d 正文的进一步信息,请参阅"查找 Xsession.d 正文"。)
通过编辑用户的 .dtprofile 文件
当设置完 LANG
后,桌面使用下列与语言相关的 文件来决定本地化接口。
颜色-/usr/dt/palettes/desc.language
背景-/usr/dt/backdrops/desc.language
如果通过 Xconfig 文件的手段来设置语言,则 将登录屏幕本地化,并为所有用户设置了 LANG
。该方法是在多重显示器系统中为所有显示器更改 LANG
的唯一方法。(要修改 Xconfig ,请将 /usr/dt/config/Xconfig 复制到 /etc/dt/config/Xconfig)
设置语言的方法是,在 /etc/dt/config/Xconfig 文件中插入如下一行:
dtlogin.host_display.language: language
例如,下面一行将 my_host:0 中的 LANG
设置为 Swedish_locale。
dtlogin.my_host_0.language: Swedish_locale
dtlogin 客户程序读取该语言相应的信息目录, 并调用本地化的登录屏幕。然后,dtlogin客户程序使用 /etc/dt/config/Xresources 资源文件中的如下资源来决定语言环境列表:
dtlogin*language
dtlogin*languageList
dtlogin*languageName
Xconfig 文件可能需要根据所选择的语言来设置 NLSPATH
环境变量。如果不是这种情况,或者希望自己来设置 NLSPATH
变量,请参阅 "NLSPATH 环境变量"。
要为一个会话过程设置语言,请使用登录屏幕"选项"菜单。将登录屏幕本地化,并为该用户设置了 LANG
。 在会话结束时,LANG
将返回其缺省值(在 dtlogin 中设置)。
用户可在 HomeDirectory/.dtprofile 中复位登录 LANG
设置。将不会本地化登录屏幕,而是为该用户设置了 LANG 。
如果使用 sh 或 ksh:
LANG=language export LANG
如果使用 csh:
setenv LANG language
LANG
环境变量更改了在其中搜索会话配置文件的目录名。
本地化的会话的配置文件为:
/usr/dt/config/language/Xresources ("登录管理器"的资源 文件)
/usr/dt/config/language/sys.font("会话管理器"的资源 文件)
/usr/dt/config/language/sys.resources("会话管理器"的资源 文件)
/usr/dt/config/language/sys.session("会话管理器"的可执行 shell )
/usr/dt/config/language/sys.dtwmrc("窗口管理器"的资源 文件)
/usr/dt/appconfig/types/language/dtwm.fp("窗口管理器"的前 面板)
除了 LANG
外,还有一些其它的 NLS 环境变量,例如LC_CTYPE
和 LC_ALL
。这些变量不受 dtlogin 语言资源或登录屏幕"选项"菜单的影响。它们必须在下述文件中设置:
系统范围变量: /etc/dt/config/Xsession.d
个人变量: HomeDirectory/.dtprofile
NLSPATH
环境变量决定了应用程序搜索信息目录的 目录路径。必须将 LANG
和 NLSPATH
都设置为使用该信息目录。关于本地化信息的位置的进一步信息, 请参阅 "对信息目录进行本地化"。大多数桌面客户程序将使用该路径作为启动时 NLSPATH
的前缀。
桌面包含的字体在 /usr/lib/X11/fonts 目录中。 每个目录含有一个目录文件 fonts.dir 和一个别名文件 fonts.alias。关于创建 fonts.dir 和 fonts.alias 文件的进一步信息,请参阅 mkfontdir 的手册页。
要列出服务器上所有可用的字体,请使用 xlsfonts 命令。要添加或删除服务器的字体,请使用 xset 命令。
桌面客户的 app-defaults 文件的缺省位置为 /usr/dt/app-defaults/language。例如 ,如果将 LANG
设置为 Swedish_locale,那么应用程序将在 /usr/dt/app-defaults/Swedish_locale 中寻找其 app-defaults 文件。如果没有设置 LANG ,那么应用程序将忽略 language ,而在 /usr/app-defaults/C 目录中寻找其 app-defaults 文件。
要更改 app-defaults 文件的位置,请使用 XFILESEARCHPATH
环境变量。例如,如果要将 app-defaults 移动到 /users 目录中,可将 XFILESEARCHPATH
变量设置为 /usr/app-defaults/language/classname。
如果在 HomeDirectory /.dtprofile 中设置 XFILESEARCHPATH
, 该数值将应用于所有的桌面和运行的 X 客户程序中。 非客户程序将无法找到其资源文件,除非将这些文件链接或复制到 XFILESEARCHPATH
所指定的目录中。
要将 /usr/dt/appconfig 目录中的文件用户化,可在 定制之前将该文件复制到 /etc/dt/appconfig 目录中。
动作和数据类型定义文件的搜索路径包括与语言相关的目录:
个人:HomeDirectory/dt/types
系统范围:/etc/dt/appconfig/types/language
内置:/usr/dt/appconfig/types/language
"应用程序管理器"的配置文件的搜索路径是:
个人:HomeDirectory/dt/appmanager
系统范围:/etc/dt/appconfig/appmanager/language
内置:/usr/dt/appconfig/appmanager/language
该目录下的文件和目录名均已本地化。
如果要本地化图标,可用"图标编辑器"进行编辑,并将它保存在:
/etc/dt/appconfig/icons/language
如果将它保存在其它目录中,可将 XMICONSEARCHPATH
环境变量设置为包含保存图标的目录。XMICONBMSEARCHPATH
控制 用以搜索图标的路径。
背景的本地化是通过使用说明文件(desc.language 和 desc.backdrops)来实现的。无任何指定的本地化 目录(例如 /usr/dt/backdrops/language)供背景文件使用。 所有的语言环境使用相同的背景文件,但是它们有各自的 desc.language 文件,其中含有背景的译名。
说明文件中包含已翻译的背景名称的资源说明。例如:
Backdrops*Corduroy.desc: Velours Backdrops*DarkPaper.desc: PapierKraft Backdrops*Foreground.desc: AvantPlan
desc.language 文件用以获得背景说明中关于语言环境的背景说明,以便使背景能在"式样管理器" 中显示。如果有描述说明,则它将在"式样管理器"的背景列表中显示。否则,将使用背景文件名。
用户可以在 HomeDirectory/.dt/backdrops/desc.backdrops 文件中添加自己的背景说明。该文件用于在忽略语言环境的情况下,获得背景说明中所有用户添加的 背景。
说明 文件的搜索路径是:
个人:HomeDirectory/.dt/backdrops/desc.backdrops
系统范围:/etc/dt/backdrops/desc.language
内置:/usr/dt/backdrops/desc.language
调色板的本地化是通过使用说明文件(desc.language 和 desc.palettes)实现的。不存在指定的本地化目录(例如 /usr/dt/palettes/language)。所有语言环境的 调色板使用相同的调色板文件,但是它们都有各自的 desc.palettes 文件,该文件中含有调色板的译名。
说明文件中含有关于调色板译名的资源说明。例如:
Palettes*Cardamon.desc: Cardamone Palettes*Cinnamon.desc: Cannelle Palettes*Clove.desc: Brun
desc.language 文件用于搜索调色板描述中关于语言环境 language的说明,以使其能在"式样管理器" 的调色板列表中显示。如果有说明,它将显示在"式样管理器"的调色板列表中。否则,将会使用调色板文件名。
用户可以在 HomeDirectory/.dt/palettes/desc.palettes 文件中添加自己的调色板说明。该文件用于在忽略语言环境的情况下,获得调色板说明中的所有用户添加的 调色板。
该说明文件的搜索路径为:
个人:HomeDirectory/.dt/palettes/desc.palettes
系统范围:/etc/dt/palettes/desc.language
内置:/usr/dt/palettes/desc.language
如果已本地化了帮助卷,必须将它存储在下列目录中的任一目录下。系统使用所找到的第一个帮助卷。 这些目录是按下面顺序搜索的:
个人:HomeDirectory/.dt/help
系统范围:/etc/dt/appconfig/help/language
内置:/usr/dt/appconfig/help/language
如果本地化了信息目录,则将它存储到下面的目录中:
/usr/dt/lib/nls/msg/language。
这些目录中含有 *.cat 文件。
可以在任何安装了类似的本地化桌面的 远程执行主机上调用本地化桌面应用程序。 当应用程序启动时,在调用它的主机上,与 NLS 相关的环境变量的数值将传送到远程主机上。 然而,这些环境变量并不包含任何主机信息。
如果出现意外的字符或行为,或者字符不能显示或键入,可能需要复位或安装键盘映射或者更改输入法。
输入法是由 LC_CTYPE
、LANG
或 LC_ALL
环境变量所决定的,或者由 -lang 选项所指定的语言决定。
例如,如果用户希望在 POSIX shell 中以 C 语言环境打开终端:
LANG=C dtterm
这个新的终端使用 C 语言环境,包括 C 的输入法和字体。如果使用指定语言的的键盘,那么输入法可能 不接受输入的任何扩展字符。当用指定语言的键盘使用 C 语言环境时,在调用终端之前用户需要将 LC_CTYPE
(或 LANG
或LC_ALL
))环境变量设置为相应的数值。
例如,用德国键盘使用 C 语言环境,应键入:
LANG=C LC_CTYPE=DeDE dtterm
如果 X 服务器已经复位,并且键盘映射已经初始化,可以在服务器使用 xmodmap 命令复位正确的键盘映射。