This document provides instructions on how to set up a Korean language environment on an Arch linux installation. This document will not cover setting up Korean input on the console.
To use any korean input method, you need to have Korean fonts installed. Install AUR. If you also want Korean monospaced fonts, install AUR from the AUR. Alternatively, if you use the Infinality patches and have the Infinality-bundle-fonts repository enabled, you can install
ttf-unfonts-core-ibx from the
infinality-bundle-fonts repository. If you want to view and use Yethangul(옛한글), install the AUR and/or the AUR[broken link: archived in aur-mirror] fonts.
You should have
ko_KR.UTF-8 enabled in
/etc/locale.gen. It is recommended that you always use a
.UTF-8 locale rather than the
ko_KR.EUC-KR locale. For more information, read locale.
Input in Xorg
Choose a Korean input method
Input method (IM) frameworks act as frontends to various input methods and libraries, allowing the user to switch between different languages with ease. Frameworks such as IBus, uim, fcitx and scim, as well as AUR[broken link: archived in aur-mirror], a stand-alone Korean input method, support Korean input. This section will try to help you choose a suitable IM framework.
- IBus is the default input framework of GNOME and Ubuntu. It is the most widely supported input method framework. As such, you can use ibus for inputting Korean without issue in most applications. However, there are some issues:
- As of November 2014, ibus sometimes doesn't recognize user-set hotkeys for IM switching. This means that you may need to click on the ibus systray icon every time to want to switch input methods.
- uim is a multilingual, cross-platform input method framework. The package in the official repositories includes uim-byeoru, the korean module for uim. uim-byeoru works well on most applications (including Google Chrome and Chromium) without issue. users, however, may want to avoid uim, as trying to use uim-byeoru in Opera may cause it to crash.
- scim, or the Smart Common Input Method platform, is a input method framework for posix-compliant systems. scim-hangul, as of November 2014, has issues with Google Chrome and Chromium web browsers. With the default environment variables, you cannot input Korean in Google Chrome or Chromium. scim also causes problems in Gedit as of November 2014. When scim-hangul is active, pressing
backspacedoes not work properly. A workaround for both these issues will be explained in the scim configuration section. However, even with this workaround applied, Chrome/Chromium users may find that the preedit string disappears when the spacebar or any other modifier key is pressed. There is currently no known workaround for this issue.
- Fcitx is another input method framework for posix-compliant systems. Fcitx-hangul has issues with Google Chrome and Chromium. Some users have reported that fcitx only recognizes Google Chrome/Chromium's URL bar as an input window only after their themes have been changed.
- broken link: archived in aur-mirror] is a standalone Korean input method that is being developed by Choehwanjin. Nabi provides many unique features, such as Yethangul support. If you only need to use Korean and English input, you may want to install nabi. Currently, nabi causes an issue with chromium. When you press the spacebar, the preedit string will be placed after the space, causing your input to look like this:
한 글입력 에문제 가있습니다AUR[
If you have chosen which framework to use, continue with the configuration section.
See IBus for information about installing and configuring ibus.
Follow the instructions in User:Isaac914/uim to install uim and to get it running. Return to this section after uim is installed and running as the default input method.
Open the uim preferences window by running :
$ uim-pref-gtk (Or, uim-pref-gtk3/uim-pref-qt4)
Within global settings, check on the Specify default IM checkbox. Then, set Byeoru as default. You may also want to disable input methods that you do not plan on using by clicking on the 'edit' button. If you want to quickly switch between Korean and other languages (other than English), check the enable IM switching by hotkey checkbox, and set a hotkey to switch between enabled IMEs.
When you are done with the global preferences, find Byeoru in the tree menu on the left side of the preferences window. From there, you can set the Korean keyboard layout you want to use (e.g.
3 beol), specify the korean/Hanja dictionary that Byeoru will use, and other miscellaneous settings. Then, click on Byeoru Keybinding 1 in the tree menu. Set the hotkey you want to use to enable/disable Byeoru. Most Korean users use
If all went properly, you should now be able to use UIM-byeoru to type in Korean.
Now add the following to the user's
export XMODIFIERS=@im=SCIM export GTK_IM_MODULE="xim" export QT_IM_MODULE="scim" scim -d
Install and the gui frontend of your choice. fcitx configuration frontends include: , , , .
If you are using KDE, also install, in order to have the fcitx configuration integrated into KDE's system settings.
Once fcitx is installed, edit your
.xsession file to include:
export GTK_IM_MODULE=fcitx export QT_IM_MODULE=fcitx export XMODIFIERS=@im=fcitx
If you want the latest version of nabi, run
git clone https://github.com/choehwanjin/nabi.git,
cd into the cloned git repo, check if you have all the necessary libraries for building nabi by running
./configure, and then run
make. When make finishes building the binary, run
make install as root.
Once you have finished the installation, add the following to
export XIM=nabi export XIM_ARGS= export XIM_PROGRAM="nabi" export XMODIFIERS="@im=nabi" export GTK_IM_MODULE=xim export QT_IM_MODULE=xim
Once you restart the X session, nabi will autostart by default. The default korean keyboard layout is Dubeolsik(두벌식). If you need a different korean keyboard layout (e.g. Sebeolsik or Dubeolsik Yetgul), click on the system tray icon of nabi, and select a input method from the menu that pops up.
Tips and Tricks
Using the Right alt key to switch input methods
You can use the right
Alt key (e.g. '한/영키') to switch between Input methods if you are using uim, scim, or nabi. To do this, add the following lines after the environment variables that start your input method:
xmodmap -e 'remove mod1 = Alt_R' xmodmap -e 'keycode 108 = Hangul' xmodmap -e 'remove control = Control_R' xmodmap -e 'keycode 105 = Hangul_Hanja'
Then, in the settings of your input method, add the right
Alt key as a hotkey to switch IMEs. The right
Alt key has been remapped to a non-modifier key called "Hangul". The script above also allows you to use the right
Ctrl key (e.g. '한자키') to activate Hanja input. The right
Ctrl key should also have been remapped to "Hangul_Hanja". Add this key as a Hanja hotkey within the settings of your input method. If adding that to your
.xinitrc file did not work, create a script containing those four lines and set it to auto execute when your desktop environment starts up.
In some cases, Libreoffice will not take Korean input from any input method. To resolve this issue, try adding
export OOO_FORCE_DESKTOP="gnome" to