34.12 区域设置

在 POSIX 系统中,区域设置(locale)控制语言相关功能所使用的语言。 以下 Emacs 变量控制 Emacs 与这些功能的交互方式。

Variable: locale-coding-system

该变量指定用于解码系统错误信息、 (仅在 X 窗口系统中)解码键盘输入、 向标准输出和标准错误流发送批处理输出、 对 format-time-string 的格式参数进行编码, 以及对其返回值进行解码所使用的编码系统。

Variable: system-messages-locale

该变量指定用于生成系统错误信息的区域设置。 修改区域设置可能使信息以不同语言或书写形式显示。 如果变量为 nil,则区域设置按照 POSIX 标准方式由环境变量指定。

Variable: system-time-locale

该变量指定用于格式化时间值的区域设置。 修改区域设置可使时间信息按其他语言的习惯显示。 如果变量为 nil,则区域设置按照 POSIX 标准方式由环境变量指定。

Function: locale-info item

该函数返回当前 POSIX 区域设置中对应 item 的数据(如果可用)。 item 应为下列符号之一:

codeset

以字符串形式返回字符集(区域项 CODESET)。

days

返回包含 7 个元素的星期名称向量(对应区域项 DAY_1DAY_7)。

months

返回包含 12 个元素的月份名称向量(对应区域项 MON_1MON_12)。

paper

返回形如 (width height) 的两个整数列表, 表示默认纸张尺寸,单位为毫米(对应区域项 _NL_PAPER_WIDTH_NL_PAPER_HEIGHT)。

如果系统无法提供请求的信息,或 item 不属于上述符号,则返回 nil。 返回值中的所有字符串均使用 locale-coding-system 解码。 更多关于区域设置及区域项的信息,See Locales in The GNU Libc Manual