0

下面是我的语言环境集。

LANG=en_US.UTF-8
LC_CTYPE=zh_CN.UTF-8
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_COLLATE=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_ADDRESS=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=

如果我将 LC_CTYPE 更改为 en_US.UTF-8 那么我无法在终端或其他应用程序中输入中文字符。为什么?LC_TYPE 中前缀 en_US 或 zh_CN 的作用是什么?

如果我想输入中文单词,那么我设置 LC_CTYPE=zh_CN,如果我想输入另一种语言(假设它是 X)单词,那么我设置 LC_CTYPE=X。但是如果我想同时输入中文和X,那我该怎么办呢?

4

2 回答 2

0

LC_CTYPE适用于字符的分类和转换,以及多字节和宽字符。

zh是中文的 ISO 代码。zh_CN是“简体中文”的一个子类型,zh代表“简体中文”。

于 2012-04-08T10:47:51.370 回答
0

请注意,您可以为每个 bash 会话导出语言环境,因此如果您设置 LANG 等并在同一脚本中启动 X 会话 - 该语言将被整个 X 会话接受。例如,以下脚本启动德语的 VNC 会话,它独立于系统语言。您可以在此处为所需的输入布局添加所需的环境变量,并为每个 X 会话获取所需的结果。

#!/bin/bash
export LANG=de_DE.UTF-8
export LANGUAGE=de_DE:de
vnc4server -depth 16 -geometry 1024x768 :1
vncconfig -iconic -nowin -display :1 &
于 2013-10-29T17:19:28.703 回答