Two tips for Tabbing your way through a Mac

When I switched to Mac from Windows I had an adjustment period. The window model is a bit different, the menu is in a different location, the Dock Bar != the Start menu, etc. Those all took a little adjustment period but I quickly overcame them as obstacles to productivity. By far the longest adjustment period involved the use of the keyboard and more specifically the use of the Tab key.

For all of the keyboard power of a Mac (shortcuts are virtually everywhere) the Tab key seems to be forgotten on most Mac keyboards, yet that is probably the most used navigation key on Windows. Here are a couple of tips for making your Mac keyboard experience leverage the Tab key:

Enabling Tabbing
The first thing you will want to do is to enable tabbing in dialog/pop-up windows. For some reason Apple decided to make that an option you need to manually enable in order to tab your way through all of the controls on a modal dialog. You can change this by going to System Preferences / Keyboard & Mouse / Keyboard Shortcuts and enabling full keyboard access:

This means that when a pop-up dialog is presented you can hit Tab and Shift-Tab to quickly navigate the controls. When a button is highlighted you can hit Space to activate (or click) that button. The alternative is that not every control is a Tab stop.

Safari Tabbing
Again, unlike other applications (Firefox on Mac for example), Apple does not think all of the items on a web page should be a tab stop in Safari. Hyperlinks as an example—which are often used as buttons in some web page designs—are passed right over by default.

You can change that behavior in Safari by going to Preferences / Advanced and checking on the Universal Access setting for the Tab key:

This will allow you to tab through all of the elements on a web page, much like most of the other web browsers out there.

Given the keyboard power that Macs have—something I found quite surprising after I switched—I'm not sure I understand why the Tab key has been relegated to "optional" status by Apple in these cases. For people switching to Mac from Windows it's a really good idea to make these two setting the default option; it sure would help with the adjustment period.

Got a tip for enhancing the keyboard experience of Mac users? Please drop a note in the comments!


Anonymous said...

Rather than subject longstanding mac users to that (in my opionion rather obnoxious) behaviour, it might be better if Apple were to provide a 'Migrating From Windows' set of defaults. This way, you could have all the settings which emulate windows set in one go and those of us who prefer things the traditional Mac way wouldn't have to go un-setting them.

Kate said...

very useful, thanks. I'm still trying to get my head around jumping to the start of every word using alt-shift rather than ctrl-shift, and can never remember how to do page-up/page-down!

David Alison said...

@Anon: I'm curious, why would you consider a tab key stopping on all of the controls rather obnoxious? I do think you are right though, a general "I'm coming from Windows" settings that hit a couple of these types of preferences would be helpful.

@Kate: The key-based word navigation took me a little while to "undo", though now it's second nature for me. Apple's keys make more sense because they don't conflict with the Control based keys used in most terminal/Unix shells.

Eytan said...

David, I think the point Anon was making (and I agree) is that on a web page, navigation is usually done using the mouse. The only fields I want the tab to take me to are text entry fields. Stopping on every possible control on most web pages is not good behavior, IMHO. A dialog is one thing, but a web page includes EVERY single link, image link, etc. Way too much for most pages...

David Alison said...

@Eytan: But using the default Tab behavior how does one select radio buttons and check boxes using the Tab key? The place that I noticed this the most was when navigating through web based forms where things like gender are often represented by radio buttons; seems pretty arbitrary to only select certain controls that allow data input using a navigation key, especially as a default value.

Anonymous said...

I'm confused. I really can't stand tabbing to all controls because it makes it too tedious to just tab to the form elements. Radio buttons/checkboxes DO get keyboard control without the stopping on all controls option selected. This is true on omniweb (my default) and I just checked in Safari and it's true there, too. The all controls option just adds links, for which there are too many on most pages for this to be at all useful.

brian said...

I'm a windows convert, and I keep praying for my holy grail of keyboard shortcuts: accessing the menus! Windows has an awesome interface. I press Alt and a corresponding letter, ex. F for file, and I'm in the File menu. Unless there's something I'm unaware of.

David Alison said...

@Anon: Sorry - I mixed up the two settings. Unless you enable the system wide preference for tabbing as I have it listed above you won't be able to tab through radio buttons and check boxes.

I rarely tab through web pages but when I do it's usually because I'm filling out some kind of web based form. Very often a web page will use a hyperlink to access look-up information or sometimes buttons so for the rare times I do use keyboard navigation within a web page I need it to hit all of the elements of it.

@Brian: Yeah, that and the mnemonics in dialogs are the things I miss. Fortunately the shortcuts are plentiful and fairly standard on Macs so they are what I've learned to adjust to.

Anonymous said...

control-F2 access the menu bar. control-F3 accesses the dock. Unless you forgot and turned it off with control-F1. System Preferences -> Keyboard & Mouse -> Keyboard Shortcuts, and look for the "Keyboard Navigation" section.

OS X does nearly everything Windows does. Probably more. But having some of these things turned off by default is probably the legacy of focusing on new users (versus Windows switchers). Another example, right-clicking is not enabled by default. Makes me want to jump up and down and scream. But it IS simpler for a grandmother... except when you tell her to just right-click on something.

Anonymous said...

I see now, yes, the system one is important for me. The Safari one bugs the hell out of me. I tab to login and search boxes all the time on pages, and on PCs tabbing through a bunch of links before these boxes gets very annoying.

