Someone brought this up a few years ago but there was no response…
In pretty much every other text editor, when you page down, you’re actually moving the viewport down by the number of lines currently displayed and the cursor location remains constant relative to the viewport. I too find it very annoying that page up/down moves the cursor to the top/bottom of the viewport but only shifts the viewport enough to show the cursor. This makes page up/down very confusing because if you page down then up again, the cursor is back to the original line but the viewport isn’t.
Anyway… I have a fix for text-editor.js that makes page up/down behave as most people would expect. If the current behavior is a bug, I’ll submit a pull request against text-editor.js. If it’s a feature, I guess I’ll create a plugin.