32. A computer-implemented method for converting a phonetic language text to a written language text, the method comprising: performing, by one or more computers: generating a plurality of possible phonetic language syllable segmentations for a phonetic language input text string; generating a plurality of possible written language sentences each including one or more written language words, wherein each sentence corresponds to one of the syllable segmentations, and wherein each word in each sentence corresponds to one or more of the syllables in the corresponding syllable segmentation; determining probability scores for the words and for sequences of two or more words in the sentences according to a language model comprising written language words and a history cache of previously selected written language words; generating a list of candidate output words for a current selection position in the phonetic language input text string from the sentences, wherein the list of candidate output words is sorted according to the probability scores; determining one of the possible written language sentences as a most probable candidate output sentence for the phonetic language input text string according to the probability scores; and generating a user interface element including at least part of the list of sorted candidate output words and the candidate output sentence.
32. A computer-implemented method for converting a phonetic language text to a written language text, the method comprising: performing, by one or more computers: generating a plurality of possible phonetic language syllable segmentations for a phonetic language input text string; generating a plurality of possible written language sentences each including one or more written language words, wherein each sentence corresponds to one of the syllable segmentations, and wherein each word in each sentence corresponds to one or more of the syllables in the corresponding syllable segmentation; determining probability scores for the words and for sequences of two or more words in the sentences according to a language model comprising written language words and a history cache of previously selected written language words; generating a list of candidate output words for a current selection position in the phonetic language input text string from the sentences, wherein the list of candidate output words is sorted according to the probability scores; determining one of the possible written language sentences as a most probable candidate output sentence for the phonetic language input text string according to the probability scores; and generating a user interface element including at least part of the list of sorted candidate output words and the candidate output sentence. 37. The method as recited in claim 32 , wherein said generating a plurality of possible phonetic language syllable segmentations for a phonetic language input text string comprises including possible syllables determined from partial syllables in the input text string in one or more of the possible phonetic language syllable segmentations.