语言环境定义源文件格式

用途

包含一个或多个描述语言环境的类别。

描述

语言环境定义源文件包含一个或多个描述语言环境的类别。 可以使用 本地定义 命令将使用此格式的文件转换为语言环境。 仅通过编辑语言环境定义源文件,然后在新的源文件上再次使用 本地定义 命令,才能修改语言环境。 语言环境不受语言环境定义源文件的影响,除非首先使用 本地定义 命令来转换该文件。

语言环境定义源文件部分定义语言环境数据的类别。 对于同一类别,一个源文件不应包含多个部分。 以下类别受支持:

描述
LC_COLLATE 定义字符或字符串整理信息。
LC_CTYPE 定义字符分类、大小写转换和其他字符属性。
LC_MESSAGES 定义肯定和否定响应的格式。
LC_MONEAL 定义用来格式化货币数字信息的规则和符号。
LC_NUMERIC 定义用于格式化非货币数字信息的规则和符号的列表。
LC_TIME 定义用来格式化时间和日期信息的一系列规则和符号。

类别定义由以下内容组成:

  • 类别标题 (类别名称)
  • 构成类别主体的关联的关键字/值对
  • 类别预告片 (包含END 类别名称)

例如:

LC_CTYPE LC_CTYPE 类别的源 结束 LC_CTYPE

所有类别的源都是使用关键字,字符串,字符文字和字符符号指定的。 每个关键字标识一个定义或一个规则。 包含该关键字的语句的其余部分包含该关键字的操作数。 操作数与关键字之间用一个或多个空白字符分隔。 通过将/(斜杠) 作为最后一个字符放在终止行的新行字符之前,可以在下一行继续执行语句。 包含以下内容的行:comment_char第一列中的条目被视为注释行。 缺省值为#(井号)。

该文件中的第一个类别标题前面可以有一行更改注释字符。 它具有以下格式,从第 1 列开始:

comment_char character

其中character是新的注释字符。

忽略空白行和包含第一个位置中的注释字符的行。

字符符号以<(小于号)字符开头,随后跟随最多30个非控制字符且不含空格的字符,并以>(大于号)字符结束。 例如,<A-diaeresis>是有效的字符符号。 源文件中引用的任何字符符号都应该是 可移植字符集符号 之一,或者应该在提供的 字符集描述 (图表映射) 源文件中进行定义。

字符字面值是字符本身,或者是十进制,十六进制或八进制常量。 小数常量的格式为:

\dxxx

其中x是十进制数字。 十六进制常数的格式如下:

\xddd

其中d是十六进制数字。 八进制常量为以下形式:

\ddd

其中d是八进制数字。

字符串是字符符号的序列,或用 "" 括起的文字 (括在双引号内)。 例如:

"<A-diaeresis> \d65\d120 <B>"

语言环境定义源文件中每个类别的显式定义不是必需的。 当某个类别在语言环境定义源文件中未定义时,它将缺省为 C 语言环境定义。

文件中的第一个类别头前面可以有一行更改文件中所使用的转义字符。 它具有以下格式,从第 1 列开始:

escape_char character

其中character是新的转义字符。

转义字符缺省为/(反斜杠)。

文件

描述
/usr/lib/nls/loc/* 指定受支持语言环境的语言环境定义源文件。
/usr/lib/nls/charmap/* 指定受支持语言环境的字符集描述 (图表映射) 源文件。