Desplazarse en la terminal (OS X) cuando se ejecuta tail -f y ssh-ed en una máquina produce algunos caracteres extraños

Desplazarse en la terminal (OS X) cuando se ejecuta tail -f y ssh-ed en una máquina produce algunos caracteres extraños

Estoy conectado a una máquina remota y estoy ejecutando tail -f. Cada vez que me desplazo hacia arriba o hacia abajo usando el trackpad, aparecen algunos caracteres extraños, como

OB^[OB^[OB^[OB^[OB^[OOB^[OB^[OB^[OB^[OB^[O

Esto no solía suceder antes y no me permite desplazarme hacia arriba para ver los registros anteriores. ¿Por qué sucede y cómo puedo desactivarlo?

Respuesta1

TL;DR: Verifique la configuración del menú Ver->Mostrar/Ocultar pantalla alternativa. Es posible que esté en "modo de pantalla alternativa". O intente usar la tecla MAYÚS cuando se desplaza para obtener el otro comportamiento de desplazamiento.

^[es la representación imprimible de Control-leftbracket, también conocido como el carácter de escape.Infocmprevela que ^[OBes la secuencia de escape xterm para la tecla de flecha hacia abajo ( ^[OAes la secuencia de flecha hacia arriba). Terminal emula xterm y traduce el desplazamiento del mouse en secuencias de teclas de flecha.

Encontré algunas discusiones pasadas sobre el uso del mouse en Terminal:

Pero se trata de versiones anteriores de OSX, y parece que Terminal ha cambiado en esta área con el tiempo.Este artículohabla sobre cómo funciona en Yosemite, pero se queda un poco corto en detalles técnicos. El resto de esto es lo que encontré jugando con Terminal en Yosemite.

El terminal tiene dos modos para manejar el desplazamiento del mouse:

  1. En un modo, el desplazamiento hace que el terminal se desplace por la ventana gráfica, por lo que puede ver el búfer de desplazamiento hacia atrás del terminal (las líneas que se han desplazado fuera de la parte superior de la pantalla). Obtienes una barra de desplazamiento de OSX cuando te desplazas por el terminal.
  2. En el otro modo, el desplazamiento hace que el terminal envíe secuencias de flechas hacia arriba y hacia abajo. Es de esperar que el programa que se ejecuta en la terminal pueda manejarlos.

Puede alternar temporalmente entre modos manteniendo presionada la tecla MAYÚS mientras se desplaza. Por ejemplo, mientras la terminal muestra un símbolo del sistema, desplazarse desplazará la ventana de la terminal, mientras que Shift-scroll recorrerá el historial de comandos de bash.

La terminal también proporciona una función llamadapantalla alternativa. Los programas de pantalla completa como vimo lesspueden cambiar el terminal a una pantalla alternativa para mostrar su propio contenido. Cuando sale de dicho programa, el terminal vuelve a la pantalla principal. Menciono esto porque el comportamiento de desplazamiento de Terminal puede cambiar en la pantalla alternativa.

Normalmente, el primer comportamiento de desplazamiento es el comportamiento principal y debe presionar MAYÚS para obtener el segundo comportamiento. Pero vaya a Terminal->Preferencias->Perfiles->Teclado. En la parte inferior hay una casilla de verificación denominada "Desplazar pantalla alternativa". Si esa casilla está marcada, el comportamiento de desplazamiento se invierte en la pantalla alternativa. Cuando está marcada, el segundo comportamiento de desplazamiento se convierte en el predeterminado para la pantalla alternativa y debe presionar MAYÚS para obtener el primer comportamiento.

Entonces, por ejemplo, desde la línea de comando, desplazar el mouse le permite ver el búfer de retroceso del terminal. Pero comienza vima editar un archivo, cambia a la pantalla alternativa y, de repente, al desplazarse con el mouse se mueve el cursor. Que es lo que quieres dentro de vim.

Llegando a su problema, parece que su terminal muestra la pantalla alternativa. Hay una opción de menú para cambiar (Ver->Mostrar/Ocultar pantalla alternativa). O algo que estás ejecutando es poner el terminal en modo de pantalla alternativa. ¿Quizás estás usando screeno tmuxalgo así? Como solución alternativa, puede intentar utilizar la tecla MAYÚS para obtener el comportamiento de desplazamiento que desea. O puede desmarcar esa casilla de verificación.

Respuesta2

Cambié la emulación de mi terminal a vt100 de xterm-256color. Hice esto en Preferencias => Perfil => Avanzado "Declarar terminal como:" menú desplegable.

información relacionada