MarsEdit の Daniel Jalkut 氏から、Usable Keychain Scripting の新しいベータ版が 公開 されました。変更点は:
- Leopard に対応
- Intel Mac 上での問題に対応
…のようです。
ご存じない方のために、これが何かというと、AppleScript からキーチェーンにアクセスするためのアプリです。
同じ機能を持つものとしては、Apple 純正の Keychain Scripting がありますが、これのトンチンカンっぷりは、Notes:AppleScript(Studio)でキーチェーンを使う に書いてあります。
Daniel 氏も、これが Leopard で改善されると期待していたものの、実際にはそうならなかったため、アップデートに踏み切ったようです。
前述の記事に書いてある通り、キーチェーン項目の編集(新規作成・変更・削除)に対応していない ことは残念ですが、これでなんとか安心して、既存のキーチェーン項目にアクセスすることが可能になります。
キーチェーン項目を取得するとき、純正の Keychain Scripting と違って、問題なくフィルタ参照が使えるだけではなく、他のスクリプタブル・アプリがうまく対応していないように思われる、より細かい条件のフィルタリング を行うことができます:
tell application "Usable Keychain Scripting"
tell current keychain
get generic items whose description begins with "Kaku" <--
end tell
end tell
whose description … の部分がフィルタ参照で、条件に合う(プロパティを持った)オブジェクト(ここではキーチェーン項目)を取り出しているのですが、他のスクリプタブルなアプリでは、ここでイコールの条件( whose description *is* … )以外を使うと、エラーになってしまう場合が多い気がします(違う?)。
whose description begins with … といった書き方が、AppleScript の文法として間違っている、というわけでは(恐らく)ないと思うので、こういう構文にきちんと対応する、というところに、開発者の意識の高さが現れている、と言えるのではないでしょうか。さすがです。(褒め過ぎか)