2012-10-01 25 views
5

Me gusta un margen de desplazamiento de alrededor de 8 o menos. Esto significa que el búfer comenzará a desplazarse cuando el cursor se encuentre dentro de las 8 líneas de la parte superior o inferior. Sin embargo, este esquema no funciona bien con los búferes de eshell y ansi-term, búferes isql o cualquier búfer REPL que se pueda usar con emacs. En cualquiera de esos búferes, cuando uno hace algo, inmediatamente desplaza el búfer hacia arriba de modo que haya 8 líneas entre la parte inferior del búfer y la línea de entrada, lo que lo torna incómodo en el mejor de los casos, inutilizable en el peor, para usar cualquier terminal buffer en emacs, dependiendo de la situación.Emacs, desplazamiento suave, desplazamiento-margen y eshell

Ningún búfer parece reconocer la variable de margen de desplazamiento a menos que sea global. Entonces, si bien puedo establecer la variable a diferentes valores con ganchos en diferentes modos, afecta a todos mis búferes abiertos.

Digamos que estoy editando algunos códigos. Decido hacer algunas cosas en un caparazón. Mis ganchos de modo de shell establecen el margen de desplazamiento en 0 (para que puedan ser utilizables). Luego, el margen de desplazamiento se establece en 0 para todos los almacenamientos intermedios, lo que hace que sea difícil desplazarse en mis búferes de codificación. Pero si abro un nuevo búfer de codificación, volveré a establecer el margen de desplazamiento en 8. Entonces mis búferes de shell son incómodos o inutilizables porque desplaza inmediatamente 8 espacios cada vez que obtienen el foco o muestran la salida de un comando.

¿Hay alguna solución a este problema, aparte de mantener un margen de desplazamiento de 0, globalmente, para todos los búferes?

+3

¿Está utilizando [variables locales de búfer] (http://www.gnu.org/software/emacs/manual/html_node/elisp/Buffer_002dLocal-Variables.html#Buffer_002dLocal-Variables) en sus anzuelos? – rwb

+0

¡No! Eso parece hacerlo. Usar make-local-variable en trabajos de margen de desplazamiento. ¡Gracias por señalarme en la dirección correcta! – Jones

Respuesta

Cuestiones relacionadas