カウントダウンがカレンダーの予定と違う理由
カレンダーが答えるのは「今日は何があるか」です。カウントダウンが答えるのは別の問いで、「あとどれくらいか」。カレンダーはこれが苦手です。予定は3か月先のスクロールの向こうにあり、ウィジェットが表示するのは大切なものではなく次のもので、どちらも、開かなければ本当に欲しい数字を教えてくれません。
イベントカウントダウンアプリは、ずっと小さな発想です。自分で選んだ1つの日付と、残り時間が、常に見えている。Awaitは、それをmacOSのメニューバーとデスクトップウィジェットから実現し、すでにカレンダーにある日付にも対応します。以下はすべて、配布中のバージョンの機能です。
ピン留めしたカウントダウン
ステータス項目には、カウントダウンのタイトルと残り時間が並び、後者は日付が近づくにつれて細かさが変わります。1週間より先は単純な日数で、86d。1週間以内は1d 4h、1日以内は4h 20m、1時間以内は20mとなり、最後の1分は秒で刻みます。その瞬間が来ると、ラベルはチェックマークになります。
この段階的な変化こそ、メニューバーに置く意味のすべてです。3か月先のカウントダウンは、静かな1つの数字であってほしく、同じカウントダウンも最後の1時間は正確であってほしいもので、そのために表示を切り替えなくて済むべきです。それでも多いと感じるなら、残り時間の表示をオフにして、タイトルだけにすることもできます。
ピン留めは任意です。何もピン留めしなければ、メニューバーには次に来るものが表示され、1つ過ぎるたびに自動で次へ切り替わります。
その後ろのリスト
メニューバーを占めるカウントダウンは1つだけですが、Awaitが管理するのは好きな数だけです。メニューバーをクリックすると、400×470ポイントのポップオーバーに、すべてのリストが開きます。

各行には、イベントのアイコン、タイトル、日付、残り時間が載り、別の行をピン留めすると、メニューバーの表示が入れ替わります。メニューバーにあるものは、ポップオーバーの先頭にある専用の「次のイベント」カードに出ます。大きな文字の時間(日、時間、分と、日付が近づくにつれて変わる)、その隣に次の単位、そして待ち時間のどれだけが過ぎたかを示すバーです。
読み取れるカレンダー
Awaitはカレンダーを読み取りますが、読み取るだけです。何も追加、編集、削除せず、何もアップロードしません。イベントはマシン上で読まれ、そこに留まります。

