Odpowiedzi:
Możesz przypisać skrót klawiaturowy do takiego skryptu :
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"
Ale to nie działa. Ponieważ musisz przesunąć wskaźnik myszy nad powiadomieniem, w przeciwnym razie przycisk odpowiedzi nie pojawi się.
click button "Reply" of window 1
może działać, jeśli zmieniłeś styl alertu z banerów na alerty.
Oto skrypt, aby to zrobić za pomocą JavaScript dla automatyzacji Yosemite i jego mostu Objective-C.
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();
Jeśli chcesz uruchomić to w powłoce (np. Alfred nie obsługuje jeszcze JavaScript), możesz użyć tego jednowierszowego, który wykonuje skrypt poprzez 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
Możesz przypisać ten skrypt do skrótu za pomocą dowolnego narzędzia do automatyzacji. Używam Alfreda , FastScripts również działa.
Musisz zezwolić narzędziu automatyzacji, którego używasz do sterowania komputerem Mac , w przeciwnym razie mysz się poruszy, ale skrypt nie będzie mógł kliknąć „Odpowiedz”. W moim przypadku dodałem tam Alfreda.