A menudo encuentro que desplazar una página completa es demasiado desorientador, media página demasiado, pero un cuarto de página es lo correcto. Actualmente lo hago simplemente presionando las teclas de flecha.
¿Cómo desplazo el 25% de la página hacia arriba y hacia abajo fácilmente?
cursor-movement
scrolling
Louis Hong
fuente
fuente
Respuestas:
Tal vez ctrldy ctrlupodría ser lo que estás buscando. Por defecto, mueven la mitad de la pantalla.
De
:h CTRL-D
:Lo que significa que la primera vez que desea desplazarse en una ventana puede hacerlo XXctrlddonde XX es el 25% del número de líneas en su ventana. Como se establece
scroll
en el valor XX, puede usar ctrldy ctrlumover el 25% de la pantalla.Además, creo que
:h scrolling
puede ser interesante para ti.Editar
Y aquí hay otra solución con una función y algunas asignaciones para agregar a su
.vimrc
:La función obtendrá la altura de la ventana actual y, de acuerdo con su parámetro, desplazará la pantalla hacia arriba o hacia abajo un cuarto de la altura.
Las asignaciones llamarán a la función, la primera para subir y la segunda para bajar.
Por supuesto, puede cambiar
<up>
y<down>
algunas otras teclas si desea mantener el comportamiento predeterminado de las teclas de flecha.fuente
ctrl-E
yctrl-Y
en las asignaciones, porque a). entonces tiene accesos directos separados para desplazamiento de 1/2 página y 1/4 de página. si). el comportamiento dectrl-U
/ctrl-D
es consistente y no depende de si ha utilizado previamente la asignación.let key="^U"
la parte entre comillas dobles representa el código clave dectrl+u
. Entonces, si copió la función en vim, coloque el cursor en el primer hit de comillas doblesci"
para modificar el contenido de las comillas y luego pulsectrl+v
seguido dectrl+u
lo mismo en la línealet key="^D"
.let key="^Y"
lugar delet key="^U"
. Creará el mismo comportamiento pero sin afectar la'scroll'
configuración.Puede usar ctrley ctrlypara mover la página una línea hacia arriba y hacia abajo.
Luego, si desea 20ctrleque se mueva +/- 25%, puede usarlo y eso lo moverá 20 líneas hacia abajo.
Aquí también hay una buena pregunta explicada que es similar a la suya: /programming/3458689/how-to-move-screen-without-moving-cursor-in-vim
fuente
He variado el enfoque statox para que se desplace de manera más consistente sobre los linewraps. Si desea un cuarto de paso, cambie 0.618 nuevamente a 0.25 o lo que sea.
fuente
Si desea una buena respuesta general y no un 25% exacto, puede factorizar el recuento normal de líneas en una página dividir por 25 y establecer algunas asignaciones del sistema. Por ejemplo, si normalmente tiene aproximadamente 100 líneas en una pantalla a la vez, el 25% de eso son 25 líneas, por lo que podría establecer una asignación de teclas en algo como su J mayúscula y K para moverse rápidamente hacia arriba y hacia abajo 25 líneas
Si solo desea saltar al cuarto de marca del archivo completo, en modo normal simplemente escriba:
fuente
noremap J 25j
codifica el valor de25
modo que, por ejemplo, cuando divide horizontalmente una ventana de 100 líneas, su mapeo en realidad navegará el 50% de las nuevas ventanas. Sobre su segunda opción:25%
, no sabía que existía, pero de mis pruebas parece que coloca el cursor en una posición basada en la primera línea: si tengo un búfer de 100 líneas y quiero avanzar un 25%, escribir:25%
me traerá en la línea 25 sin importar dónde estaba mi cursor. También, ¿podría poner el tema de ayuda que describe esta función que no puedo encontrar en el documento?:h N%
:-)