要查找 Latin-3 字体和 X 窗口系统的相关信息,请查看虚拟世界语图书馆 - 在“计算机领域”的标题下。
在字体部分,您可以找到如何安装它们的说明。通过
xlsfonts -fn *iso8859-3
您可以检查字体是否(成功地)安装在您的系统中。比例 Adobe 字体非常适合在 Communicator、Knews、Xfmail 等中查看。对于 Xterm 和 Vi 变体,您可以使用 Alain Fagot 的字体。
大多数 X 程序可以这样调用
<programo> -fn <tiparnomo>
以便它们使用字体 字体名称。上述字体的替代方案是使用 TrueType 字体。对于这些最初在 Windows 和 Macintosh 中使用的字体,存在一个 FreeType 库,它允许在 Linux 中也使用它们。基于这个库,存在两个字体服务器 xfstt 和 xfsft,它们为 X 窗口提供 TrueType 字体。您可以通过从现有的 Windows 9x/NT 安装中获取,或者例如从微软服务器获取所需的 TrueType 字体。请注意,您需要 Unicode TrueType 字体。八位字体通常不包含世界语字符或位于不正确的位置。Unicode 字体例如常见的 Courier New、Arial、Times New Roman 和 Lucida Sans Unicode。
Xfstt 是一个相对容易安装的解决方案,但它的缺点是它没有实现完整的标准字体服务协议。
通常 xfstt 使用 Unicode,其前 256 个字符与 ISO-8859-1 相同。从 0.9.8 版本开始,可以将 Unicode 字符重新映射到其他编码。例如,通过命令行
xfstt --encoding iso8859-3,koi8-r,windows-1251
Xfsft 是一个更标准的解决方案,但安装起来更困难。它是 X 窗口的一个补丁。因此,必须解压缩 X 的源代码,然后使用 xfsft 进行修补并重新编译。对于 Linux,也存在已编译的版本。最好在自己的“init”脚本中启动程序 Xfs (X 字体服务器)。然后像安装其他 X 字体一样安装字体。
与 xfstt 相同,可以根据不同的编码提供 Unicode 字体。例如,行
arial.ttf -microsoft-arial-medium-r-normal--0-0-0-0-p-0-iso8859-1
arial.ttf -microsoft-arial-medium-r-normal--0-0-0-0-p-0-iso8859-2
arial.ttf -microsoft-arial-medium-r-normal--0-0-0-0-p-0-iso8859-3
在 fonts.dir
中以 Latin-1、Latin-2 和 Latin-3 编码提供 Arial 字体。请注意,在 1.0.1 版本中,Latin-3 存在错误,在后续版本中已得到纠正。
X 窗口系统允许定义对“组合键”(通常定义为 AltGr
)加上另一个键的按键的反应。
例如,在德语键盘上,AltGr+q
给出字符“@”。
通过程序 xmodmap
可以定义,
AltGr+c -> cx
AltGr+Shift+c -> Cx
...
为此,请在您的用户目录中创建一个文件 ~/.Xmodmap。(通常它已经存在,您只需要修改它。)并添加以下行
keycode 54 = C NoSymbol AE
keycode 42 = G NoSymbol Ooblique
keycode 43 = H NoSymbol paragraph brokenbar
keycode 44 = J NoSymbol onequarter notsign
keycode 39 = S NoSymbol Thorn
keycode 30 = U NoSymbol Yacute
并非所有程序都能正确处理这一点。因此,另一种可能性(您可以同时使用两种变体)是将 12 个世界语字母放在 12 个功能键上
keysym F1 = F1 ae
keysym F2 = F2 AE
keysym F3 = F3 oslash
keysym F4 = F4 Ooblique
keysym F5 = F5 paragraph
keysym F6 = F6 brokenbar
keysym F7 = F7 onequarter
keysym F8 = F8 notsign
keysym F9 = F9 thorn
keysym F10 = F10 Thorn
keysym F11 = F11 yacute
keysym F12 = F12 Yacute
确保在 X 窗口系统启动期间启动命令 xmodmap ~/.Xmodmap
。通常在 /usr/X11R6/lib/X11/xinit/xinitrc 中已经找到如下行
usermodmap=$HOME/.Xmodmap
if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi