Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

I am a long time OS X user and as such, I often enjoy the built-in dictionary available system-wide. It’s a small detail that, if you come from Windows (or Linux) turns out to be of great help (provided you really care about improving your typing skills). Available on most Cocoa applications by default (thanks to the underlying technology), it underlines incorrect words and obvious grammar errors. It has its bad days, but the results are usually better than nothing. I type mainly in english and spanish and in both cases, it’s a decent solution.

But I just realized that I have a problem with it. I rarely use the mouse when I’m in “Type Mode”. If I’m writing I don’t need to use the mouse. I just don’t use it; I manage to perform most of what I have to with the keyboard and its shortcuts.

There are notable exceptions to the above (where a dialog requires mouse action, or there’s simply no way to get the focus of a particular UI element). Those exceptions are annoying (and frequent), but I guess I already deal with them (by grabbing the mouse and killing a kitten).

However, there’s one that I’d like to know how to solve, and maybe the minds behind the site can clear for me.

Imagine the following simple scenario. Textedit.

You start typing this:

textedit1

In order to fix the misspelled word, you have a few choices with your mouse, or you could use the ⇧Shift⌘Cmd: combination to bring this:

alt text

However that dialog doesn’t have keyboard focus and I am unable to get it, so I have to reach the mouse, click on it, and fix the problem. That’s not good.

What I want is to be able to bring this:

alt text

…with my keyboard.

That menu came when I right clicked on the word.

How do you deal with this? Do you use the mouse? Do you use the keyboard?

Enlighten me please.

UPDATE FOR LION OSX 10.7

As many of you are aware, OS X 10.7 "Lion" is out and it brings some changes in this area. Sadly, the biggest complain is still not 100% fixed.

The good news is, it is "possible" to spell check using the keyboard only, although we still don't have a nice popup like the "right click" over an underlined word.

The Spell Check pane can be focused now by using F6 if it loses focus, but has it by default when you invoke it with :, this allows you to invoke it over a red-underlined word and press to change the word (or TAB to focus the list of alternatives and then to change it)… but not really because…

…the Bad news is, if I make a mistake right here and I try to bring the spell check, it will go to the next mistake, not the word I have below the cursor, which is annoying, because it means you have to actually go back with the cursor before invoking the spell checker.

Also there are no shortcuts on the Grammar Pane, so you have to TAB around the fields to click anything other than "Change". The order of the options is also weird:

1) Upon launching Grammar Pane, focus is on Change for "return" but you are ready to start typing a replacement if you want. So you could type the "right word" and press return, or you could press return to accept the first replacement on the list, or you could press TAB to move to that list, select a new one (with the arrow keys) and finally press return to accept it.

2) If you wanted to move to the next change without accepting anything for the current word, you need to press TAB four times and then the space bar to click on find next.

3) Focus is one way, if you reach the last option in that dialog, it won't cycle back to the first option, so you have to shift-tab back in the focus chain. (weird?)

4) You can't focus the Define, Guess or Automatic by Language Buttons/Combo boxes, unless you grab your mouse.

5) You can dismiss the panel by pressing escape.

Finally, going from "mistake to mistake" is achieved with ;; this will jump from red underlined word to the next in a cycle.

share|improve this question
    
I was going to post this question too. Thanks for writing this up, I'm eager to read an answer too. –  Jason Salaz Dec 29 '10 at 22:16
    
