17. A method of converting strings to a common language comprising: executing a thin client on top of an input method editor; detecting by the thin client that the user has set up more than one language mode; determining a user-selected target language; associating a user-selected primary input and at least one user-selected secondary input language with the target language; detecting by the thin client that the user has entered text using more than one language; identifying by the thin client, a string believed to be in a secondary language; enabling by the thin client, a machine translation attempt of the string to translate the string from the secondary language to the target language, by using a phonetic lexicon to interpret a obtained string in the target language based upon a phonetic correspondence of an obtained string in the primary input language and a translation lexicon to translate an obtained string from the secondary language to the target language.
17. A method of converting strings to a common language comprising: executing a thin client on top of an input method editor; detecting by the thin client that the user has set up more than one language mode; determining a user-selected target language; associating a user-selected primary input and at least one user-selected secondary input language with the target language; detecting by the thin client that the user has entered text using more than one language; identifying by the thin client, a string believed to be in a secondary language; enabling by the thin client, a machine translation attempt of the string to translate the string from the secondary language to the target language, by using a phonetic lexicon to interpret a obtained string in the target language based upon a phonetic correspondence of an obtained string in the primary input language and a translation lexicon to translate an obtained string from the secondary language to the target language. 19. The method according to claim 17 , wherein enabling by the thin client, a machine translation attempt comprises: invoking a third party machine translation to attempt to translate the string from the secondary language to the target language.