¿Cuál es correcto, iTerm o Terminal? (Opción como Meta o Esc+)

Cada uno proporciona la capacidad de cambiar el comportamiento de Option: como Normal , Meta o solo en iTerm, Esc+ . Sin embargo, un fenómeno interesante es que, para tener accesos directos al estilo de Emacs en la línea de comandos, se requieren configuraciones contradictorias :

  • iTerm: Esc+
  • Terminal: Meta

Ejemplos de teclas de acceso rápido habilitadas son Option-bpara retroceder una palabra y Option-favanzar una palabra.

iTerm no funciona si también se establece en Meta . Entonces, parece que entienden que "Meta" significa cosas diferentes.

Mi pregunta: ¿Cuál tiene razón ? ¿Es Meta o Esc+ lo que permite este comportamiento similar a Emacs? O tal vez, ambos tienen razón, pero asignan las claves de manera diferente.

La metaclave de Emacs es un atributo de la clave. Emacs también acepta un prefijo ESC para el mismo pero luego son dos teclas

Respuestas (1)

Ni es correcto ni incorrecto.

El código de control ESC es parte de las secuencias de escape ANSI que se usaban para enviar códigos de control a las primeras terminales como la VT-100. Emacs usó muchas de estas secuencias Esc para controlar cómo interactuaba el usuario con el programa.

La tecla Meta apareció por primera vez en 1970 en los teclados SAIL (Stanford Artificial Intelligence Labs), las computadoras Lisp del MIT y, en última instancia, Sun Microsystems (mi alma mater en lo que respecta a las empresas de tecnología). Apareció como una llave de diamante.

La Meta es una tecla modificadora similar (en función) a la tecla Comando de Apple. En los teclados modernos, se asigna a ALT (Opción) o la tecla de Windows en los teclados de PC. Si una computadora carece de la tecla Meta, puede enviar la secuencia ESC.

Cualquiera de los dos está bien, iTerm (IMO) parece adoptar un enfoque más global para conectarse a varias máquinas * nix donde Terminal es Apple/OpenStep (desde que Apple las adquirió) y usa una tecla Meta.

Al final, es con lo que te sientes más cómodo: Esc o Meta/Opción

Gracias, como usuario final, los tengo configurados como se indicó anteriormente, lo que me produce el mismo comportamiento. Es decir, iTerm se comporta de manera diferente (al menos no respeta estos accesos directos) cuando también está configurado en Meta .