Respuestas:
Puede asignar un método abreviado de teclado a un script como este:
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"
Pero no funciona. Debido a que tiene que mover el puntero del mouse sobre la notificación, o el botón de respuesta no aparecerá.
click button "Reply" of window 1
podría funcionar si cambia el estilo de alerta de banners a alertas.
Aquí hay un script para hacer esto usando el JavaScript de Yosemite para Automatización y su puente 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 desea ejecutar esto en un shell (por ejemplo, Alfred aún no admite JavaScript), puede usar este one-liner que ejecuta el script a través de 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
Puede asignar este script a un acceso directo utilizando cualquier herramienta de automatización. Estoy usando Alfred , FastScripts también funciona.
Tendrá que permitir que la herramienta de automatización que está utilizando controle su Mac , de lo contrario, el mouse se moverá, pero el script no puede hacer clic en 'Responder'. En mi caso, agregué a Alfred allí.