The Safari dock icon behavior has always annoyed me. If you have no windows open and click on it, it will open a new Safari window. Great. However, if you have other windows open or minimized to the dock, it will just restore the last window you had open, which I find annoying. My solution: AppleScript.
You can use the System Events feature of OS X to activate any menu options. For this to work, you must have "Enable access for assistive devices" enabled on the Universal Access system preference pane.
Create a new AppleScript program in Script Editor with the following code, and save it as an application:
tell application "Safari" to activate
tell application "System Events"
tell process "Safari"
click menu item "New Window" of menu "File" of menu bar 1
Now, find some spiffy icon to assign to your new application and drag it to the dock. I put this application right above the real Safari application, and assigned it a different icon. When you click on this new program, it will open a new
Safari window. One quirk is if Safari isn't already running, it will launch two windows since Safari loads one on startup. I've only tested this on 10.3.
Sogudi is a really nice (free) plug-in for Safari that allows you to define shortcuts and search strings for easy access. For example, Sogudi comes preinstalled with a shortcut to search MacOSXHints. With Sogudi installed, just enter hint search_term in the Address Bar (replacing search_term with your own serach terms), and Sogudi will display the results. It comes with several nice shortcuts already installed (including Google (goo), dictionary.com (dict), php.net (php), etc.), and you can easily create your own. Here's one I made for searching the MacOSXHints forums (you'll understand it better after installing Sogudi):
As mentioned in a recent hint, it would be nice in Safari to have a scrapbook function like in Microsoft IE. I have created just such a feature, and you can download the scripts that I use in 10.2.8 for yourself.
WARNING: The scripts are for 10.2.8. I'm not on Panther - yet (hear that, Santa?). For 10.2.8, you must download GUI scripting addition from Apple. I understand that Panther has GUI scripting built-in but I'm not sure about the syntax, so maybe a scripter could edit the script and repost for 10.3 (if needed)?
[robg adds: Read the rest of the hint for the instructions; I haven't tested this one, but it seems like it would be quite handy.]
If you're looking for customisable user agent spoofing, then Mozilla/Firebird makes it easy. You can get the Mozilla/Firebird plugin here; don't be fooled by the Windows screenshot -- XUL is cross platform, remember.
I can confirm the Firebird plugin works fine with Firebird 0.7 on Panther. So, what user agent to masquerade as? Here's a pretty comprehensive list to get you started...
Now you can use the Titan TV web site on Safari to program your EyeTV! ElGato's EyeTV uses the Titan TV web site for TV schedules in the U.S. One can click on the record button on a Titan TV listing, and the program information is automatically sent to EyeTV -- but not with Apple's Safari browser. I'd much rather use Safari than any other browser, so I created an Applescript Folder action to fix this.
The Safari debug menu now can handily import bookmarks from HTML files! I've had a huge number of bookmarks I exported from IE/Windows back in April, when I got rid of my PC. I haven't been able to get them into Safari, despite trying a number of tips (open the file in Safari, drag the links, etc etc). Until now.
Make sure you select the "Import Bookmarks" option, not the "Import IE/NS/Mozilla Bookmarks" option, which will just look for existing installs and get the bookmarks from there.
Since it's in a hidden menu, there must be some problems with this, but I haven't found any. Remember, when not running Safari, enter defaults write com.apple.Safari IncludeDebugMenu 1 at the terminal to turn the menu on (and then re-launch Safari).
Saving a web page as a PDF in Safari is a pain. Unless the page is really small, you're going to end up with multi-page PDFs, and they're even going to be scaled down to match the width of your paper size. Without getting into the why, here is how to take a single-page PDF snapshot of a web page:
Set up a really freaking big custom paper size:
Hit Cmd-Shift-P to bring up the Page Setup panel.
Select Custom Paper Size from the Settings drop-down menu.
Create a new paper size with obscenely large dimensions (something on the scale of 99"x99").
Select Page Attributes from the Settings drop-down menu.
Select your new paper size from the Paper Size drop-down menu.
Save your web page as a PDF:
Hit Cmd-P to bring up the Print panel.
Click the Save as PDF... button.
Specify a n/s/l for the file and click Save.
Crop the image:
Open the resulting PDF in Preview.
Click the Select Tool icon in the toolbar (or the Crop Tool icon if it is there and save yourself some keystrokes).
Select only the part of the PDF that you want to save.
Hit Cmd-K to Crop the image.
Hit Cmd-S to Save the image.
And you're done!
[robg adds: A couple other things to consider. One, if you do a lot of this stuff, get SnapWeb. It's $15.00 (or $30.00 for commercial use), but it uses Safari's rendering engine and makes it simple to save a web snapshot without any page breaks. Second, when I was testing this, I had troubles if I increased the page width -- sites that have infinite-width tables would render on the printed output as super wide. Instead, I just changed the page length and left the width alone.]
There are times that Mozilla can be slow. This is especially true when you have many windows open and a certain number of them have animated GIFs. At times like this, you can look at the CPU Mozilla is using to find it at 50 to 60%. To reduce CPU usage, you can either have animated GIFs animate once, or not at all.
To do this, open the Preferences window and then go to Privacy & Security -> Images, then in the bottom section, there is a place to configure how many times a GIF should loop. Choose either 'once' or 'none.' Looking at Mozilla's CPU usage afterwards, you should see it drop back down to something a little more acceptable.
New with Panther (or possibly a Safari update) is the ability to drag images from the browser right into an email to be sent. No temporary file on the Desktop. Of course you can drag images straight into other apps (Word, etc.), but Mail is where it really adds to my user experience.
Previously you had to drag to the desktop, then to the email, then remember to delete the temporary image file after the mail had been sent.