I use Google as my go-to spell check since it always seems to know what I mean. The below script lets you use a hotkey to autocorrect the spelling of highlighted text (including sentences containing multiple misspelled words) in any program. It's fast and very effective, but does need an internet connection to work.
; Ctrl+Alt+c autocorrect selected text ^!c:: clipback := ClipboardAll clipboard= Send ^c ClipWait, 0 UrlDownloadToFile % "https://www.google.com/search?q=" . clipboard, temp FileRead, contents, temp FileDelete temp if (RegExMatch(contents, "(Showing results for|Did you mean:)</span>.*?>(.*?)</a>", match)) { StringReplace, clipboard, match2, <b><i>,, All StringReplace, clipboard, clipboard, </i></b>,, All } Send ^v Sleep 500 clipboard := clipback return
To use the it, change the hotkey combination to whatever suits you best, put it in a script set to run on startup with any other hotkeys you use (make sure you have write and delete permission to whatever directory the script is in), and then enjoy seamless autocorrection of anything anywhere at the touch of a button.
The script works by backing up your clipboard contents, sending ctrl-c to grab whatever text you've highlighted, searching Google with your text, parsing the response with regex to see if Google autocorrected anything, pasting the corrected text over your original text, and finally restoring your clipboard.
Note that while the script can theoretically handle entire sentences, the expected usage is to highlight and correct a single word you think you may have misspelled.
Edit: As various posters have pointed out below, there are a number of problems and possible enhancements for the script. The URL I use is the default Google search URL for english-US and may need to be localized for international users. Google removes newlines from your search criteria so the script would need to encode newlines as a special character and decode them back to newlines after the search if you want your newlines preserved. Furthermore some HTML special characters (like apostrophes) will also need to be decoded to come back correctly. The regex I use is very brittle and will probably break if Google changes the format of their search response. And finally, while Google provides the smartest autocorrect experience I've ever seen, it isn't perfect and can potentially identify misspelled words as valid or correct words to the wrong thing.