7. A system, comprising: a processor; a memory comprising program instructions, wherein the program instructions are executable by the processor to implement a language input mechanism for converting a phonetic language text to a written language text, wherein the language input mechanism is configured to: generate a plurality of possible phonetic language syllable segmentations for a phonetic language input text string; generate 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; determine probability scores for the written language words and for sequences of two or more written language words in the plurality of possible written language sentences according to a language model comprising written language words and a history cache of previously selected written language words; generate a list of candidate output written language words for a current selection position in the phonetic language input text string from the plurality of possible written language sentences, wherein the list of candidate output written language words is sorted according to the probability scores; determine one of the possible written language sentences as a most probable candidate output written language sentence for the phonetic language input text string according to the probability scores; and output at least part of the list of sorted candidate output written language words and the candidate output written language sentence in a candidate output text user interface element.
7. A system, comprising: a processor; a memory comprising program instructions, wherein the program instructions are executable by the processor to implement a language input mechanism for converting a phonetic language text to a written language text, wherein the language input mechanism is configured to: generate a plurality of possible phonetic language syllable segmentations for a phonetic language input text string; generate 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; determine probability scores for the written language words and for sequences of two or more written language words in the plurality of possible written language sentences according to a language model comprising written language words and a history cache of previously selected written language words; generate a list of candidate output written language words for a current selection position in the phonetic language input text string from the plurality of possible written language sentences, wherein the list of candidate output written language words is sorted according to the probability scores; determine one of the possible written language sentences as a most probable candidate output written language sentence for the phonetic language input text string according to the probability scores; and output at least part of the list of sorted candidate output written language words and the candidate output written language sentence in a candidate output text user interface element. 18. The system as recited in claim 7 , wherein the language input mechanism is further configured to prune one or more words with low frequency in the language model from the plurality of possible written language sentences.