oops ! osx = mouse + keyboard :( –  Sagar R. Kothari Dec 30 '10 at 10:33
add comment

4 Answers

Yo ! Man, I got the best thing for you.

Just type some of your characters of word & press F5 & see the magic, It is what you want. Suppose your not getting the word rub some & get what you want.

Here is snap-shot of what you want. ( source of lots of shortcut keys )

Suppose, I am a user, I would do as follows.

  • Start typing
  • suppose I typed Compu
  • and then I would press F5 for getting hints

simple & short just F5 does all for you, no need to press Cmd+: and then get correct one from list. It will give you list on the spot.

alt text

share|improve this answer
1  
it didn't work for me –  Am1rr3zA Dec 30 '10 at 8:52
    
@Am1rr3zA - what did you do ? type two or three chars of your word & press F5 - to get suggestions. –  Sagar R. Kothari Dec 30 '10 at 9:03
1  
That’s a nice one and I upvoted you; sadly this is not exactly what I’m looking for; I was aware of word completion in OSX, but the problem with this is that it doesn’t really perform spell correction, it just suggests words that “contain” that string. For example, if the error is “wree” the suggestion’s contain things like: “wrackee”, because they start with “W+R”. Thanks for sharing this which I overlooked in the question. –  Martín Marconcini Dec 30 '10 at 9:23
    
Yeah, sugar: This is a great idea, and in general it's a great tip (post this to the keyboard shortcuts community wiki thread!), but the point of this question is pure-Keyboard driven spellchecking/fixing (without manually arrowing around the word) after the fact. Again, thanks for a great tip in general. –  Jason Salaz Dec 30 '10 at 18:22
add comment

I just went through Apple's Keyboard Shortcuts Document and really didn't fine anything meaningful. I picked some of the more vague ones and tried them out in TextEdit to no avail.

While I don't want this to be the answer, my current idea is to use Mouse Keys, as silly as it is to say. Activating the shortcut via Universal Access.prefpane, then quint (five)-tapping Option ⌥, then you should be able to call up the window by either;

  • holding (with a numpad) 5 (without a numpad) i, or;
  • pressing (with a numpad) 0 (without a numpad) m.

The context window should pop-up, and you can select the correct spelling/action as you desire, and move on... after you disable Mouse Keys with the same shortcut, that is. (Quint (five)-tapping Option ⌥).

share|improve this answer
    
+1 Vx. At least mouse keys is an alternative (as silly as it sounds, yes) :) –  Martín Marconcini Dec 30 '10 at 9:23
add comment

Open Automator, create a Service without input in any application, and add a single Run AppleScript action. Copy and paste the following code:

tell application "System Events"
    # locate frontmost application
    repeat with ap in application processes
        if frontmost of ap is true then
            set fmap to ap
        end if
    end repeat

    tell application process fmap
        # click its "Show/Hide Spelling and Grammar"
        set scw to windows of fmap whose name is "Spelling and Grammar" and role description is "floating window"
        try
            tell first menu bar of fmap
                tell first menu of (first menu bar item whose name is "Edit")
                    tell first menu of (first menu item whose name is "Spelling")
                        if (count of scw) = 0 then
                            tell (first menu item whose name is "Show Spelling and Grammar") to click
                        else
                            tell (first menu item whose name is "Hide Spelling and Grammar") to click
                            return
                        end if
                    end tell
                end tell
            end tell
        on error
            display alert "Cannot open/close Spelling and Grammar window!"
            return
        end try

        # focus the Spelling and Grammar field
        set fw to first window of fmap whose name is "Spelling and Grammar" and role description is "floating window"
        perform (first action of fw whose name is "AXRaise")
        set focused of first text field of fw to true
    end tell
end tell

Save as a Service and assign a keyboard shortcut in System Preferences » Keyboard » Keyboard Shortcuts » Services. I set it up so it toggles the window when pressed repeatedly. Is, of course, locale dependent and expects the grammar menu item in the usual location; displays an error if that fails.

Unfortunately, being Automator, it's somewhat slow.

share|improve this answer
    
Interesting, I'll get back to you, not the most elegant solution, but could be an alternative given that there doesn't seem to be a solution yet. –  Martín Marconcini Apr 26 '11 at 8:23
    
@Martín I know, but the apparent lack of a better solution (Cmd-Backtick ignores the spellcheck window too) compelled me to do it this way. You could reduce it to a "set keyboard focus to spellcheck window", which is essentially a one-liner, and continue using the regular menu item. Further speedup would likely be possible through use of FastScripts instead of Automator to host the AppleScript. –  Daniel Beck Apr 26 '11 at 9:26
add comment

I used to use the mouse (pen to be specific). However, I recently have been using Typinator which has managed to catch most of my mistakes.

share|improve this answer
    
thanks for the Typinator mention. I have had typinator for years now, but it’s not exactly what I’m looking for. It’s not a dictionary, it’s a text-replacement tool (and a very good one). –  Martín Marconcini Dec 30 '10 at 9:24
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.