読み取りはmacOS自身のカレンダー層であるEventKitを通すので、システム設定 > インターネットアカウントに追加したものは、すでにカバーされています。Google、Outlook、Exchange、iCloudが、すべて同じ形で届きます。Awaitの中でのサインインはなく、どこにもカレンダーの2つ目のコピーはありません。
イベントは、手入力したカウントダウンと同じリストに、日時順に、それぞれのカレンダーの色の四角の上に並びます。取り込まれるのは、自分で選んだ範囲(1日、3日、1週間、1か月)に収まるものだけなので、仕事のカレンダーが、このアプリを入れた理由の4つの日付を埋もれさせることはありません。それより先のものは、上のピッカーにあり、検索もそこでできます。
知っておくとよい点が3つあります。繰り返しのイベントをピン留めするとシリーズがピン留めされるので、来週の回が自動で引き継がれ、ピン留めが古くなりません。リストから閉じるのは削除ではなく(そのイベントはAwaitのものではないため)、元に戻すのはピッカーからです。そして、カレンダーのイベントには自分で選んだアイコンを付けられ、Awaitが保存するのは、そのイベントについてこれだけです。
許可のダイアログでは、カレンダーへのフルアクセスを求めますが、これはAwaitが必要とする範囲を超えています。macOS 14には読み取り専用の段階がなく、書き込みのみのアクセスでは何も読めないので、カレンダーを読むには全体を求めるしかありません。すでに「追加のみ」を許可している場合、Awaitは空のリストを見せず、そう伝えてアップグレードを提案します。
メモ、リンク、そして見つけてくる会議
どのカウントダウンにも、メモとリンクを付けられますが、どちらも埋めなければならない欄ではありません。メモは、付箋に書くようなことです。ゲートの番号、ドアの暗証番号、持ち物。行の3行目の文字としてではなく、ツールチップとして表示されるので、8件のカウントダウンのリストは、8件のリストのままです。リンクは行にボタンが付き(ポインタを置いたとき、「次のイベント」カードでは常時)、そのボタンこそが要点です。その瞬間が来たときに実際にすることは、たいてい何かを開くことだからです。
カレンダーのイベントについては、Awaitがリンクを自動で埋めます。会議の招待には、ほぼ必ず部屋が含まれていますが、その場所はカレンダーのプロバイダごとにばらばらです。GoogleはMeetのリンクをイベントのURL欄に入れ、Zoomの招待はメモに文章の塊を貼り付け、場所の欄に部屋をそのまま入力する人も大勢います。そこでAwaitは3つすべてを、強い手がかりから順に読みます。人が会議に使うサービスを指すURL欄が最優先で、次に場所かメモの本文で見つかった既知のサービス、それからどこかを指すURL欄です。会議かもしれず、議事資料かもしれませんが、的外れでも関連のあるリンクは、何もないよりましです。それでもなければ、自由記述の最初の通常のリンクで、自前でホストされた部屋もこれで数えられます。
文章のスキャンはNSDataDetectorを通します。macOSがリンクをタップできるようにするのと同じ仕組みなので、実際の招待に溢れている末尾の句読点、折り返された行、余計な山括弧は、すでに処理されています。
会議の時刻が来ると、通知には参加ボタンが付くので、カウントダウンは、どのみち向かうはずだった場所で終わります。
デスクトップウィジェット
メニューバーが持てるカウントダウンは、常に1つだけです。残りのすべてが収まる場所が、デスクトップウィジェットです。

サイズは3つです。小は主役だけで、数字、その単位、タイトル、カウントダウンがどこまで進んだか、そして到来する日付です。中は左にそれを置き、右に次の3つのカウントダウンを、それぞれが元になったカレンダーの色とともに並べます。これは、メニューバーが構造上できない唯一のことです。大は主役を上部の全幅に置き、その下に次の4つを積みます。
自動のままなら、カードはメニューバーに従います。ピン留めしたものがそのまま表示され、何もピン留めしていなければ次に来るものを表示して、1つ過ぎるたびに自動で引き継ぎます。カードごとに専用のイベントを設定することもできるので、1つのウィジェットに飛行機を置き、別のウィジェットがメニューバーに従う、といった使い方ができます。また、システムだけでなくAwait独自の外観設定にも従うので、ダークに固定したアプリが、ダークのポップオーバーの隣に白いカードを置くことにはなりません。
知っておくとよい点が2つあります。カウントダウンは絶対的な日付に向かって動くので、アプリがスナップショットを一度公開すれば、Awaitを終了したままでも、ウィジェットは何日も正しく数え続けます。起こす必要があるのは、カウントダウンの集合が変わるときだけで、時計が進むときではありません。そして会議の数分前になると、カードが参加を提案します。中と大では時刻の横のボタンとして、小ではカード全体として。小さなウィジェットにはタップの対象が1つしかなく、いちばん使われるサイズから参加する方法がなくなるのを避けたからです。
タイムゾーン、分、アイコン
イベントを手で追加するのは短いフォームで、その2つの項目が、このアプリが存在する理由です。

