These systems usually use predictions (see Markov chains) based on your previous input to automatically catch and correct those small typos and prevent you from needing to skip two words back to fix the typo.
In the case of a false positive (correction where none was needed) you can just delete the entire word and type again.
As this is usually done using Markov chains which learn from your previous input this could even be used for programming.
in the case of a false positive you have to go back two words and correct it (in the idea the word was corrected automaticaly). I'm afraid this happens more than I make mistakes typing.