¿Cómo enviar F9-F12 al programa curses que se ejecuta dentro de Terminal.app?

10

Mac OS X usa F9-F12, y no quiero deshacerme de ellos, solo quiero poder enviar F9-F12 ocasionalmente a programas dentro del terminal (principalmente F9 / F10).

Algunos programas como la mcsecuencia de soporte Escape 9 como sinónimo de F9, etc., pero no es universal.

¿Hay alguna forma de hacerlo?

taw
fuente

Respuestas:

9

fn-Cmd-F9 funciona como F9 en Terminal.app en mi MacBook Pro, ejecutando Mountain Lion 10.8.

LarsR
fuente
En mi MacBook Air con Mavericks, es fn-Option-Fkey, no fn-Command-Fkey.
Mark Reed
En MacBook Pro con Yosemite, funciona fn-Cmd-F9; fn-Opt-F9 solo inserta tilde. (Lo estoy usando dentro de emacs.)
Capítulo
5

Puede ejecutar un AppleScript (por ejemplo, envolviéndolo en un Servicio en Automator con la acción Ejecutar AppleScript , sin entrada en Terminal ) que ejecuta lo siguiente:

tell application "System Events" 
    tell expose preferences to set the properties of the all windows shortcut to {function key:F1}
    key code 101 # press F9
    tell expose preferences to set the properties of the all windows shortcut to {function key:F9}
end tell

Esto asignará temporalmente un acceso directo diferente a lo que está vinculado a F9, presione F9 y revertirá la configuración. Los nombres de configuración son los siguientes para las otras preferencias de Exposición:

all windows shortcut
application windows shortcut
show desktop shortcut
dashboard shortcut 

Los códigos clave para F9 a F12 son los siguientes:

F9 101
F10 109
F11 103
F12 111

Puede asignar métodos abreviados de teclado a servicios en Preferencias del sistema »Teclado» Métodos abreviados de teclado »Servicios Deberá aprender otro método abreviado (p Command-F9. Ej. ), Pero al menos puede presionar una tecla para iniciar la acción. Para accesos directos con las teclas F, consulte el último párrafo de esta respuesta .


Alternativamente, puede configurar una aplicación de teclas de acceso rápido / macro como Butler para presionar la secuencia de escape que obtiene cat -val presionar una de las teclas F mientras desactiva los accesos directos.

$ cat -v
^[[20~^[[21~^[[23~^[[24~

Estos son F9 a F12, en orden.

En Butler, se ve así para F9:

ingrese la descripción de la imagen aquí

Presioné Ctrl-[, [, 2, 0, ~para esa secuencia. En mi diseño de teclado, ~es Shift-backtickpor eso que el modificador Shift es visible. Funciona de todos modos.

Configure un acceso directo y puede comenzar a presionarlo para obtener la secuencia de escape:

ingrese la descripción de la imagen aquí

Funciona mc, y no recuerdo otro programa CLI con teclas F en este momento. Pero no es la mcsecuencia de escape específica, por lo que probablemente funcionará en otros.


Alternativamente, muchas aplicaciones de línea de comando entienden Esc, 1(secuencia) que significa F1, hasta el Esc, 0significado F10.

Daniel Beck
fuente
¡Ah, buenos días, señora almádena! Permítame el placer de presentarle al Sr. Nut ...
Robino
2

Puede deshabilitar el atajo de teclado por F12debajo de:

preferencias de teclado> atajos de teclado

usuario319498
fuente
Esto no fue suficiente para mí, pero está en la línea correcta.
Robino
0

Agregaré que si está en una computadora portátil, en realidad no está usando F9-F12, está presionando "próxima canción", "silencio de audio", "bajar volumen" (ejemplo de macbookpro reciente). Para presionar realmente F9-F12, mantenga presionado 'Fn' mientras usa la misma tecla.

En el escritorio, si tiene cosas como Exposé, Spaces, etc., asignadas a las teclas de teclado F9-F12 reales, me resulta útil asociar esas funciones con botones de mouse adicionales (por ejemplo, uso el 'par de botones laterales' de el Mighty Mouse para activar Exposé) o los bordes de la pantalla (por ejemplo, tengo 'pantalla en espera' en la parte superior izquierda), pero esto es realmente un asunto subjetivo.

Lucas404
fuente
1
Apagar esto es lo primero que hago en cada Mac nueva. Exponer etc. F9 es siempre F9, nunca la siguiente canción.
taw
0

Este es el proceso de dos pasos que usé para obtener CoRD (Escritorio remoto para Mac):

  1. Preferencias del sistema> Teclado> Teclado> Marque "Usar todas las teclas F1, F2, etc. como teclas de función estándar"
  2. Preferencias del sistema> Teclado> Accesos directos> Desmarque "Mostrar escritorio", "Mostrar panel"

El primer paso es lo que @taw está hablando en uno de los comentarios; consigue que las teclas de función f1-f10 funcionen. El segundo paso evita que las pulsaciones de teclas f11 y f12 sean interceptadas por OSX.

Robino
fuente