「Emacs」- 配置使用 Fcitx 输入法、Fcitx 输入法无效

问题描述

在 Emacs 中,无法使用 Fcitx 中文输入法。

原因分析

根据 Fcitx – ArchWiki/#Emacs 描述,这是 Emacs 早期 BUG 导致的。

解决方案

如果要解决这个问题,有如下几种方法:

LC_CTYPE=zh_CN.UTF-8

1)需要在启动 Emacs 时,将 LC_CTYPE 设置为 zh_CN.UTF-8 语言:

# 在 Shell 中
LC_CTYPE=zh_CN.UTF-8 /usr/bin/emacs

# 在 emacs.desktop 中
...
Exec=env LC_CTYPE=zh_CN.UTF-8 /usr/bin/emacs
...

without Window System

2)或者,使用终端模式运行,这依托于输入法在终端中能正常工作:

# 在 GNOME Terminal 中
/usr/bin/emacs -nw 

Warning: locale not supported by C library, locale unchanged

How to install/change locale on Debian?
`Gtk-WARNING **: Locale not supported by C library. ` when starting apps from the commandline

问题描述

当使用 env LC_ALL=zh_CN.UTF-8 /usr/bin/emacs 启动 Emacs 时,虽然能够切换输入法,但是依旧无法输入中文。

并且,此时控制台输出类似如下错误:

Warning: locale not supported by C library, locale unchanged

问题原因

没有安装 zh_CN.UTF-8(中文语言)环境。使用命令 locale -a 查看当前语言环境。

解决办法

安装语言包:

apt-get install locales-all
apt-get install language-pack-en-base language-pack-en

注意事项

1)解决方法只使用于我们的环境。发行版不同,配置方法可能不同。
2)由于我们未研究过语言环境问题,因此部分内容可能有失准确。

参考文献

Fcitx – ArchWiki/#Emacs
Locale – ArchWiki