(I'm the anonymous who posted beginning with "I'm confused)

David Alison said...

@Anon: I normally use Firefox and it doesn't have the option Safari does; it just tabs through each control (including hyperlinks).

Anonymous said...

Same anon again, have you tried Omniweb? Now that it's free it might be worth a shot. The shortcuts are great for a power/heavy keyboard user, the side-tabs help with screen real estate, and the thumbnails on the tabs really help you know which tabs are which at a quick glance. Also having workspaces is a really nice often-overlooked plus.

I use it with no address bar/bookmarks bar so I waste no vertical real estate whatsoever. Just hit command-l and an address bar pops up for you to type in, then disappears again. (Firefox uses a sheet for this, which while not slow, feels slow)

You can also set per-site preferences for ad blocking, languages, browser identity, etc. I'm a big fan.

Eytan said...

@David - Option-Tab. The selection in Safari just toggles the use of the option key or not to navigate through all the controls. Like in other applications (like the finder, close all when option is held down, or save all in most apps,) option subtly changes the behavior of most operations. It provides an 'option' so to speak :)

tai said...

@Eytan - Brilliant! wonderful tip!

David Alison said...

@Eytan: Ah, the power of the option key. Thanks for pointing that out. It can take a while to really enjoy the power Macs provide through the keyboard. My biggest issue is the default behavior that Macs use, at least as a newer user switching to Macs from Windows.

I know there are lot of Mac purists out there that feel that the way Macs are set up out of the box should remain the same but the reality is the growth and strength of Apple will be in large part due to people switching over from Windows to Mac. Doing things to help those people with the adjustment—especially things like these little optional settings—should be more obvious.

I do think that the first Anon poster's suggestion is the best; a "Coming from Windows?" part of the initial Mac setup, or even a section in the System Preferences that makes it easier for first time Mac users coming from Windows to adjust to these smaller things.

Eytan said...

@David — while I agree with Anon's post, I disagree that the default behavior should change. When I am on a web page, I want tab to go between text entry fields. That is how I interact with web pages 99% of the time — mouse clicks for everything, tab when doing data entry.

People looking for those settings, again, are POWER users. They will find them (the settings) on their own, or through blogs like this. I can't tell you how many people I know double-click on links in browsers...

Just because you CAN does not mean you SHOULD. To me, that is one of the biggest differences between Mac and Windows. The Mac is simple and elegant, quick to get up to speed. But it has a lot of depth that you will find if you are willing to explore.

When everything is presented on the surface, as in TAB takes you to every field on a page, most users would not use it — it is too hard for them to get where they want to go. So they will click on a text entry field. They will never use the keyboard on a web page. etc.

However, if the TAB retains the consistency of every other program they have, where it moves from text entry to text entry field, they will become comfortable with TAB and SHIFT-TAB.

No one would argue that iTunes is simple. But it is, on its surface. And features have been added slowly (and at times, taken away from the main UI but retained in plists). Its all about how you present stuff to the user and how approachable you make it.

As a software designer, I would think that the last year has shown you Apple's BIGGEST gift, even their art — one of minimalism.

I'd be curious to hear your thoughts on this.

David Alison said...

@Eytan: Trust me, I really do appreciate the minimalist approach and do see that Apple does that extremely well. My issue is with the arbitrary nature the Tab key is actually used out of the box on a Mac.

I feel that if you are going to give me the ability to navigate a data entry form you should allow me to hit all of the controls using that navigational key. Clearly the Tab key is used for navigation, yet out of the box it does not stop at all of the controls, even obvious ones like radio buttons and check boxes.

One of my first experiences on my Mac frustrated me. I purchased something online and was in the process of filling out a web based form, entering data and hitting the Tab key to move to the next field.

Everything was going great until I hit the point where the next field was a check box. I hit the Tab key and it skipped right over the field. I started navigating around the fields with Tab and noticed that it was skipping some fields and not others. I didn't really notice that lists and text boxes were tab stops and radio buttons and check boxes were not.

As a new user quickly forming an opinion I felt that something was broken. Aren't check boxes just as important as text boxes for data entry? I can enter my e-mail address but if I want to opt out of getting marketing information I need to grab the mouse?

I will concede that having a default behavior that includes hitting every hyperlink on a page is probably overkill though and Apple's setting in Safari (and the ability to override it) is fine. It's that main Tab control setting that I just don't understand.

Eytan said...

@David — I guess I'm old school. In the old days (pre browsers), I remember the Tab key only going through text fields in forms you'd fill in databases. With the advent of browsers, people started to navigate through controls as well. That is why, I presume, the behavior in Safari is slightly different than the system as a whole. It does give you the option to navigate through ALL the controls in a browser, but not the links, making it unique from the rest of the system.

I guess it is not 100% consistent as you'd like, but my feeling is they gave it a lot of thought and found some method in their madness...

Thank you for engaging!

N45800 said...

In the case of a website, lets say, on Mac set at default settings, I can hit tab and be in the search box, if I switch it to tab through all controls, I hit tab to select the homepage link, then join, about, login, and finally search. You get this same problem with most websites. If i'm a new computer user, I think the first one is more useful, especially if they only understand how tab only affects text / text boxes.
You can still use option-tab to get back and forth through radio buttons and such, but it takes some getting used to if you're coming from a PC.