While some people think that iTunes has ballooned with too many features, others might find it lacking the specific features they need to tag files more efficiently, manage files or work with podcasts or videos.
But iTunes is one of Apple’s most flexible applications, offering a huge library of AppleScript commands and properties. AppleScript virtuoso Doug Adams has been running the Doug’s AppleScripts for iTunes website (dougscripts.com/itunes) for years, collecting scripts that he and others have written, and providing them for free. Here are some of the best AppleScripts that we’ve found on Doug’s site.
Note: To use any of these or other iTunes scripts, you’ll need to download them from dougscripts.com/itunes, then put them in the yourusername/Library/iTunes/Scripts folder. If there isn’t a Scripts folder in that location, you’ll need to create one first. Doug offers a great Download/Installation FAQ if you get stuck.
1. PDF Adder
This suite of scripts lets you add PDFs to iTunes and tag them the way you want. Add digital booklets for your music, or add any kind of PDF file for later syncing to an iOS device and reading on the go.
2. Search Wikipedia
If you want to get some information about the music you’re listening to, this script will perform a search of Wikipedia using the Song Name, Album, Artist or Composer tag of a selected or currently playing track. It can even look up info on music from a radio stream, if that music is tagged.
3. Have a Quick Look
Have you ever wanted to play a single track without playing the music following it in its playlist or in your library? Select a track, and run this script to play it using Quick Look. The Quick Look window will continue playing your media when you switch to another program, unlike Quick Look in the Finder. Or use this to view a PDF from your iTunes library without opening Preview.
4. Change Hidden iTunes Preferences
This AppleScript application lets you access a number of ‘hidden’ preferences that you can change in iTunes. Hide the Ping buttons, show a global Library playlist, use half-stars in ratings, and much more by simply checking a few boxes. You could change most of these preferences via iTunes itself at one point, but they were removed from the interface at various times.
5. Update Expired Podcasts
If you haven’t listened to a specific podcast in a while, iTunes displays a ! next to its name. Normally, you need to perform several clicks in iTunes to tell the app to download new episodes again. Running this script will do this for all your podcasts, saving you lots of clicks.
6. Embed Artwork
When you buy music from the iTunes Store, or when iTunes automatically downloads artwork for music you add to your library, that artwork is not embedded in your files, but is stored within your iTunes folder. If you move the music files to another computer, the artwork won’t display there. Running this script will copy the artwork and paste it into each track so it stays with the files.
7. Remove n Characters From Front or Back
I use this one a lot to clean up tags. When I rip classical CDs, they often contain the composer’s name at the beginning of the track names. I count how many characters there are, then run this script.
8. Search YouTube
As with the Wikipedia search script in No.2, this one will look up the current song and artist on YouTube to see if there are any related videos.
9. Albumize Selection
Depending on where you get your music, it may or may not be tagged correctly. Some sites where I buy music don’t include track numbers for the files I download, and this script takes files in the order you’ve set, then adds track numbers in the form ‘1 of n’, so your albums are sorted in the correct order.
This last one isn’t a script per se, and, unlike those listed above, is not free (it’s US$10, although you can try it out for free).
For those curious about their music listening habits, Spins shows lists of your most listened-to songs, artists, albums and more.
Not only will it scour your library to show totals, but a Live Spins palette will give you figures for the currently playing track as well.