13. The computer implemented method of claim 11 , wherein determining a current mapping for the keyboard input device is at least in part based on a language corresponding to a geolocation of the keyboard input device.
11. A computer implemented method comprising: receiving keystroke data for a keyboard input device; determining a current mapping for the keyboard input device that is associated with a language; determining characters based on the keystroke data and the current mapping; comparing the characters to words in a dictionary associated with the language, wherein the dictionary stores words in the language; determining whether the characters identify a word in the language based on the comparison; if the characters are determined to not identify a word in the language: selecting an alternative mapping for the keyboard input device, wherein the alternative mapping is associated with an alternative language; determining alternative characters based on the keystroke data and the alternative mapping; comparing the alternative characters to alternative words in an alternative dictionary associated with the alternative language wherein the alternative dictionary stores words in the alternative language; and identifying one or more alternative words based on the comparison of the alternative characters and the alternative words in the alternative language.