Cree un comando para enfocar una ventana específica desde cualquier lugar en el sistema operativo

8

Al desarrollar para la web, tiendo a saltar de un lado a otro entre mi editor de texto y el navegador mucho. Me gustaría establecer un método abreviado de teclado en el nivel del sistema operativo que me permita saltar a una ventana específica y definible cada vez. Aún mejor sería la capacidad de emitir y decirle a esa aplicación que ejecute algo, pero lo guardaré para más adelante.

¿Hay tecnologías disponibles que me permitan hacer esto? Debe haber algo entre C y AppleScript que me permita crear este tipo de interacción. ¿Alguien sabe por dónde empezar?

Gracias.

    
pregunta Thomas 28.12.2011 - 06:40

4 respuestas

1

Deberías darle una oportunidad a Automator. Podría "Grabar" un nuevo servicio (que luego puede publicar para todas las aplicaciones y asignar un atajo de teclado), que hace clic en la aplicación desde el Dock. De hecho, podría agregar más acciones y realizar su "dígale a esa aplicación que ejecute algo".

He intentado crear uno (que es relativamente inútil pero funciona) que hace clic en Correo en mi Dock, luego hace clic en el icono obtener correo nuevo en la barra de herramientas. Diversión;)

Se adjunta la foto del resultado de Automator:

UtilicéelbotónGrabarenlaesquinasuperiorderechayluegorealicélasacciones(hiceclicenelíconodelDockdelcorreo,luegoenelíconoObtenercorreonuevodecorreoenlabarradeherramientas,luegohiceclicen"Detener Grabación"). Tenga en cuenta que seleccioné "El servicio recibe [no entrada]" en el primer cuadro combinado, ya que no estaba interesado en ninguna entrada.

Esto le brinda múltiples posibilidades para tener un par de servicios que van de un lado a otro a su TextEditor y su navegador.

Automator se encuentra utilizando Spotlight y escribiendo Automator (también ubicado en /Applications/Automator.app)

En este caso, he creado un nuevo "Servicio" pero es probable que puedas escapar creando "scripts". No estoy seguro de cuál sería más rápido aunque. Experimentar. Automator es tu amigo.

    
respondido por el Martin Marconcini 28.12.2011 - 12:15
4

Podrías hacer algo como esto con AppleScript:

tell application "Terminal"
    activate
    windows where name contains "bash"
    if result is not {} then set index of item 1 of result to 1
end tell

O usando los eventos del sistema:

tell application "System Events" to tell process "Terminal"
    set frontmost to true
    windows where title contains "bash"
    if result is not {} then perform action "AXRaise" of item 1 of result
end tell
    
respondido por el user495470 30.04.2014 - 11:52
1

Uso BetterTouchTool para configurar diferentes métodos abreviados de teclado o gestos de trackpad en Mac OS X. Una de las acciones que puede iniciar es Ejecutar comando de terminal

Por lo tanto, en la configuración del comando, proporciono lo siguiente:

osascript -e 'tell application "NameOfTheApplicationHere" to activate'

Aquí hay un ejemplo de las preferencias de BetterTouchTool:

    
respondido por el devmake 26.04.2014 - 22:32
1

Tuve muchos problemas para que esto funcionara con iTerm2. Aquí está la solución de comando único:

  osascript -e 'tell application "System Events" to tell process "iTerm2"' \
            -e 'set frontmost to true' \
            -e 'if windows is not {} then perform action "AXRaise" of item 1 of windows' \
            -e 'end tell'
    
respondido por el cmcginty 16.03.2017 - 07:13

Lea otras preguntas en las etiquetas