Input method


An input method is an operating system component or program that enables users to generate characters not natively available on their input devices by using sequences of characters that are available to them. Using an input method is usually necessary for languages that have more graphemes than there are keys on the keyboard.
For instance, on the computer, this allows the user of Latin keyboards to input Chinese, Japanese, Korean and Indic characters. On hand-held devices, it enables the user to type on the numeric keypad to enter Latin alphabet characters or touch a screen display to input text. On some operating systems, an input method is also used to define the behavior of the dead keys.

Implementations

Although originally coined for CJK computing, the term is now sometimes used generically to refer to a program to support the input of any language. To illustrate, in the X Window System, the facility to allow the input of Latin characters with diacritics is also called an input method.
On Windows XP or later Windows, Input method, or IME, are also called Text Input Processor, which are implemented by the Text Services Framework API.

Relationship between the methodology and implementation

While the term input method editor was originally used for Microsoft Windows, its use has now gained acceptance in other operating systems, especially when it is important to distinguish between the computer interface and implementation of input methods, or among the input methods themselves, the editing functionality of the program or operating system component providing the input method, and the general support of input methods in an operating system. This term has, for example, gained general acceptance on the Linux operating system and Android; it is also used on macOS.