masilla y pantalla y búfer de desplazamiento hacia atrás [cerrado]

38

Cuando uso la pantalla dentro de una sesión de masilla, parece que no puedo usar el búfer de desplazamiento de masilla para mirar lo que se acaba de desplazar de la pantalla. En cambio, solo veo lo que estaba sucediendo en la sesión de masilla justo antes de mi pantalla de ejecución.

¿Que me estoy perdiendo aqui? Me gusta poder desplazarme hacia atrás, y no quiero usar la funcionalidad de la pantalla para mirar el búfer pasado; la rueda de desplazamiento de mi mouse no tiene ganchos en la pantalla y no espero que lo tenga.

¡Gracias!

Chris
fuente

Respuestas:

40

También puede consultar las Preguntas frecuentes de la pantalla que permiten una especie de comportamiento híbrido:

Resumen: agregue la línea a su archivo .screenrc:

termcapinfo xterm ti @: te @

Referencia ( Preguntas frecuentes sobre masillas )

El emulador de terminal de PuTTY siempre ha tenido la política de que cuando se usa la 'pantalla alternativa', no se agrega nada al desplazamiento hacia atrás. Esto se debe a que los tipos habituales de programas que usan la pantalla alternativa son cosas como editores de texto, que tienden a desplazarse mucho de un lado a otro en el mismo documento; entonces (a) llenarían el scrollback con una gran cantidad de texto desordenadamente inútil, y (b) contienen su propio método para que el usuario regrese al bit en el que estaba interesado. Generalmente hemos encontrado que esta política cumple Lo correcto en casi todas las situaciones.

Desafortunadamente, la pantalla es una excepción: usa la pantalla alternativa, pero todavía es útil que el scrollback de PuTTY continúe funcionando. La solución más simple es ir al panel de control de Características y marcar 'Desactivar el cambio a la pantalla de terminal alternativa'. (Consulte la sección 4.6.4 para obtener más detalles). Alternativamente, puede indicarle a la pantalla que no use la pantalla alternativa: las preguntas frecuentes de la pantalla sugieren agregar la línea 'termcapinfo xterm ti @: te @' a su archivo .screenrc.

KnipSter
fuente
Un conjunto de soluciones mucho mejor.
Zanchey
16

Para desplazarse hacia atrás, presione ^A( Ctrl-A, o lo que sea la secuencia de control de su pantalla si la reasignó) y luego Esc. Esto le permitirá mover el cursor hacia arriba y hacia abajo. PgUp/ PgDnte permitirá desplazarte hacia arriba y hacia abajo dentro de la pantalla.

La razón de esto es la forma en que la pantalla maneja el búfer de desplazamiento hacia atrás. La pantalla siempre dibuja el área de texto completo y tiene su propio backbuffer que debe controlar con la pantalla. Esto es similar al uso de programas, como vi o joe, que ocupan toda el área de texto y proporcionan su propio búfer: desplazarse hacia arriba en su emulador de terminal solo da basura, pero desplazarse hacia arriba dentro de esos programas le da el resultado deseado.

Andrew Scagnelli
fuente
Entonces, la única forma en que podría usar la rueda de desplazamiento de mi mouse (está bien, ¡ soy tan vago!) Es si la reasigno para enviar de alguna manera [tecla de escape de la pantalla] y luego ESC arriba y abajo? Uf, eso es demasiado trabajo ...
Chris
@chris: si estás usando masilla, ya deberías tener tus manos en el teclado. Si tiene una computadora portátil, intente ver si puede reasignar algunas teclas que no usa con tanta frecuencia para PgUp / PgDn.
Andrew Scagnelli
muchas veces está viendo una salida de comando larga en masilla, y es más conveniente desplazarse hacia adelante y hacia atrás con la rueda que con el teclado.
Elazar Leibovich
2

Eso se debe a cómo funciona la pantalla. La pantalla realiza una actualización dinámica de todo el área de texto, en lugar de presionar nuevas líneas en la parte inferior de la pantalla, lo que a su vez empuja la línea superior hacia el área de desplazamiento hacia atrás. Redibuja toda la pantalla cuando aparece una nueva línea, lo que evita que más datos entren en desplazamiento hacia atrás. El mismo problema existe en 'menos' cuando no se usa la pantalla.

sysadmin1138
fuente
No puedo decir que lo haya notado con menos, pero eso es probablemente porque siempre estoy dentro de la pantalla para empezar. ¡Gracias por los detalles de cómo y por qué!
Chris
1

La pantalla con Putty scrollback funciona automáticamente en Solaris 10. Parece estar haciendo lo que KnipSter dijo de manera predeterminada a pesar de que no tengo un archivo .screenrc. El problema con este enfoque es que, si desconecta y vuelve a conectar, no hay búfer de desplazamiento en Putty y debe recurrir al uso del desplazamiento de Screen como lo describe Scagnelli.


fuente
La pantalla viene con solaris 10 en estos días? ¿Es una versión con masaje solar o es lo que obtienes de GNU? Esto es realmente interesante porque funciona de esta manera en este caso específico. Gracias por la info!
Chris