Input methods
In order to input text in any particular language and writing system, we need a Unicode font to display it in, a rendering engine that knows how to display it, and a keyboard layout or Input Method Editor (IME) that provides a way to get all of the needed characters. Most alphabetic and syllabic languages can be typed on fairly simple keyboards that produce one Unicode character per key combination, using the ordinary typing keys together with Meta (usually Alt) and Compose keys (further description needed). Any accented letter that is included in Unicode in precomposed form falls within this capability. This covers letters that occur in any widely-used pre-Unicode character set, such as Latin-1 (ISO-8859-1), which supports French, German, Spanish, Italian, Scandinavian languages, and some other languages that use only the accented letters in Latin-1.
Multiple diacritics can be entered sequentially on simple keyboards of this type, while more elaborate input methods can enter more than one Unicode character code into the input buffer for each key combination. Yoruba is an example of a language that poses this choice, because it has vowel letters with an acute accent above and a dot below that are not available precomposed in Unicode.
The most elaborate IMEs are for input of CJKV characters for Chinese, Japanese, Korean, and the historical Vietnamese Chu Nomh writing. Each of these languages requires several thousand characters at a minimum, and there is a desire to have much more extensive CJKV sets available, including a number of Hong Kong characters and other recent additions, or the tens of thousands of historical characters important for scholarship.
Several hundred methods for entering CJKV characters have been invented over several decades. Among the most important (due to efficiency of use or ease of learning, or in a few cases both) are language-specific phonetic conversion systems for Chinese, Japanese, or Korean, and shape-based systems that are in principle independent of language, but in practice specific to particular countries up to now.
See also countries, languages, writing systems, fonts, locales, and keyboard layouts.
Tools
Tools for keyboard layouts, to come.
Tools for IMEs, to come.
Input Methods
Phonetic conversion
The concept of phonetic conversion is that any CJKV language typed in any alphabet or other sound-based writing system can be converted using a combination of dictionary lookup together with grammatical and semantic analysis. The first successful phonetic conversion word processor was the Xerox 8010 J-Star, an outgrowth of the Xerox Alto computer and Smalltalk programming language in 1981. Thanks go to Alan Kay for the Alto and Smalltalk ideas, and to Joseph Becker for the language handling software. Phonetic conversion to CJKV characters exists for the following combinations, in many variations.
- Romazi (Latin alphabet) or Zhuyin to either Traditional or Simplified Chinese hanzi
- Romaja (Latin alphabet) or Hangeul to Korean hanja
- Romaji ローマ字 (Latin alphabet) or hiragana to Japanese kanji
Phonetic conversion systems depend on a native alphabetic or syllabic representation, or on one or more Romanizations of the target language.
- Chinese: Pinyin 拼音, Gwoyeu Romatzyh 國語羅馬字, Wade-Giles, and Yale are a few of hundreds
- Japanese: Hepburn, Kunrei-shiki, Nippon-shiki, Yale
- Korean: McCune-Reischauer (MR), Revised Romanization of Korean (RR), Yale
(Yes, the Yale Department of Linguistics was busy on the issue for decades.)
Shape-based
Methods by language
Traditional Chinese
The scim (Smart Common Input Method) platform supports the following IMEs on Linux and other forms of Unix.
- Wu
- Array30
- CNS11643
- Cangjie
- Cangjie 3
- Cangjie 5
- Canton HK
- Cantonese Pinyin
- Dayi3
- EasyBig
- Jyutping
- Quick
- Simplex
- Stroke 5
- ZhuYin
- ZhuYin Big
Zhuyin conversion
Zhuyin 注音, or Bopomofo ㄅㄆㄇㄈ, is a Chinese alphabet used for teaching children as well as for typing Chinese input. It has multiple keyboard layouts. Zhuyin is one of the standard conversion methods for Chinese, appearing on almost all computers and some cell phones.
[Unicode: Bopomofo] code table (PDF)
Phonetic conversion method
Pinyin conversion
Phonetic conversion method
Cangjie
` 1 2 3 4 5 6 7 8 9 0 [ ] 手 田 水 口 廿 卜 山 戈 人 心 [ ] 、 日 尸 木 火 土 竹 十 大 中 ; ‘ z 難 金 女 月 弓 一 , 。 /
Shape-based. The Cangjie keyboard layout has 24 simple Chinese characters on it, plus a key for "difficult" 難 characters. All of the common brush strokes and many common combinations are mapped to the 24 base characters. Characters are analyzed into 1 to 5 elements that can be coded in the base characters, according to a moderately complex set of rules.
Four Corners
Shape-based. The corners of a character are encoded, and a code for the whole character created from them.
etc.
Simplified Chinese
Pinyin
Wubi
etc.
Japanese
Romaji (ASCII) conversion
Kana conversion
etc.
Korean
Romaja (ASCII) conversion
Hangeul conversion
etc.
Descriptions of IMEs, to come.
SCIM Smart Common Input Method platform
xcin
IIIMF
Internet/Intranet Input Method Framework of OpenI18n.org is a new Unicode-based input method framework.
Chinput
etc.
Tests of IMEs, need help from expert users.
External links
- Wikipedia article on IMEs with links to articles on IMEs for specific languages