Kirk had a tip about using Google to search the iTunes Store in his Macworld column today. Here's a script for that:
set searchText to text returned of (display dialog "Search the iTunes Music Store for:" default answer "")
tell application "Finder" to open location "http://www.google.com/search?q=site:itunes.apple.com " & searchText
Launch and enter some search text and click the "OK" button. A new window with Google results will be displayed by your default browser.
iBooks is built without AppleScript support so I'm still using iTunes to manage my PDFs. But if you need to programmatically add a filelike a PDFto iBooks you can use this trick, where filePath is an alias:
using terms from application "iTunes"
tell application "iBooks" to open filePath
end using terms from
Unfortunately, you can't edit the tags in iBooks. Nor does iBooks seem to use any existing PDF metadata except "Author". Strangely, in fact, it uses the PDF's file name (without extension) for "Title" instead of checking the PDF's metadata for "Title". And while I'm making wishes, "Keyword" metadata could be parsed for a Category and perhaps a way could be found to use the PDF "Subject" metadata as a description tag somewhere.
iBooks, which seems to me to be a pretty basic database manager, stores much more metadata for other types of books (have a look at ~/Library/Containers/com.apple.BKAgentService/Data/Documents/iBooks/Books and the Books.plist there) so it doesn't seem like it would be much of a bother to accommodate PDFs a little better.
There are no shortcut keys to select the Music, Podcast, TV Shows, and other libraries. But you can use AppleScript to create some. Here's how:
A Correspondent via the AppleScript Users email list detected a problem with a script snippet of mine regarding grabbing the artwork data from an iTunes track with iTunes 9 and Snow Leopard. That very day I also had updated Export Artwork with a fix for a similar issue. At any rate, the snippet resides in the Spare Parts section and, to be more exact, the updated snippet with the fix is here.