Safari Soup-Up
Customization isn't just for Firefox
To paraphrase T.O., I loves me some Firefox. That said, though, I still find myself using Safari for my day-to-day browsing needs. When you get right down to it, Firefox still doesn't seem polished enough on the Mac for my tastes (just try out the Windows or Linux versions for comparison), and though the situation is improving, Safari often just "feels" better than even the latest Preview Release of Firefox. On the flip side, though, Safari can't hold a candle to Firefox's almost infinite customizability through Extensions and Themes. Or can it?
Safari sez: Me too!
OK, so maybe it's like one of those birthday candles rather than one of those big thick jobbies that the hippies light when they listen to their newfangled "rock and roll" music, but Safari can, indeed, hold its own when it comes to customizability. Well, maybe it's not exactly holding its own, since Safari can't by itself do many of the things we're going to make it do, but you get the idea. And lest I paint myself even further into this particular corner with my continued rambling, let's just get to the bottom line, which is that thanks to a little ingenuity on the part of various third parties out there, Safari can be tricked out but good.
The Categories
How freaky you want to get with this depends on what you want to do. Customizing Safari falls into several categories, which I'll first define (at least the ones relevant to what we'll be talking about today) before getting into the specific tools available:
1) Hidden Options. Some of Safari's features, for whatever reason, aren't readily accessible. These features include:
- Enabling Safari's Debug menu, which is a treasure trove of options in its own right (fig. 1)
- Disabling the icon cache
- Setting the number of items in Safari's History
- Disabling Safari's built-in PDF display
- Reducing the default page load delay
- Importing, reimporting, or exporting bookmarks

Figure 1: Safari's Debug menu offers so many helpful options, I'm left wondering why some of these aren't a little more prominent in Safari's default install.
Those are the big ones. Anyway, they all fall into the category of "switch-flipping," so to speak, in that no actual modification to Safari itself takes place.
2) Theming. Firefox has Themes, and while it boasts a lot more to choose from, Safari can be skinned (to some extent) too. Typically, theming Safari means choosing the interface type (Brushed, Aqua, or Unified on Tiger) and swapping out the widgets (fig. 2), but hey, it's better than nothing, right? Anyway, we're starting to get into actually modding the guts of Safari here to do this, but it's akin to some light arthroscopic surgery rather than, say, organ replacement.

Figure 2: From utilitarian metal to minimalist cool, Safari (with some help) can change its stripes in a number of ways.
3) Search. Safari's search bar is handy, but it offers exactly one option: Google. That's great and all, but sometimes you just need a little more depth. Fortunately, there are options, which we'll get into very soon now. Continuing the surgery metaphor, from here on out we're talking about stuff that doesn't really mod the innards of Safari either, but instead offers bolt-on enhancements that alter Safari's behavior. Think Borg.
4) Development. One of the best Firefox add-ons is the Web Developer Extension, which adds a plethora of features that aid designers and developers when, well, designing and developing. And while there's no 1-to-1 equivalent for Safari, there are options here too, which, again, we'll get to shortly.
5) General functionality. Think of this as the infamous "miscellany" option. As we'll see, a few tools go hog wild and add all sorts of crazy (but cool and useful) stuff to the Safari experience. But for now, this category exists because otherwise I'd have at least a dozen more categories, and I just don't think you want to sit through that. You're probably in enough pain right now as it is.
OK, so those are the basic categories. Now that we're straight on what "is" is, let's get to the utilities that make the magic, such as it is, happen.
The Tools
By no means is this an extensive list, but it is a fairly comprehensive one that covers utilities I've tried and used at one point or other since the release of Panther in 2003. So if I happen to leave your favorite out, please don't take it as a personal affront or anything. Hey, that's what the email link is for at the end of every article, so sound off if you have something to say. Anyway, onto the tools, with info, categories covered, and download links for each. And, as usual, I'm only listing programs that are free, with a single cheap ($12) exception. Here goes:
1) TinkerTool/OnyX
Category: Hidden Options
I included these two as a set, since they ostensibly achieve the same thing. Both are general OS X system tweaking and/or maintenance utilities, but each also has a dedicated section just for Safari (fig. 3). Pretty much everything I mentioned in the "Hidden Option" category can be accessed from either of these two programs. Plus, they're both useful in so many non-Safari ways, so it's not a bad idea to pick up either or both.

