Beim Umblättern (Scrollen) in vim bewegt sich der Standardcursor nach oben zum oberen Bildschirmrand oder nach unten zum unteren Bildschirmrand. Ich hoffe, dass die Position auf dem Bildschirm unverändert bleibt, dh nur der Text verschoben wird nicht die Position des Cursors (relativ zum Bildschirm).
Wie erreicht man es? Bitte um Rat, vielen Dank im Voraus!
你指这些?
ctrl + y 向上一行
ctrl + e 向下一行
ctrl + u 向上半屏
ctrl + d 向下半屏
ctrl + b 向上一屏
ctrl + f 向下一屏
可以看看这个stackoverflow的回答
http://stackoverflow.com/questions/3458689/how-to-move-screen-without-moving-cursor-in-vim
下面那个ToggleScrollMode的函数不错, 我猜应该符合你的需求
如果无法安装插件,可以尝试打开vim的相对行号显示,翻页后依据相对行号快速跳转。
.vimrc 中添加
其中这个 7 你自己设置
你可以在滚动结束后zz使所在行对齐到正中,类似于emacs的<C-l>
ctrl-d 向下翻半屏,光标不会移动
ctrl-f 向下翻一屏,会标会移动。
shift-m 将光标移动到屏幕中间,可以在 ctrl-f 翻屏后使用