第2章 系统本地化和键盘设置

第2章 系统本地化和键盘设置

系统本地化决定系统服务和用户界面的语言环境。键盘布局设置包括文本控制台和用户图形界面两部分。
本地化和键盘设置有两种方法:直接修改/etc/locale.conf文件、使用localectl配置工具。你也可以通过图形界面设置,具体方法请参考《FEDORA安装指南》(Fedora Installation Guide)。

2.1设置系统本地化

系统级别的本地化设置文件是/etc/locale.conf,这个配置文件会在系统启动的时候被systemd 服务加载。在没有被用户自定义设置文件覆盖的情况下,/etc/locale.conf对所有服务和用户都有效。
/etc/locale.conf的基本格式是每行一个变量。使用英语的德国本地化配置文件是这样的:
LANG=de_DE.UTF-8
LC_MESSAGES=C
LC_MESSAGES选项决定了本地用户标准输入输出所使用的语言。在/etc/locale.conf文件里,你还可以指定其它选项。常用的选项总结在表2.1 /etc/locale.conf可选配置项里。你也可以查看locale(7)的手册以了解这些选项的更详细的信息。注意:
LC_ALL选项,它会替代其它所有可能的选项,所以在/etc/locale.conf里你不应该用它来设置本地化信息。
表2.1 /etc/locale.conf可选配置项
选项 功能描述
LANG 系统语言环境的默认值
LC_COLLATE 分类、排序和比较习惯。(译者注:比如英语用字母排序,中文按笔划排序)
LC_CTYPE 字符显示格式。
LC_NUMERIC 数字显示格式。
LC_TIME 时间显示格式。包括24小时和12小时两种。
LC_MESSAGES 菜单、对话框、标题栏、错误输出显示格式。

2.1.1 显示当前状态

localectl命令可以查询和改变系统本地化设置和键盘布局设置。如果要查看相关状态,可以用下面的参数:
localectl status
例子2.1 显示当前状态
前面的命令将显示控制台和X11窗口系统的本地化设置信息和键盘布局信息。
~]$ localectl status
System Locale: LANG=en_US.UTF-8
VC Keymap: us
X11 Layout: n/a

2.1.2 显示可选的本地化选项

下面的命令显示所有可以用的本地化选项:
localectl list-locales
例子2.2 显示本地化信息
假设你想选择一个特定的英语环境,但是你不确定你的系统上有没有。你可以用下面的命令显示所有和英语有关的选项:
~]$ localectl list-locales | grep en_
en_AG
en_AG.utf8
en_AU
en_AU.iso88591
en_AU.utf8
en_BW
en_BW.iso88591
en_BW.utf8
output truncated

2.1.2 设置本地化

用以下命令设置本地化:
localectl set-locale LANG=locale
用你想用的本地化代码代替上面命令中的locale就可以了。你可以用localctl list-locales来查询。
相关的语法和可用的参数可以参考表2.1 /etc/locale.conf的配置选项
例子2.3 改变系统默认的本地化
举个例子,如果你想把BRITISH ENGLISH设成你的默认环境,首先用list-locales查找名称,然后用root用户执行以下命令:
~]# localectl set-locale LANG=en_GB.utf8

2.2修改键盘布局

键盘布局同样可以通过文本控制台和图形界面来控制。

2.2.1显示当前键盘布局

和前面一样,你可以用以下命令显示键盘布局:
localectl status
例子2.4 显示键盘布局
使用了前面的命令后,就可以看到控制台和X11窗口系统的键盘布局配置信息了:
~]$ localectl status
System Locale: LANG=en_US.utf8
VC Keymap: us
X11 Layout: us

2.2.2 显示可用的键盘布局映射

显示可用的键盘布局用下面的命令:
localectl list-keymaps
例子2.5 查找特定的布局
你可以用grep 在前面命令输出的信息中查找指定的布局名称。每个本地化通常都会有多个兼容的布局。比如找到Czech的布局:
~]$ localectl list-keymaps | grep cz
cz
cz-cp1250
cz-lat2
cz-lat2-prog
cz-qwerty
cz-us-qwertz
sunt5-cz-us
sunt5-us-cz

2.2.3设置键盘布局

在Root用户下使用下面的命令设置布局:
Localectl set-keymap map
把map换成你实际要用的布局名称。布局名称可以用localectl list-keymaps命令查询。
除非使用了–no-convert参数,否则选定的布局将同时用于X11系统。你也可以用ROOT用户执行下面的命令分别指定不同的键盘布局:
Localectl set-x11-keymap map
如果你想让你的X11布局不同于控制台布局,则需要添加–no-convert参数
Localectl –no-convert set-x11-keymap map
增加了这个参数后,X11的键盘布局将指定为你所设定的布局,而且终端控制台的布局不会发生改变。
例子2.6 设置不同的X11布局
假定你想在图形界面下使用GERMAN布局,但是又想在控制台使用US布局,你可以ROOT用户执行以下命令:
~]# localectl –no-convert set-x11-keymap de
然后你查看下状态以确认是否成功:
~]$ localectl status
System Locale: LANG=de_DE.UTF-8
VC Keymap: us
X11 Layout: de
除了map外,还有三个参数可以设置:
localectl set-x11-keymap map model variant options
Model、variant、options可以增强键盘。这些参数不会设置默认值。关于这三个参数的设置,请参考kbd(4) 手册。

2.3 其它信息

如何配置FEDORA的键盘,还可以参考以下资源:
安装文档
localectl(1)-localectl的手册
loadkeys(1)-loadkey的手册

你可能感兴趣的:(fedora)