An input method is a set of functions that translates key strokes into character strings in the code set specified by your locale. The input method allows various types of input, but only keyboard events are dealt with here. Your locale determines which input method should be loaded, how the input method runs, and which devices are used. The input method then defines states and their outcome. You may want to write your own input method if you do not have a standard keyboard or if you customize your code set.
Many languages use a small set of symbols or letters to form words.
To enter text with a keyboard, you press keys that correspond to symbols of the alphabet. When a character in your alphabet does not exist on the keyboard, you must press a combination of keys. Input methods provide algorithms that allow you to compose such characters. Some languages use an ideographic writing system. They use a unique symbol, rather than a group of letters, to represent a word.