1 votos

Applescript para mover el foco a la ventana activa o a la siguiente

Estoy tratando de implementar una configuración de estilo "Comando-pestaña" que funciona sólo dentro de un espacio específico. Para la mayoría de las aplicaciones, "Ctrl-F4" que es "mover el foco a la ventana activa o a la siguiente" funciona correctamente, pero para emacs/aquamacs no lo hace (ya que la pulsación de la tecla es absorbida por la aplicación). (Preferencias del Sistema->Teclado->Accesorios->Teclado muestra esta opción). Quiero que esto vaya entre las ventanas que he organizado en un espacio como relevante, es decir, mi R script, parcelas en X11 y en formato png/pdf.

Puedo ejecutar un applescript arbitrario con fastscripts u otras aplicaciones al pulsar una tecla. Por lo tanto, veo dos opciones:

  1. Indicar al gestor de ventanas que realice directamente el movimiento del foco, SIN pasar por la pulsación de una tecla
  2. Utiliza una pulsación de tecla, pero comprobando que la ventana activa es la de acuamacs. Al encontrar aquamacs, obtener una lista de los procesos en el espacio actual y pasar al siguiente. (comprobar si hay aquamacs parece acertado ya que el comportamiento por defecto es probablemente más rápido que esta búsqueda)

Buscar estos comportamientos es difícil, y la documentación de applescripts es bizantina para un novato, así que no veo cómo lograr ninguno de ellos.

2voto

Johnsyweb Puntos 45395

Mira 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 sigue sin ayudar, puedes ponerle una trampa:

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

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