vi / vim abrumpt buffer movements within window
Not a complete answer, but maybe a lead. There's scroll
option. Help for that option reads, among other things:
{Vi is a bit different: 'scroll' gives the number of screen lines instead of file lines, makes a difference when lines wrap}