Figure 3: TinkerTool and OnyX both offer pretty much the same options.
2) Safari Enhancer
Category: Hidden Options, Theming, Search
Safari Enhancer is a standalone app that offers similar functionality as TinkerTool or OnyX, but adds a couple more features. For one, it lets you set the appearance of the Safari window to any of the three OS X interface styles (again, Metal, Aqua, and, on Tiger, Unified). It also can change the default search engine, though its choices are somewhat limited (mostly international versions of Google, but with a couple others too). Finally, it can set the user agent string (what browser Safari identifies itself as, fig. 4). Of course, once you enable the Debug menu, you can do this on the fly from within Safari, but Safari Enhancer's list of browsers it can pretend to be is a little more comprehensive.

Figure 4: Though many of its options appear in other tools, Safari Enhancer isn't bad to have around anyway.
3) SafarIcon
Category: Hidden Options, Theming
Short of making your own buttons and manually placing them inside the Safari.app package itself, SafarIcon is pretty much the only game in town as far as changing the look of Safari goes. (fig. 5) SafarIcon comes with several pre-made themes, so all you need to do is fire it up, choose the theme you want, and that's that. You can also choose the interface style, making SafarIcon a one-stop-shop for Safari themes. You can even mix and match items from existing themes to make your own truly unique (or, potentially, truly heinous) theme. One suggestion, though: make sure to repair permissions through OS X's Disk Utility program after installing a theme, since what gets replaced in Safari will not have the correct permissions.

Figure 5: SafarIcon makes skinning Safari as easy as pick-n-click.
4) Safari Stand
Categories: All
One of two programs which I hereby deem worthy of "big kahuna" status, SafariStand packs so many extras in that I just have to resort to using bullet points to list them all:
- There's a sidebar that shows tabs as thumbnails, a la OmniWeb (fig. 6)

Figure 6: If you like OmniWeb's thumbnail tabs, save yourself $30 and give SafariStand a try first.
- The Stand Bar lets you search through things like your Bookmarks and history, while the Stand Search panel integrates Spotlight searches into Safari (and lets you use regular expressions for searches).
- It lets you set the Download window to auto-close after downloads finish.
- It adds "QuickSearch" capabilities, allowing you to define shortcuts for search engines and to use the location bar for searches. For example, once you define it, you could type yahoo kumquat and Safari will automatically search Yahoo for all hits it has on that oft-misunderstood fruit.
- It can be set to "transform" links that spawn new Safari windows into ones that simply open the link in a new tab, which is a boon for those of us that love tabs and hate multiple windows cluttering our browsers.
- It allows you to enable several "Key Actions," such as find-as-you-type, selecting next and previous tabs, and zooming images and text.
- The Site Alteration lets you define site properties such as text encoding, default font size, popup blocking, and the browser agent string on a site-by-site basis.
- The Workspace Shelf lets you define sets of sites to open together and store for later use.
- SafariStand can add syntax coloring to the code in the View Source window, as well as display it in a font of your choosing.
That's a whole lot o' junk, and since it's free to boot, it's definitely worth a look. As for how it works, SafariStand is one of a growing class of programs that resides in the InputManagers folder (located in either the /Library directory or your username's library folder), and "rewrites the DNA" of Safari to add what appears to be native functionality.
5) Saft
Categories: All
Price: $12.00
This is the other "big kahuna" utility, and is also one that manifests itself as a "bolt-on" program that lives inside the InputManagers folder. Now, as far as I can tell, Saft started life as a way to adapt Safari for use in kiosks, but has since expanded to include a bevy of very useful features. I feel another bullet list comin' on:
- Like SafariStand, Saft can also send all "new window" links to a tab, but unlike SafariStand, Saft can be set to "rebound" to the tab you were viewing last instead of the previous one in the tab order.
- Again, like SafariStand, it can be set to close the Download window automatically.
- And yet again, like SafariStand, Saft adds find-as-you-type to Safari.
- Saft lets you set the timeout interval, which is useful for some slow-performing sites.
- It offers IDN spoofing detection for "phishing" sites that may not be on the up-and-up.
- Saft can keep track of the tabs you have open and remember and restore your workspace across Safari sessions.
- It adds spacer functionality to the Bookmarks menu (why Safari doesn't have this already is beyond me), as well as adding bookmark sorting and "Add Bookmark here" options (fig. 7).

Figure 7: I can't begin to tell you how great Saft's bookmark organization tools are.
- Saft can block ads, images and plugins, as well as being able to disable site refreshing.
- The kiosk mode (which is NOT designed for everyday use) can effectively lock down Safari and OS X by disabling force quitting and tab-switching, hiding the Apple Menu, and defaulting to a specified page after a set period of inactivity.
- Saft also offers shortcut searches (I direct you to my yahoo kumquat example), but also adds sites you have set shortcuts for to the drop-down menu in Safari's search bar.
- A fullscreen mode is available for smaller monitors, which hides menus, toolbars, and other space-wasting items, and can move functionality to context menus. The fullscreen mode can also be used in conjunction with the kiosk mode for full-on system takeovers.
There may be a couple of things I left out, but Saft is such a Swiss Army Knife of a program and so well integrated into Safari that I've forgotten over time where Safari itself leaves off and Saft begins. It's the only non-free program on this list, but well worth the twelve smackers.
6) AcidSearch/Sogudi
Categories:
If you would prefer to keep your search shortcut utility separate for whatever reason, I suggest either of these two programs (fig. 8). Both offer customizable search shortcuts available through the location bar. For Sogudi, the story ends there, while AcidSearch offers a couple more wrinkles. For one, AcidSearch adds the extra search sites to the search bar (like Saft does), and two, AcidSearch enables find-as-you-type searching. The only other difference between the two is in how each is installed: Sogudi is an InputManager (like Saft and SafariStand), which AcidSearch is a SIMBL plug-in. For the uninitiated, SIMBL is a freeware framework for injecting custom code into Cocoa apps (of which Safari is one), and is used for several such Safari extensions (as we'll soon see more of).

Figure 8: AcidSearch and Sogudi are pretty similar, and their features are available elsewhere, but if you just need a search tool, you can't go wrong with either one.
7) Safari WebDevAdditions
Category: Development
Thankfully, there's a way for Safari to replicate most of the functionality from Firefox's essential Web Developer Extension. Safari Web Dev Additions is a SIMBL plug-in that "injects" several features into Safari's Edit menu (fig. 9), letting you do things like (bullet list alert):
- Set a page as editable, which lets you test changes in WYSIWYG fashion
- Enable or disable images, links, styles, etc.
- Send a page's source code to an external editor of your choosing
- Place outlines around page elements such as tables, images and forms
- Show stylesheets and page headers in a separate text window
- Evaluate code from the embedded JavaScript console

