2011-12-03 9 views
15

Puedo obtener la parte inferior de la ventana para mostrar líneas parciales al configurar display = lastlineEn vim, ¿cómo desplazarse, de forma continua, mediante líneas de pantalla cuando está habilitada la opción de ajuste?

¿Hay una opción similar que permita que las líneas parciales se muestren en la parte superior de una ventana?

Sin esta funcionalidad, mi vim aún se desplaza hacia abajo (hacia abajo) en más de 1 línea de pantalla cuando la línea de archivo superior que se muestra está envuelta en varias líneas de pantalla.

Por ejemplo, en el siguiente escenario, cuando presiono C-E, mi vim se desplazará hacia abajo en 3 líneas de pantalla. ¿Hay alguna manera de hacer que se desplace por solo 1 línea de pantalla de modo que solo las dos primeras palabras de la línea 1 estén ocultas, pero las 3 palabras siguientes sigan apareciendo? Esto será muy útil para editar largos párrafos de texto.

Nota: Me refiero al desplazamiento de toda la pantalla, no al movimiento del cursor.

 
------------------ 
1 abcdefg abcefg 
    abcasdfsa sdfsf 
    sdfc 
2 adfadf 
3 adfadf 
4 adfadf 
------------------ 
+4

Le sugiero que primero acepte algunas respuestas a sus preguntas anteriores, que harán que todos estén más interesados ​​en su problema. – deviousdodo

+0

posible duplicado de [vim moviéndose con hjkl en líneas largas (líneas de pantalla)] (http://stackoverflow.com/questions/4946421/vim-moving-with-hjkl-in-long-lines-screen -lines) (o ver http://stackoverflow.com/search?q=vim+move+screen+lines) – sehe

+0

@draevor gracias por el consejo. No noté que había una marca antes :) – neuron

Respuesta

7

No creo que sea posible hacer exactamente lo que quiere.

He aquí la descripción que tengo cuando escribo :help CTRL-E

               CTRL-E 
CTRL-E      Scroll windows [count] lines downwards in the buffer. 
          Mnemonic: Extra lines. 

Nótese que si bien se dice que se desplaza la ventana, también menciona que se desplaza líneas en el búfer. Realmente solo está desplazando una línea (ajustada) a la vez.

No creo que haya otra forma de evitar esto.

puedo conseguir la parte inferior de la ventana para mostrar las líneas parciales mediante el establecimiento de pantalla = lastline

Creo display=lastline es una falsa solución - que todavía desplazarse por la misma cantidad, sólo hay más visibles.

La verdadera manera de resolver esto es desactivar envolver:

:set nowrap 

Editar

Algunos temas relacionados que muestran que una característica de "desplazamiento a través de líneas de la pantalla" está bajo consideración , pero tomará un tiempo para implementarse:

+1

Esto presenta un problema si tienes una línea que es tan larga que cuando está enrollada no cabe en tu ventana:/(un caso de borde, pero aún así ... – Rook

+4

@ldigas: me he encontrado con eso muchas veces , así que no sé cuánto de un caso fronterizo realmente. Creo que el 'display = lastline' resuelve parcialmente el problema de visualización, pero ciertamente no el problema de usabilidad. –

+0

@ MerlynMorgan-Graham ¡Gracias por la información! Tal vez debería pegarse a otro editor para la edición de párrafos largos. – neuron

1

Para cualquiera que lea este tema:

This thread en el StackExchange VI ofrece una solución ligeramente Hacky (pero utilizable) para el desplazamiento visual a través de las líneas ajustadas.

Cuestiones relacionadas