Macのデスクトップ右端を飾る「通知センター」は、OS X Mountain Lionのとき登場。OS X Lion以来一般化した"iOSの成果物をMacに取り入れる"事例のひとつだが、約6年が経過した現在ではすっかりMacデスクトップに溶け込んだ感がある。
しかし、メニューバー右端の「三」ボタンをクリックすることはあまりないような……iPhone/iPadでは依存に近い状況にある通知機能だが、Macではどうもしっくりこない。なぜなのか。ひょっとすると、"MacにはMacらしい通知のありかた"があるからでは? そんな思い込み(?)のもと、Macの通知センターをカスタマイズする方法を紹介してみたい。
通知センターのしくみ
macOSの通知センターは、いくつかのプロセスにより実現されている。サービス「notifyd」が通知が届いたかどうかを監視し、/System/Library/CoreServicesに置かれた「NotificationCenter.app」によりダイアログや通知センターにその内容を表示する、というしくみが基本としてあり、CalendarNotification(カレンダーに登録したイベントをローカル通知する機能を持つ)などのプライベートフレームワークがそれを支えるという構図だ。
通知センターは常時オンにされているが、「おやすみモード」を有効にすることで一時的に無効化しておける。ただし、notifydなどのサービスは稼働したままで、完全なオフとはならない。おやすみモードが有効な時間を調整することで、実質的に無効化することは可能だが、完全停止させるにはLaunchAgentsの設定を変更しなくてはならない(第162回を参照)。
通知センターを必要なときだけオンにする方法
そもそも通知機能はiOSが発祥で、企業が販売促進の手段としてアプリで積極的に活用するなど、iOSとは切っても切れない関係にある。Macユーザの多くはiPhoneユーザでもあり、その辺りの事情はよくご存知だろう。そしてMacとiPhoneは、AirDropやiCloudなどApple IDを利用する機能/サービスのために、同一のApple IDでサインインしているはずだ。
ということは、iCloudメールが到着しても、カレンダーやリマインダーでイベントが発生しても、iPhone/iPadとMacの両方に通知が届くはず。アカウントを使いわけていないかぎり、FacebookやTwitterの通知も両方に届いていることだろう。数秒で通知のダイアログは消えるが、両方のデバイスから通知音やらバイブレーションが聞こえるのは、やや過剰な気がする。通知を受けるのはiPhoneを基本とし、必要なときだけMacでも受けられるのがベストではなかろうか。
そのようなニーズに応える設定はMacの通知機能に用意されていないが、「おやすみモード」を活用することで可能になる。まずはシステム環境設定「通知」パネルを開き、有効な時間を「22:00から21:59」など空白を1分になるよう設定、ほぼ1日中おやすみモードが有効になるようにしよう。そして通知が必要になったときは、optionキーを押しながらメニューバー右端の「三」をクリックする。これで、ふだんは(ほぼ)オフだが必要なときにはすぐに使える通知機能が手に入るはずだ。
通知ダイアログの"寿命"を延ばす
通知ダイアログはメールの受信や最新ニュースを知るきっかけになるが、確認不要なタイプの通知は4秒ほどで消えてしまうため、作業に集中しているときなどタイミング次第では見落としてしまうことがある。通知センターの「通知」タブを表示すればいい話とはいえ、あと1秒、2秒長く表示されていれば読めたのに、と考えたことはないだろうか?
そんなときは、以下のとおり通知センターのデフォルトデータベース(com.apple.notificationcenterui.plist)に「bannerTime」というプロパティを作成し、そこに通知ダイアログとして表示する秒数を登録する。設定できる範囲は1から25、「10」あたりに設定しておけば見落としはグッと減るはずだ。
$ defaults write com.apple.notificationcenterui bannerTime 10
※:初期値に戻すには「defaults delete com.apple.notificationcenterui bannerTime」を実行
残ってしまった設定ページを削除する
通知に対応したアプリをインストールすると、システム環境設定「通知」パネルにそのアプリ用の設定ページが追加され、どの通知スタイル(なし/バナー/通知パネル)を使用するか、通知を表示するかどうかといった設定を行える。
この設定ページは、アプリによってはアンインストール(/Applicationsフォルダからの移動・削除)を行うと自動的に消えるが、そのまま残ってしまうものもある。「通知」パネルに設定ページを削除するためのボタンはないため、存在を無視するしかない……。
と諦めてしまいがちだが、意外な方法で設定ページは削除できる。手順はかんたん、対象の設定ページを選択した状態で「delete」キーを押すだけだ。誤って「delete」キーを押してしまった場合は、そのアプリを起動すれば復活する(復活しないものもあるが)。悩む前に試してみよう。