1. A computer-implemented method of translating user input into at least one word having multiple characters, the method comprising: displaying a keyboard on a display, wherein the keyboard comprises multiple keys, and wherein each key in the keyboard has a relative position with respect to every other key in the keyboard, receiving a sequence of user inputs; translating the sequence of user inputs into a pattern of one or more relative directions, wherein each relative direction in the pattern corresponds to the relative position of a key in the keyboard with respect to a previous key; and using the pattern of one or more relative directions to identify the at least one word in a stored dictionary, wherein the stored dictionary associates the word with a pattern of relative directions that reflects relative positions of the keys associated with the multiple characters that form the word.
1. A computer-implemented method of translating user input into at least one word having multiple characters, the method comprising: displaying a keyboard on a display, wherein the keyboard comprises multiple keys, and wherein each key in the keyboard has a relative position with respect to every other key in the keyboard, receiving a sequence of user inputs; translating the sequence of user inputs into a pattern of one or more relative directions, wherein each relative direction in the pattern corresponds to the relative position of a key in the keyboard with respect to a previous key; and using the pattern of one or more relative directions to identify the at least one word in a stored dictionary, wherein the stored dictionary associates the word with a pattern of relative directions that reflects relative positions of the keys associated with the multiple characters that form the word. 10. The computer-implemented method of claim 1 further comprising: displaying, on the display, at least two of the at least one identified words; and receiving, from the user, a selection of one of the displayed words.