Many software developers today are familiar with the use of Unicode for information storage and retrieval. Using Unicode, however, is not enough to satisfy the requirements of a truly globalized application. Developers must consider other things, such as cultural formatting of information, font selection, and keyboards. This article provides a brief overview of how individuals use a keyboard to input non-Latin based text.
The ease with which character data is input into computer systems goes largely unnoticed by today's software users and, for that matter, by most software developers as well. The task of inputting characters is trivial for many scripts that have a small number of alphabetic characters, as is the case with the Latin script. When a script has a small number of characters, each character can be directly assigned to an individual key on a keyboard. To input a character one simply depresses the appropriate key. This strategy breaks down, however, when scripts, such as Japanese, possess a large number of characters
The challenge of inputting scripts with numerous characters requires that the keyboard be used in a different fashion than most users are accustomed to. The methodology that has been created to input these scripts is called an input method editor, or IME.
An IME acts as an intermediary between a software application and a user. In its most primitive form, an IME takes one or more keystrokes and converts them into one or more symbols, characters, or words. In this article we present the components of an IME. In addition, we discuss how an IME is used in practice, and what software developers must do to accommodate an IME in a software application.