Peut ctrld- être et ctrlupourrait être ce que vous recherchez. Par défaut, ils déplacent la moitié de l'écran.
De :h CTRL-D
:
Faites défiler la fenêtre vers le bas dans le tampon. Le nombre de lignes provient de l'option 'scroll' (par défaut: un demi-écran).
Si [count] est donné, définissez d'abord l'option 'scroll' sur [count].
Ce qui signifie que la première fois que vous voulez faire défiler une fenêtre, vous pouvez faire XXctrldoù XX est le 25% du nombre de lignes de votre fenêtre. Comme il définit scroll
la valeur XX, vous pouvez ensuite utiliser ctrldet ctrlupour déplacer 25% de l'écran.
De plus, je pense que cela :h scrolling
pourrait être intéressant pour vous.
Éditer
Et voici une autre solution avec une fonction et quelques mappages à ajouter à votre .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 fonction obtiendra la hauteur de la fenêtre actuelle et, en fonction de son paramètre, fera défiler l'écran vers le haut ou vers le bas d'un quart de la hauteur.
Les mappages appellent la fonction, la première à monter et la seconde à descendre.
Bien sûr, vous pouvez modifier <up>
et <down>
utiliser d'autres touches si vous souhaitez conserver le comportement par défaut de vos touches fléchées.