Figure 9: Page layout and structure can be highlighted visually; in this case, I'm looking at where table cells are (outlined in green).
Additionally, Safari WebDevAdditions can show you the dimensions of an image through a simple right-click. This extension is a must for any Web designer or developer who calls Safari "home base." To complete the Web Developer Extension mimicry, be sure to Google for Bookmarklets (AKA Favelets) for Safari that can do things like resize windows or validate markup. The Safari bookmarklets page on Apple's site is also a good place to start.
8) SafariSource
Category: Development
SafariSource is a one-trick pony, but it's pretty good at the one trick it does. It's also a SIMBL plug-in, and all it does is reformat source code in the View Source window to reflect your color scheme and font (fig. 10). Sure, SafariStand does this too, but SafariSource actually lets you define the font colors and styles yourself, which SafariStand doesn't do.

Figure 10: Ooooohhhh...pretty colors...
What's your cocktail?
So that's the list. While having so many options is great, my advice here is to choose the combination that's best for you, and stick with it. I've found that instability (read: freezes and crashes) can be a problem with certain combinations, especially with programs that have overlapping functionality (for example, Saft and SafariStand don't like to be installed at the same time). So pick your cocktail, so to speak, and pick it wisely. For reference, on my main G5 (running Tiger), I've settled on a combination of Saft, WebDevAdditions, SafariSource, and PithHelmet (not discussed here for reasons I'll outline below), and that combo does everything I need. But on my increasingly ancient PowerBook, which is running Panther, I've kept it to just SafariStand, and that alone fits the bill for what I do on my older rig. So experiment, find what's right for you, and you'll be good to go. And again, this is by no means an exhaustive list, but it's a plenty good start.
Before we wrap for today, I realize that some of you may be asking where the security is at. After all, Safari's cookie management is rudimentary at best, and while the latest version (in Tiger) offers Private Browsing, it's not a persistent option. So next time we'll focus a little more on security and cover topics like ad blocking, cookie management, automatic clearing of Safari's cache and history, and even how to install and use a custom hosts file to help keep things locked down. So stay tuned for that, but in the meantime, enjoy your new tricked-out Safari experience!
Got Feedback? to send an email. I'll do my best to answer. Really.
