Tal vez ctrldy ctrlupodría ser lo que estás buscando. Por defecto, mueven la mitad de la pantalla.
De :h CTRL-D
:
Desplazar la ventana hacia abajo en el búfer. El número de líneas proviene de la opción 'desplazamiento' (predeterminado: media pantalla).
Si se da [cuenta], primero configure la opción 'desplazamiento' en [cuenta].
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
:
function! ScrollQuarter(move)
let height=winheight(0)
if a:move == 'up'
let key="\<C-Y>"
else
let key="\<C-E>"
endif
execute 'normal! ' . height/4 . key
endfunction
nnoremap <silent> <up> :call ScrollQuarter('up')<CR>
nnoremap <silent> <down> :call ScrollQuarter('down')<CR>
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.