Abstract:
Systems and processes are disclosed for predicting words in a text entry environment. Candidate words and probabilities associated therewith can be determined by combining a word n-gram language model and a unigram language model. Using the word n-gram language model, based on previously entered words, candidate words can be identified and a probability can be calculated for each candidate word. Using the unigram language model, based on a character entered for a new word, candidate words beginning with the character can be identified along with a probability for each candidate word. In some examples, a geometry score can be included in the unigram probability related to typing geometry on a virtual keyboard. The probabilities of the n-gram language model and unigram model can be combined, and the candidate word or words having the highest probability can be displayed for a user.
Abstract:
Methods and systems of multi-word automatic correction (“autocorrect”) are provided. Autocorrect generally can select a corrected word based on a typed word and a dictionary of correctly-spelled words. Multi-word autocorrect can add to this functionality by revisiting the selection of an initial corrected word if a subsequently-typed word indicates that it would be more appropriate to instead select an additional corrected word. In some cases, an autocorrect system can make a multi-word correction based on a multi-word phrase in a dictionary, such as replacing “new york” with “New York” as described above. In other cases, an autocorrect system can make a multi-word correction to correct a mistakenly-typed delimiter character. In other cases, an autocorrect system can use grammar rules to obtain additional context information with each subsequently-typed word and make multi-word corrections on that basis.
Abstract:
A method includes displaying a suggestion region above an on-screen keyboard. The suggestion region includes multiple suggested character strings. The method further includes: detecting a gesture that begins within a predefined key of the on-screen keyboard; and responsive to detecting the gesture: in accordance with a determination that the gesture ends within the predefined key, inserting a first character string into a text field; and in accordance with a determination that the gesture ends outside of the predefined key, inserting a second character string into the text field, wherein the second character string is different from the first character string.