This is the main article on the internationalization of an Arch Linux installation. It is meant to offer guidance, as well as crosslink other relevant articles, to customize settings of an Arch Linux installation to work with any supported language.

The article makes use of subpages for instructions specific for languages:


For the list of available font packages in Arch Linux see the Fonts article.


See Locale.

Keyboard layouts

See Keyboard configuration in console and Keyboard configuration in Xorg.

Input methods in Xorg

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: A brief introduction of input methods should be added, similar to Internationalization/Korean#Input_in_Xorg. (Discuss in Talk:Internationalization#)

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason: Does the subsection structure still fit and is appropriate for the main article? Can you help with integrating the comments referred to in ArchWiki:Requests#Input_methods to improve the article? (Discuss in Talk:Internationalization#)

See also: Wikipedia:Input method.

  • Fcitx — Flexible Context-aware Input Tool with eXtension. || fcitx
  • Hime — A GTK2+/GTK3+ based universal input method platform. || hime-gitAUR
  • IBus — Next Generation Input Bus for Linux. || ibus
  • Rime IME — Rime input method engine. || ibus-rime or fcitx-rime
  • UIM — Multilingual input method library. || uim
|| not packaged? search in AUR
  • SCIM with the x11 FrontEnd module —
|| not packaged? search in AUR
  • uim (Japanese) —
|| not packaged? search in AUR
|| not packaged? search in AUR
|| not packaged? search in AUR

GTK immodule

  • scim with the socket FrontEnd module binds to the GTK Im-Module
  • uim (Japanese)
  • fcitx

Disabling GTK IM modules (without uninstalling)

First some background information on how GTK loads and selects IM modules:

  • Specifying an IM module
  1. GTK_IM_MODULE environment variable
    1. GTK_IM_MODULE="scim" gedit
  2. XSETTINGS value of Gtk/IMModule
  • File listing possible IM modules
  1. GTK_IM_MODULE_FILE environment variable
  2. RC files
  3. /etc/gtk-2.0/gtk.immodules

If no IM module is specified (either via GTK_IM_MODULE or in XSETTINGS), then GTK will automatically choose a suitable immodule from an internal listing (GTK_IM_MODULE_FILE... etc). This chosen IM module will depend on the software installed, and will be picked in a completely arbirtrary order.

For a listing of installed GTK+ immodules, see

  • "/usr/lib/gtk-2.0/modules/"
  • "/usr/lib/gtk-2.0/2.10.0/immodules/"

XSETTINGS provides a common API to configure common desktop settings. Similar database configuration systems such as gnome-config, GConf, liproplist and the kde configuration system already exist, however XSETTINGS unifies these systems. XSETTINGS daemons, such as gnome-settings-daemon from gnome, xfce-mcs-manager from xfce4, and other from openbox, etc, push desktop-environment-specific data to the XSETTINGS database. Technically, XSETTINGS is a simple storage medium intended to store only strings, integers and colors. When an XSETTINGS manager quits, the clients restore all settings to their default values.

The if GTK+ has debugging enabled, the loaded modules can be seen by

application --gtk-debug modules

Otherwise, the modules can be seen by scanning the linked libraries in gdb after attaching to the process.

To prevent GTK+ from loading any IM modules

  • set GTK_IM_MODULE to the empty string
  • set GTK_IM_MODULE to "gtk-im-context-simple"

QT immodule (> QT 4.0.0)

  • scim with the socket FrontEnd module binds to the QT Im-Module
  • uim (Japanese)
  • fcitx

Disabling QT IM modules (without uninstalling)

QT will load the IM module specified in QT_IM_MODULE, and if unset attempt to fall back on XIM.

  1. QT_IM_MODULE environment variable
  2. XIM

To disable input method module loading in QT, export QT_IM_MODULE="simple".

See also