I discovered this by accident. Spotlight will index your iPod, but not your music files. But using the Terminal, you can force it to index music with the following command:
sudo mdimport -f /Volumes/your_iPod/iPod_control/
After you have indexed your iPod music, search for your music and view it in the Spotlight window. Double-click on a track of your choice and it will be imported into your iTunes music library and copied to your Mac's iTunes Music folder.
Not necessarily the easiest or most elegant solution to transfer music from iPod to Mac, but interesting that it is now rather trivial from the OS (Ok, it was previously easy to copy using the Terminal, but less easy to find what you wanted to copy).
As cool as Spotlight is, not all of us need it clogging up our menu bars. Apple doesn't let you Command-drag it out of the menu bar like you can other extras, but you can still remove with a bit of hacking.
As an administrator, navigate to /System/Library/CoreServices, and delete Search.bundle. If you think might want to re-enable it later, just move it somewhere else or rename it.
Open up the Activity Monitor and force quit SystemUIServer. When it reopens, your menu bar will be Spotlight free.
Note that this doesn't affect applications such as the Finder or Mail, and you can still use them to search as usual. All it does is take the search icon out of the menu bar.
[robg adds: I tested this one, and it does indeed work. I used the terminal to just move the file (sudo mv Search.bundle Search_SAFE.bundle), and then restarted the SystemUIServer. Sure enough, the icon was gone. But in case it's not obvious from the hint, Spotlight's functionality is also gone -- you can't use Command-Space or Command-Option-Space. Spotlight still works in the various Spotlight-enabled applications, but you can't use its system-wide functionality. To put things back to normal, I just reversed the sudo mv and restarted the SystemUIServer again.]
Word keeps all sorts of information in word-formatted files, including deleted text. So a spotlight on a word or phrase may bring up word files in which you had deleted those words. You can test this by opening a new file, writing some text, saving the file, then deleting some text and saving again. The deleted text will show up in the spotlight search.
To avoid this behaviour, place a single quote in the spotlight search as the first character: e.g. 'foo bar -- now you'll only get Word files that actually contain the undeleted foo bar text.
[robg adds: I'll admit I don't know why this works, but it certainly seems to -- if you have foo bar in a Word document, a search on 'foo bar will find it. But if your document only contains foo bar as deleted text, the same search will fail ... even though a normal search on foo bar will find it. Clear as mud, right?]
I was quite disappointed when I read Friday evening that Spotlight would only index volumes physically attached to my machine (e.g., FireWire or internal). I have a Linux server in the basement with lots of data that I was hoping to index and mine with Spotlight. This evening, while digging around, I found a command line utility called mdutil. It has a switch, -i, to enable indexing on a volume. So I just went ahead as root (sudo bash) and ran:
mdutil /Volumes/ldm -i on
Then I checked the status with
mdutil /Volumes/ldm -s
And, behold ... I got back the following:
/Volumes/ldm/:
Status: Indexing Enabled
A second later, the Spotlight Icon started pulsating. Half an hour later, it stopped. I went to a Finder window, typed a query, and selected the network volume ldm. To my delight, matches were coming back instantaneously on files deep down in the file hierarchy on that volume. I have not checked whether newly added files are indexed on the fly, too, and I do not know where the .Spotlight-V100 file is stored (not in the root of the volume in question it seems).
I thought that others may give it a try to confirm whether this is working as expected. The volume I tested this with was an AFP volume served via NETATALK (v. 2.0.2) by my Linux server (a x86 debian box). Unfortunately, it appears to fail with SAMBA. I have not checked NFS. One caveat: you must rerun the mdutil command each time the volume is mounted.
In the past, we've run a lot of hints about all the slow-motion effects in various OS X releases. This time, I'm going to try to get it all out of the way in one "meta hint."
Thanks to Cap'n Hector for emailing me the following list of "slow motion enabled" Tiger actions. Holding the Shift key down will cause any of the following to happen in slow motion:
Opening Dashboard
Switching between widget panels
Closing a widget
Hiding Dashboard
Opening the widget panel
Closing the widget panel
Clicking Safari's RSS icon
In addition, everything that worked in slow motion in previous OS X releases still seems to do so -- minimizing to the Dock, Exposé, etc. Feel free to add any new Tiger-specific slow-mo actions to the comments. I'll stop by and consolidate the new ones back into the hint at some point in the future.
The World Clock widget is fine, it does what it says, but it can easily be made a little better. Like including your home town, or the town where your family is, rather than the fairly generic ones Apple includes. To do this, you need to edit two files. Start by control-clicking on /Library: Widgets: World Clock.wdgt, and choosing Show Package Contents from the pop-up menu. In the top-level folder that just opened, you need to edit WorldClock.js
Open it up in you favourite text editor, and find a line with a city in the time zone you'd like to use. Duplicate that line, and change it to your desired town. I searched for Wellington in WorldClock.js, duplicated it, and changed the new line, so it now looks like this:
Note the comma after the first line. This change adds Auckland to the drop down list on the back of the widget.
Next, navigate into the English.lproj (or whatever language you're using) folder, and open localizedStrings.js. Once again, I found Wellington, and added the second line, as shown below:
The bracketed name must be the same as the name in WorldClock.js. The name on the right is what World Clock will display below the time. The folders that hold these files are read-only, so I tend to save the modified files to the Desktop, and then drag them back into place and Authenticate as an admin.
Next time you restart Dashboard or create a World Clock, the new town(s) will be available.
[robg adds: You may wish to create a backup before you start, especially if you're not used to mucking about with application bundles...]
I had some problems entering my location in the Weather widget under Tiger. It seems like it does not support non US locations out of the box. At least I was not able to find a way by just entering "City, Country" and other variations.
I checked the javascript source and found a way to make it work:
Move your mouse over the link matching your location in the search results. Look at the end of the target URL in Safari's status bar, and you'll see a parameter called zipcode. This is what needs to be entered in the weather widget's location field to make it work.
For Zurich in Switzerland this parameter is EU;SW;Zurich;. I entered this "zipcode" in the Weather widget, and it now works as expected. I think it is pretty self explanatory as to how the format works. You can ommit the trailing semicolon if you like.
[robg adds: I can't confirm the problem or the solution -- please post any comments one way or the other...]
When searching with the Spotlight Command-Space drop down menu, here's a quick way to select the top hit. Just hold the Command button down after searching, and Spotlight will select the top hit item, and you can then hit return to select and activate it. This is much easier than having to hit the down arrow to select the top hit.
[robg adds: In addition to choosing the Top Hit, you can use Command plus the arrow keys to quickly jump between the first hit in each category (Applications, Documents, Folders, etc.). Command-down and Command-up make it very simple to jump between the various categories of results...]
I noticed something when I tried to print. When I choose Print, it would take several seconds for the Print sheet to display -- so much so that the spinning cursor appeared. I checked the error log (/var/log/cups/error_log) and I saw this each time I open the Print dialog:
W [27/Apr/2005:10:26:09 -0400] emptyReceivePort:
mach_msg send returns: (ipc/send) invalid destination port
After poking around, I was able to get rid of those messages. Seems there a new CUPS configuration file, but it doesn't look like it replaced the existing one. This is what I did (in Terminal):
$ cd /etc/cups
$ sudo mv cupsd.conf cupsd.conf.mybackup
$ sudo cp cupsd.conf.default cupsd.conf
$ ps -ax | grep cups [note the process number]
155 ?? Ss 0:02.23 /usr/sbin/cupsd
$ sudo kill -HUP 155 (restart the CUPS system)
Now choosing print almost instantly drops the sheet down and there isn't an error generated.
[robg adds: I haven't tested this one, and there are no entries in my logs like that shown above -- probably because I'm running a clean install without a prior CUPS configuration file.]
Apple has introduced a new .plist file format in 10.4. You'll notice that you can no longer just edit a .plist file in TextEdit or other text editors. The reason for this is that the files are now binary rather than raw XML.
Luckily for us, there is a command line utility called plutil that can convert back and forth between the two formats. You can convert the .plist file you want to edit to XML format, edit it in TextEdit, then convert back to binary for use. To convert a binary .plist file to XML format for editing, type this in the Terminal:
plutil -convert xml1 some_file.plist
To convert an XML .plist file to binary for use:
plutil -convert binary1 some_other_file.plist
Replace some_file.plist and some_other_file.plist with the actual filenames, obviously...