Antworten:
Sie können einem Skript wie folgt eine Tastenkombination zuweisen :
tell application "System Events" to click window 1 of process "Notification Center"
tell application "System Events" to click button "Reply" of window 1 of process "Notification Center"
aber es funktioniert nicht. Da Sie den Mauszeiger über die Benachrichtigung bewegen müssen, wird die Antwortschaltfläche nicht angezeigt.
click button "Reply" of window 1
funktioniert möglicherweise, wenn Sie den Warnungsstil von Bannern in Warnungen geändert haben.
Hier ist ein Skript, um dies mit Yosemites JavaScript for Automation und seiner Objective-C-Bridge zu tun .
ObjC.import("CoreGraphics");
// Notification only detects hover when moving from outside its borders
// over it, so first go to (0, 0).
$.CGWarpMouseCursorPosition({x:0 , y:0});
mainDisplayWidth = $.CGDisplayPixelsWide($.CGMainDisplayID());
$.CGWarpMouseCursorPosition({x:mainDisplayWidth - 50, y:81});
Application("System Events")
.processes["Notification Center"]
.windows()[0]
.buttons["Reply"]
.click();
Wenn Sie dies in einer Shell ausführen möchten (z. B. unterstützt Alfred JavaScript noch nicht), können Sie diesen Einzeiler verwenden, der das Skript ausführt über osascript
:
echo 'ObjC.import("CoreGraphics"); $.CGWarpMouseCursorPosition({x:0 , y:0}); mainDisplayWidth = $.CGDisplayPixelsWide($.CGMainDisplayID()); $.CGWarpMouseCursorPosition({x:mainDisplayWidth - 50, y:81}); Application("System Events") .processes["Notification Center"] .windows()[0] .buttons["Reply"] .click(); ' | osascript -l JavaScript
Sie können dieses Skript mit einem beliebigen Automatisierungstool einer Verknüpfung zuweisen. Ich benutze Alfred , FastScripts funktioniert auch.
Sie müssen zulassen , dass das von Ihnen verwendete Automatisierungstool Ihren Mac steuert . Andernfalls bewegt sich die Maus, aber das Skript kann nicht auf "Antworten" klicken. In meinem Fall habe ich dort Alfred hinzugefügt.