どのイベントにも、自分のタイムゾーンがあります。 イスタンブール発のフライトは、ベルリンにいてもいなくても、イスタンブールの時間でカウントダウンされます。ほとんどのカウントダウンアプリが静かに間違える点です。瞬間を現在のゾーンで保存してしまい、移動した日に数字が数時間ずれます。まさに、頼りにしていた日です。
分までのカウントは任意です。 誕生日は日付で、14:00のローンチは瞬間です。エディタにはスイッチがあり、カウントダウンはそれに合わせて表示を整えます。
各イベントには、SF Symbolsのアイコンも付けられ、これのおかげで8件のカウントダウンのリストが、8行の文字ではなく、見分けやすいリストになります。カレンダーのイベントにも付けられます。
先へ進む繰り返し
イベントには繰り返しのルールを付けられます。毎日、選んだ曜日の毎週、毎月、毎年。繰り返しのカウントダウンに到達すると、ひとりでに次の回へ先送りされるので、毎週の定例会や毎月の請求書の日付は、一度入力すれば、あとは自分で保たれます。ルールには間隔(2週間おき、3か月おき)や、日付または回数での終了も設定できます。
ルールは、カレンダーが表現できることのごく一部に、意図的に絞ってあります。時刻、毎月なら日、毎年なら日付は、追加の欄ではなくイベント自身の日付から決まるので、合わせる日付は2か所ではなく1つで、食い違うことがありません。
ゼロになったときに起こること
答えは3つあり、すべてに1つの設定ではなく、カウントダウンごとに選びます。

お祝いは、落ち着いた全画面のアニメーションを再生します。見ていた1台だけでなく、接続されたすべてのディスプレイで再生されるので、2台目のモニタがその瞬間を飲み込むことはありません。紙吹雪が舞い、短いチャイムを一緒に鳴らすこともできます。どちらも設定 > 一般にあり、紙吹雪は初期値でオンで、視差効果を減らすをオンにするとオフになります。数秒後に自動で消えます。
通知は静かな版で、通常のローカル通知であり、画面を占領しません。2つは独立していて、両方を同時にオンにできます。
どちらもなしが3つ目の答えで、新しいカウントダウンの初期値です。日付が、ただメニューバーに到来します。すでに憂鬱な締め切りには、おそらくそれが正解です。
カレンダーのイベントにも同じ2つがあり、設定は回ごとではなくシリーズ単位で保存されるので、今週の回に設定したから、来週の回もお祝いされます。
ゼロが最初の知らせである必要もありません。イベントは事前にもお知らせでき、5分前、15分前、1時間前、1日前、1週間前の好きなだけ、または3日前や2時間前のような自分で決めた前倒しの時間で、それぞれ通常の通知として届きます。
カウントアップ、ショートカット、バックアップ
すべての日付が先にあるとは限りません。イベントをカウントアップに切り替えると、日付からの経過時間を数えます。新しい職場での1年、何かをやめてからの日数、といったものが、専用のカウントアップのセクションに並びます。記念日をオンにすると、100日目、500日目、1000日目と、毎年の記念日に通知が届きます。
Awaitはショートカットからも動きます。カウントダウンを作る、次は何かを尋ねる、あるまでの時間を尋ねる、といったことができ、SiriとSpotlightも、設定なしで同じ操作を提供します。
すべては1つの小さなファイルに入っていて、設定 > データから、JSONのバックアップとして書き出し、このMacでも新しいMacでも読み込めます。
あえてしないこと
カレンダーには書き込みません。 何も作成、移動、削除せず、そのため、「このカウントダウンをカレンダーに追加」というボタンがどこにもありません。
同期もiPhoneアプリもありません。 すべてはMac上の小さなファイルです。
カウントダウン自体にネットワークは一切不要です。飛行機へのカウントダウンは機内でも動きます。カウントダウンアプリについてわざわざ言うのは少し滑稽ですが、すべてのアプリがそうとは限りません。アプリが送信するのは当社のサーバーに限られ、カウントダウンが含まれることはありません。ライセンスの確認、アップデート、設定、匿名の利用状況とクラッシュ診断です。カレンダーを読み取ることでも、これは変わりません。読み取りはmacOS経由でマシン上で行われ、どの部分もどこにも送られません。
料金と、ほかに見ておきたいもの
AwaitはmacOS 14以降で、Apple SiliconでもIntelでも動き、容量は約10 MBです。買い切り$3.99で、カードもメールも不要の14日間トライアルがあります。詳しい仕様はAwaitのページにあります。
Awaitは日付までを数えます。今目の前にある作業のかたまりを数えたいなら、それは別の道具です。Anchoredは、同じメニューバーに1つのタスクとそのタイマーを置き、Mac用メニューバータスクタイマーで解説しています。小さな道具の幅広い一覧は、入れておきたいMacユーティリティアプリにあります。
