¿Cómo emito MS-?¿A Emacs ejecutándose en iTerm en Mac OS Mavericks?

¿Cómo emito MS-?¿A Emacs ejecutándose en iTerm en Mac OS Mavericks?

Cuando presiono esa combinación de teclas, escucho una campana y veo 0Dcaracteres impresos en el búfer en lugar de ejecutar el comando vinculado a esa tecla (org-table-delete-column en este caso). M-<left-arrow>funciona bien sin embargo.

Después de investigar un poco, creo que M-<any-arrow>solo funciona porque iTerm está configurado para enviar ciertas secuencias hexadecimales al terminal para esas claves. Cuando creé un nuevo perfil sin esos enlaces, todas las M-<arrow>teclas provocaron que se imprimieran campanas y caracteres.

Entonces tengo algunas preguntas. En primer lugar, ¿cuáles son esas secuencias hexadecimales? ¿Qué secuencias necesitaría para que M-S-<left-arrow>se emitan correctamente? ¿Por qué iTerm no tiene todos estos ya definidos? Y, por último, ¿por qué los tenemos? ¿Por qué iTerm no puede simplemente enviar las teclas a medida que se presionan al terminal y hacer que funcionen como deberían, con la excepción de los acordes de teclas que necesitan iTerm y Mac OS X?

Respuesta1

Intente agregar estas líneas a ~/.emacs:

(define-key input-decode-map "\e[1;10A" [S-M-up])
(define-key input-decode-map "\e[1;10B" [S-M-down])
(define-key input-decode-map "\e[1;10C" [S-M-right])
(define-key input-decode-map "\e[1;10D" [S-M-left])

Utilice cat -vo C-ven un shell para ver las secuencias de escape.

información relacionada