翻页的时候固定光标,现代编辑器都不会这么做吧。看起来是个简单的需求,真要实现就麻烦了。
首先你要区分翻页和其它操作(比如 上/下/左/右)。
假设上面的问题都理清了,当你翻到第 N 页,看见想要找的内容,喜出望外,习惯地按下了 j 键直奔该行,打算复制回原点粘贴,却触发了任意门,两手空空直接回到了原点。。。其实也是有解的:1. 输入 :<行号>
, 2. 鼠标点击该行(一会键盘一会鼠标,有点人格分裂)。。。不过这样一来,原点位置又丢了。
改进的方案是对翻页进一步划分:
- 需要回到原点 (第一次翻页的时候设置原点的位置)
- 无需回到原点
这样就可以不管翻了多少页,做了什么操作,都能一键回到原点了。
在我看来,是解决了一个问题,制造了更多麻烦(额外的操作/快捷键/注意力)。一旦忘记设置原点位置就跳到爪哇国了。
另一个比较可行的方案是,像现代编辑器一样,只在鼠标滚轮的时候固定光标,但是这样你除了回原点还是不能有其它操作。
为什么不把这个问题交给一些能自动记录跳转位置的扩展呢,比如 evil
,几次 evil-jump-backward
就回来了(你不会向下翻几十页吧),还可以 forward 反向操作,并且不受 buffer 和窗口的限制。