2. 系统级设置

2.1. 选择字符集

目前,主要的选择是在 windows-1251 和 iso-8859-5 之间。Windows-1251 提供了与 M$ Windows 的兼容性,并且是迄今为止几乎所有斯拉夫语言最流行的字符集。另一方面,iso-8859-5 具有更好的支持并且更易于设置。

本 HOWTO 将解释并行使用这两种字符集。除非在文本中另有说明,否则来自 bellinux 页面的白俄罗斯语支持包包含本 HOWTO 中提到的所有文件。

2.2. 内核中的 windows-1251

当控制台和 X Window 系统本地化为 windows-1251 时,内核中需要 Windows-1251 支持来可视化 Cyrillic 中的 MS Windows 文件名。由于最新的 FAT 文件系统以 Unicode 存储文件名,我们必须定义虚拟文件系统层的输出字符集,并在内核中安装对 windows-1251 的支持。

白俄罗斯语支持包中包含一个针对 2.2.14 内核的补丁。要应用补丁,

2.3. 内核中的 ISO-8859-5

Linux 内核中内置了对 iso-8859-5 的支持。要启用 iso-8859-5,请确保在内核设置的 nls 部分编译此模块。通常,iso-8859-5 默认编译,可以自动加载或通过发出
 insmod nls_iso8859-5
				
作为 root 用户。

添加
 codepage=866,iocharset=iso8859-5
							
到您的挂载选项中,以便以 iso-8859-5 获取文件名。

2.4. 设置区域设置

2.5. 控制台中的白俄罗斯语

2.5.1. 使用 windows-1251 设置白俄罗斯语

一些 Cyrillic 控制台字体实际上是俄语字体,并且缺少许多 Cyrillic 字符。幸运的是,Vadinm Zhitnikov 的 UniCyr 字体具有来自 cp866、cp1251、iso8859-5 和 koi8-r 的所有字形以及所有可打印符号。除了您可以在 bellinux 页面找到的白俄罗斯语键盘映射之外,其他文件都是相当标准的,并且在大多数 Linux 发行版中都可用。要在控制台中设置 window-1251,

  • 加载 UniCyr 字体
     consolechars -f UniCyr_8x16
    								

  • 加载by2_win.kmap键盘映射。
     loadkeys by2_win
    								

  • 加载应用程序字符集映射cp1251.acm
     consolechars -m cp1251									
    								

2.5.2. 使用 iso-8859-5 设置白俄罗斯语

有两种方法可以使用 iso-8859-5 设置白俄罗斯语

  • 加载 iso-8859-5 字体
     consolechars -f iso05.f16
    								

  • 加载白俄罗斯语键盘映射by2.kmapby.kmap
     loadkeys  by.kmap
     loadkeys by2.kmap
    								

此方法有一个严重的缺点 - 您将丢失所有伪图形字符,并且,例如,您的 Midnight Commander 看起来会有点“赤裸”。下面描述的第二种方法保留了所有伪图形字符

  • 加载 UniCyr 字体
     consolechars -f UniCyr_8x16
    								

  • 加载by2.kmap键盘映射 或by.kmap
     loadkeys  by.kmap
     loadkeys by2.kmap
    								

  • 加载应用程序字符集映射iso05.acm
    consolechars -m iso05
    								

请注意,不同的 Linux 发行版具有不同的控制台相关软件包 -console-toolskbd。上述脚本旨在与console-tools一起使用,后者更受欢迎。

2.6. X Window 系统中的白俄罗斯语

2.6.1. 通过 XKB 在 X Window 系统中使用 ISO-8859-5

这非常容易设置。

  • 为 X Window 安装 ISO-8859-5 字体,并确保它们位于字体路径中其他字体之前。有关如何安装字体的详细信息,请参阅 Font-HOWTO

  • bellinux 页面获取白俄罗斯语键盘布局by,并将其放在/usr/X11R6/lib/X11/xkb/symbols/中任何其他键盘布局的位置,例如,代替比利时键盘布局/usr/X11R6/lib/X11/xkb/symbols/be

    将以下字符串放入您的/etc/X11/XF86COnfig:
     XkbModel   "microsoft"
     XkbLayout  "be"
     XkbOptions "grp:caps_toggle"
    							

  • 不要忘记将系统区域设置设置为 be_BY.ISO8859-5,如 第 2.4 节中所述。您还需要确保 iso-8859-5 字体在字体路径中的任何其他字体之前。

2.6.2. 通过 XKB 在 X Window 系统中使用 Windows-1251

这仅适用于 XFree 4.0.2 及更高版本。

  • 为 X Window 安装 ISO-8859-5 字体,并确保它们位于字体路径中其他字体之前。

  • bellinux 页面获取白俄罗斯语键盘布局by,并将其放在/usr/X11R6/lib/X11/xkb/symbols/中任何其他键盘布局的位置,例如,代替比利时键盘布局/usr/X11R6/lib/X11/xkb/symbols/be

  • 将以下字符串放入您的/etc/X11/XF86Config:
     XkbModel   "microsoft"
     XkbLayout  "be"
     XkbOptions "grp:caps_toggle"
    							

  • 不要忘记将系统区域设置设置为 be_BY.CP1251,如 第 2.4 节中所述。

要将 windows-1251 与 XFree 3.3.5 和 4.0 一起使用,您必须应用来自 Aleksey Novodvorsky 的补丁,该补丁允许将 windows-1251 与 XKB 一起使用。原始位置在 ftp.logic.ru/pub/logic/linux/be-locale,也可以从 bellinux 页面获得。Linux-Mandrake RE 的幸运用户可以开箱即用地获得打补丁的 XFree86。

白俄罗斯语键盘布局计划用于 4.0.2 之后的所有 XFree 版本。要使其工作,您必须将以下行添加到/etc/X11/XF86Config:
 XkbModel   "microsoft"
 XkbLayout  "by"
 XkbOptions "grp:caps_toggle"										
				

2.6.3. 通过 Xmodmap 在 X Window 系统中使用 Windows-1251

  • 取消注释
     XkbDisable
    								
    /etc/X11/XF86COnfig.

  • 中的行。为 X Windows 安装 windows-1251 字体,并确保它们在路径中的其他字体之前。

  • 制作并安装 xruskb 软件包,可以从 http://bellinux.sourceforge.net 下载

  • 将 xruskb 目录中的 .xmm 文件替换为在 bellinux 页面中找到的文件。

  • 在您的 .Xdefaults 文件中添加以下行
     xrus*modeButton1.labelString: BEL xrus*modeButton1.label: BEL
    								

  • 运行
     xrus jcuken-cp1251
    							
     xrus jcuken-iso5
    							
    以启动键盘切换器。