日付の変更を通知するAppleScriptです。
この手のScriptを組もうとしたら、一定間隔で日付(current date)を確認する ぐらいが安全な方法として考えられます。on idleハンドラを利用して、一定間隔でタイマ割り込みを利用するのが「定番」でしょう。ただ、そのためにはApplet形式で書き出して実行する必要があります。
最近のAppleScript実行環境は、ごく一部の例外をのぞいてCocoaの機能を呼び出せるので、Cocoaの機能でタイマー割り込みを行って、一定間隔で日付データを確認することもできます。こちらは、。一度実行すればメモリ上にオブジェクトが常駐するので、Script Editorの実行が停止していても、起動さえしていれば日付変更時に通知を受信できます。
タイマー割り込み以外の方法を調べてみたら、こんなSystem Notificationが利用できたので、まとめておきました。
本Scriptが機能するのは、「AppleScript最新リファレンス v2.8対応」で明記した「システム通知の受信が有効なAppleScript実行環境」のみです。
AppleScript名:日付変更通知.scptd |
— – Created by: Takaaki Naganoya – Created on: 2023/11/12 — – Copyright © 2023 Piyomaru Software, All Rights Reserved — use AppleScript version "2.4" — Yosemite (10.10) or later use framework "Foundation" use framework "AppKit" use scripting additions set dOvs to current application’s NSNotificationCenter’s defaultCenter() dOvs’s addObserver:me selector:"dateChanged:" |name|:(current application’s NSCalendarDayChangedNotification) object:(missing value) on dateChanged:anObj display dialog "Update" end dateChanged: |
More from my site
(Visited 39 times, 1 visits today)