Tecla de acceso rápido para desplazarse por otra ventana sin cambiarla

1

Emacs tiene una buena característica en el enlace clave CMv ( scroll-other-window en Emacs Lisp), lo que hace que la otra ventana en un marco con dos ventanas se desplace (no he probado más dos ventanas) sin cambiar a la otra ventana. ¿Hay alguna forma de obtener una funcionalidad equivalente con las ventanas de nivel superior de Mac OS X (es decir, ventanas que no son de Emacs)?

En particular, estoy interesado en desplazar las ventanas de Chrome y iTerm, pero una solución más general sería genial. Supongo que tendría que instalar una aplicación de teclas de acceso rápido de algún tipo, pero no soy reacio a eso.

    
pregunta echristopherson 07.04.2013 - 21:57

2 respuestas

1

Descubrí que BetterTouchTool puede enviar claves arbitrarias a una aplicación determinada, así que lo configuro para enviar Page Up y Page Down a Chrome. No parece ser tan general como me gustaría (es decir, no puede enviar eventos a la última aplicación seleccionada, y no puede enviar eventos reales), pero ciertamente lo hará.

    
respondido por el echristopherson 11.04.2013 - 18:58
2

No conozco ninguna forma de obtener la segunda aplicación o ventana más avanzada con AppleScript, aparte de algo como esto:

delay 0.3 -- time to release modifier keys if the script is run with a shortcut
tell application "System Events"
    set p to process 1 where it is frontmost
    set visible of p to false
    delay 0.01
    key code 121 -- 121 = page down, 116 = page up
    set frontmost of p to true
end tell

Sin embargo, hace que las ventanas ocultas y activadas parpadeen.

Con los navegadores puedes usar window.scrollBy ():

tell application "Safari" to tell document 1
    do JavaScript "window.scrollBy(0,(window.innerHeight-20))"
end tell

tell application "Google Chrome" to tell active tab of window 1
    execute javascript "window.scrollBy(0,(window.innerHeight-20))"
end tell

Otra opción sería simular presionando ⌃F4, retroceder o retroceder página, y ⌃⇧F4, por ejemplo, usando KeyRemap4MacBook :

<autogen>__KeyToKey__ KeyCode::CURSOR_UP, ModifierFlag::FN | ModifierFlag::CONTROL_L | ModifierFlag::NONE, KeyCode::F4, ModifierFlag::CONTROL_L, KeyCode::PAGEUP, KeyCode::F4, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L</autogen>
<autogen>__KeyToKey__ KeyCode::CURSOR_DOWN, ModifierFlag::FN | ModifierFlag::CONTROL_L | ModifierFlag::NONE, KeyCode::F4, ModifierFlag::CONTROL_L, KeyCode::PAGEDOWN, KeyCode::F4, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L</autogen>

También provoca un error visual, y ⌃F4 a veces selecciona ventanas de aplicaciones ocultas.

    
respondido por el user495470 12.04.2013 - 11:29

Lea otras preguntas en las etiquetas