AppleScriptなんて、iMac G5を買うまで知らなかったのですが、Mac用のスクリプト言語。しかも、多くのアプリケーションで、バッチ処理用のインターフェースが用意されているみたい。ただし、自然言語っぽく、苦手な感じですが、何とかかんとか。
妻からの要望で、「iTunesで、特定のアーティストの楽曲を抜いたプレイリストを作る」というスクリプトを組んでみました。で、作ってから、Cocoaを使えば、Javaからでもできたことに気づくorz。
しかし、AppleScriptは面白い。たとえば、WebベースのiTunesコントローラーとかも、Javaで作れるはず(Perlのは、Mac OS X HACKSに載ってますね)。理論上は、ケータイから、自宅のiTunesを操作するという意味のないことも可能です。また、いろいろなアプリケーションが対応しているので、他にも楽しいことができそう。思いつかないけど。
まず、作るためには(補完も何もしてくれない)スクリプトエディタを起動します(Macintosh HD > アプリケーション > AppleScript > スクリプトエディタ)。んで、コードを書いて、保存するだけ。iTunesに組み込む場合は、Macintosh HD > ユーザ > {自分} > ライブラリ > iTunes > Scripts というフォルダを作って、スクリプトを突っ込んでおくと、メニューにAppleScriptマークが出て、直接呼べるようになります。この場合は、"without some artists"という名前で保存してあります。
問題点は、かなり遅いこと(このスクリプトは、そうでもないですが。G5 1.8MHzで4000曲が10秒以内)。アーティストの一覧を取り出して並べかえるとかやっていると、5分以上かかります。
以下のスクリプトで、"Artists A"の部分を、「iTunesで管理しておきたいけど、できれば聞きたくないアーティスト」に変えてください。なお、新しくライブラリに曲が追加されたのはハンドリングできないので、都度、再作成してください。これを応用すれば、逆に特定のアーティストだけのプレイリストを作ったり、特定のジャンルを抜くとかもできるはず。環境は、iMac G5 1.8MHz、 Mac OS X 10.3です。
