AppleScript を作成して iCal にクエリを実行し、任意のカレンダーで特定の日付に取得したすべてのイベントを検索しようとしています。
特定のカレンダーのすべてのイベントに対して簡単なことを行う簡単なスクリプトを作成することから始めました。
tell application "iCal"
tell calendar "Reuniones"
set the_events to every event
repeat with an_event in the_events
-- do something with every event
set value to summary of an_event
end repeat
end tell
end tell
ただし、ループ内で複雑なことをしていなくても、この単純なスクリプトの実行にはかなりの時間がかかります (数秒)。残念ながら、実際のスクリプトの実行にはかなりの時間がかかります。
私は Applescript にあまり詳しくないので、パフォーマンスに深刻な影響を与えるばかげたことをしていると思います。
なぜこれを実行するのにそれほど時間がかかるのか、誰か説明してもらえますか? 誰かが私のコードを改善するために何かを提案できますか? ループ内の条件を使用して、イベントの日付の確認を開始します。(Automator アクションのように) 日付でイベントを検索する方法があるに違いないと思いますが、そのための「ネイティブな」方法を見つけることができませんでした ....
編集: Mac OS X Tiger (10.4) を使用しています。iCal の新しいバージョンでは、利用可能な操作のライブラリが改善されている可能性があります。