Applescript para mover el foco a la ventana activa o siguiente

1

Estoy intentando implementar una configuración de estilo de "pestaña de comando" que funciona solo dentro de un espacio específico. Para la mayoría de las aplicaciones, "Ctrl-F4" que es "mover el enfoque a la ventana activa o la siguiente" funciona correctamente, pero para emacs / aquamacs no es así (ya que la aplicación absorbe la pulsación de tecla). (Preferencias del sistema - > Teclado- > Accesos directos- > Teclado muestra esta opción). Quiero que esto pase entre las ventanas que he organizado en un espacio relevante, es decir, mi script R, gráficos en X11 y en formato png / pdf.

Puedo ejecutar un applecript arbitrario con fastscripts u otras aplicaciones en una pulsación de tecla. Por lo tanto veo dos opciones:

  1. Dígale al administrador de la ventana directamente que realice el enfoque de movimiento, SIN pasar por una pulsación de tecla
  2. Use una pulsación de tecla pero verifique aquamacs como la ventana activa. Al encontrar aquamacs, obtenga una lista de los procesos en el espacio actual y muévase al siguiente. (la comprobación de aquamacs parece acertada ya que el comportamiento predeterminado es probablemente más rápido que esta búsqueda)

La búsqueda de estos comportamientos es difícil, y la documentación de los manuscritos es bizantina para un novato, por lo que no veo cómo lograr ninguno de ellos.

    
pregunta Daniel Lawson 30.09.2015 - 18:29

1 respuesta

1

Vea si invocar con Eventos del sistema no anula el alcance de emacs / aquamacs.

tell application "System Events" to key code 48 using {command down}

Si eso todavía no ayuda, puedes atraparlo:

tell application "System Events"
    set theName to name of the first process whose frontmost is true
    if theName contains "emacs" then
        set frontmost of item -2 of (every process whose visible is true) to true
    else
        key code 48 using {command down}
    end if
end tell
    
respondido por el jweaks 01.10.2015 - 09:54

Lea otras preguntas en las etiquetas