Réponses:
Vous pouvez attribuer un raccourci clavier à un script comme celui-ci:
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"
Mais ça ne marche pas. Parce que vous devez déplacer le pointeur de la souris sur la notification, sinon le bouton de réponse n'apparaîtra pas.
click button "Reply" of window 1
peut fonctionner si vous changez le style d'alerte des bannières en alertes.
Voici un script pour le faire en utilisant JavaScript pour l'automatisation de Yosemite et son pont 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();
Si vous souhaitez l'exécuter dans un shell (par exemple, Alfred ne prend pas encore en charge JavaScript), vous pouvez utiliser ce one-liner qui exécute le script via 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
Vous pouvez affecter ce script à un raccourci à l'aide de n'importe quel outil d'automatisation. J'utilise Alfred , FastScripts fonctionne aussi.
Vous devrez autoriser l'outil d'automatisation que vous utilisez pour contrôler votre Mac , sinon la souris se déplacera, mais le script ne peut pas cliquer sur «Répondre». Dans mon cas, j'y ai ajouté Alfred.