回答:
tell application "System Events"
tell process "NotificationCenter"
set numwins to (count windows)
repeat with i from numwins to 1 by -1
click button "Close" of window i
end repeat
end tell
end tell
上記のコードをコピーしてAppleScriptエディターに貼り付けますアクセシビリティでスクリプトエディターを有効にします
Keyboard Maestroを使用してApplescriptを実行する別のオプションの詳細は、http://genuinecuriosity.com/unnotifyをご覧ください。
マップされているため、Command Option 0開いているすべてのアラートダイアログをクリアするためにヒットします。
基本的に、開いているすべてのアラート(通常は閉じる)の最初のボタンをクリックするApplescriptを作成し、すべてのアラートがクリアされるまでそれを行います。キーボードマエストロから直接Applescriptを使用するか(私の記事で説明されているように)、Automatorでサービスを作成できます(アクセシビリティのアクセス許可の要件により、これはもう少し複雑です)。
1つのボタンですべての通知をクリアする方法はわかりませんが、マウスをアプリのヘッダーの右に移動してそこに表示される小さなxボタンをクリックすると、1つのアプリのすべての通知をクリアできます。
それらをすべてクリアするには、マウスを一番上のアプリのxボタンに移動し、すばやくクリックすると、すべての通知が比較的すばやく削除されます。
これを行うAutomatorスクリプトを作成し、グローバルホットキーにマッピングすることになりました。
on run {input, parameters}
tell application "System Events"
tell process "Notification Center"
set theWindows to every window
repeat with i from 0 to number of items in theWindows
try
set this_item to item ((number of items in theWindows) - i) of theWindows
click button 1 of this_item
on error
-- nothing
end try
end repeat
end tell
end tell
end run
これは元々ヨセミテのものであり、そこでの答えは定かではありませんが、質問が3歳であることを考えると、Mojaveで同じものを探しているときに見つけたので、答えに言及したいと思いました見つかりました。
メニューバーの右にある3行をクリックすると、[今日] / [通知]タブのあるウィンドウが表示されます。[通知]タブを選択すると、[今日]の右側にある[X]をクリックして、特定の日のすべての通知をクリアできます。数回クリックすると、古いものがすべてクリアされます。
このSIMBLアプリはトリックをうまく行います。chuckhendo / NotificationClear:通知に「すべてクリア」ボタンを追加するSIMBLバンドル(https://github.com/chuckhendo/NotificationClear)
mySIMBLを使用してインストールするだけです。w0lfschild / mySIMBL:macOS用のSIMBLプラグインマネージャー( https://github.com/w0lfschild/mySIMBL)
インストールしたら、通知センターを開いて、下部の[クリア]をクリックするだけです。