4 votos

Mostrar el diálogo desde la línea de comandos (como hace xmessage)

Antecedentes

Me gustaría poder mostrar una ventana de notificación en OS X desde un script. El script se ejecutará en segundo plano, por lo que la notificación no debería ir al terminal, sino mostrarse en una ventana de diálogo.

Lo que he encontrado hasta ahora

xmessage

En Linux probablemente utilizaría xmessage o una de sus variantes para ello. Pero en OS X, iniciar el voluminoso servidor X sólo para esta tarea me parece excesivo y demasiado lento para mi gusto.

Diálogo del buscador

He encontrado una pregunta similar en este hilo del foro donde la respuesta "aceptada" sugería este comando:

osascript -e 'tell app "Finder" to display dialog "Hey!"'

Pero en mi OS X 10.7 El diálogo resultante no se muestra inmediatamente. En su lugar, el icono del Finder comienza a rebotar, y el diálogo se hace visible sólo después de hacer clic en el icono. Demasiados clics del ratón, demasiado perturbador.

Notificador

Hay un respuesta en Super User que sugiere una herramienta llamada terminal-notificador . Por desgracia, parece que sólo funciona para OS X 10.8 así que no ayudará en mi caso.

Pregunta

Entonces, ¿hay alguna herramienta, ya sea incluida en OS X 10.7 o de libre acceso, que permite mostrar un pequeño diálogo al usuario sin demasiada sobrecarga?

5voto

Fuzzy Purple Monkey Puntos 702

Una opción es decirle a un proceso en segundo plano como SystemUIServer que muestre el diálogo:

osascript -e 'tell application "SystemUIServer"
display dialog "message"
end
activate application (path to frontmost application as text)'

También se puede indicar a la aplicación frontmost que muestre un diálogo, pero no se muestra inmediatamente si la aplicación no responde. Si MPlayer OS X es frontmost, los diálogos de texto no aceptan ninguna entrada de teclado.

osascript -e 'tell application (path to frontmost application as text)
display dialog "message"
end'

3voto

Rei Vilo Puntos 111

Prueba con

tell application "System Events" to display dialog "Plug the Digispark into the USB port." buttons {"OK"} with icon caution

Probado en OS X 10.8.2

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X