Existe-t-il un raccourci clavier dans OS X Mavericks pour une réponse rapide lorsqu'une notification iMessage apparaît?

14

Je n'ai pas trouvé efficace de déplacer le pointeur de la souris sur la notification et de cliquer à chaque fois sur le bouton de réponse .

Je me demandais donc s'il y avait un raccourci clavier pour une réponse rapide au lieu d'utiliser la souris ou le trackpad.

ylorn
la source

Réponses:

1

Vous pouvez attribuer un raccourci clavier à un script comme celui-ci:

tell application "System Events" to click window 1 of process "Notification Center"
Lri
la source
1
J'ai essayé cela en utilisant Keyboard Maestro. Mais cela fait simplement apparaître la fenêtre Message au premier plan, plutôt que de répondre rapidement après avoir cliqué sur le bouton de réponse. Y a-t-il un script qui peut cliquer sur ce bouton? Merci!
ylorn
Et aussi, j'ai essayé quelque chose comme 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.
ylorn
@ylorn Je n'utilise pas les messages, mais je pensais que cliquer sur une notification répondrait au message. click button "Reply" of window 1peut fonctionner si vous changez le style d'alerte des bannières en alertes.
Lri
0

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.

meeee
la source