Keyboard Driven Safari

A friend was explaining his preference for Google’s Chrome browser the other day, and was using 1Password as an example of why he felt that Chrome was a better designed browser. The 1Password extension in Chrome drops down a menu that looks almost like an iOS window, which he felt was more polished than it’s Safari equivalent. In Contrast the “1P” button in Safari drops down a normal cocoa menu. Funny thing is, I’m fairly certain that I had never seen that menu, simply because that’s not how I use Safari.

Chrome is an excellent browser, and got several things right with their design and philosophy, it’s fast, light on resources, and I love that it separates tabs into their own processes. The one thing I think they got spot on right was the name. The browser is a pane of glass that the web shines through. When the browser starts outshining the web there’s an imbalance. The browser really is just the chrome around the content of the web, which is why I choose to hide all of Safari’s toolbars.

I use Safari because it is a proper Mac app, and so it respects the standard keyboard combos that I’ve become used to over the years. I browse the web almost without touching the mouse. Almost, because I still use it to click links and to scroll down a page, but for the most part I use these keyboard combos:

  • ⌘ + [ = Back
  • ⌘ + ] = Forward (I don’t use this one much)
  • ⌘ + L = Pop open the address bar to enter a URL
  • ⌘ + F = Search for text in the current web page, immensely useful when searching for an answer to a technical question in a long newsgroup, mailing list, or forum page
  • ⌘ + ⌥ + F = Pop open the address bar with the cursor focused in the search field
  • ⌘ + Shift + R = Safari Reader mode, inherited from Readability

And, for 1Password:

  • ⌘ + \ = Log in to the current web site
  • ⌘ + ⌥ + \ = Pops open a HUD window that lets you quickly select a saved login, then opens a new tab and logs into the web site for you.

I also use bookmarklets fairly extensively, particularly Instapaper and Yojimbo. Safari let’s me use these keyboard combos to trigger bookmarklets I have saved in the Bookmarks bar. These change a bit more than the others, like once every six months or so, but here’s what I currently have:

  • ⌘ + 1 = Instapaper Read Later Bookmarklet
  • ⌘ + 2 = Readability, for those few times when Safari Reader fails me
  • ⌘ + 3 = Bookmark in Go2, something special I’m working on for Go2 1.2 release
  • ⌘ + 4 = Share on Twitter, because… well… you know…
  • ⌘ + 5 = Archive in Yojimbo

As I said earlier, extensions can drag down a browser, clutter the interface, and generally do bad things. However, there are a few absolute gems that I keep around.

New windows and new tabs both open with Top Sites, which I think is just a beautiful home page. My current Top Sites are:

  • TeuxDeux: All the “task management” I need
  • iTunes Connect: To keep tabs on Go2
  • Farmdog Software: because I’m really happy with how the design turned out
  • This site: Evidently because I’m my biggest fan
  • 5by5: I’m constantly checking the site to get to the links in the shownotes. I wish there was a separate RSS feed just for these links, that’d be pure gold.
  • FogBugz: My bug tracker and customer support for Farmdog, also hosts Kiln, a Mercurial repository which keeps Go2’s source nice and cleanly revisioned.

Another part of Safari being a proper Mac app is it’s support for the system-wide dictionary. One of my favorite features of Mac OS X is that I can highlight a word, press ⌘ + ^ + D, and see that words definition in a little window below it. I use it constantly.

At this point i’m fairly invested in Safari. I’ve tried other browsers, but Safari is the one I keep coming back to. Omniweb used to be my go to web slicing and dicing tool, but sadly, it’s been leapfrogged. Safari lets me keep everything out of site, and just a quick keyboard press away. Everything I need, nothing I don’t.