Vim在滚动时保持光标位置

在滚动的时候,有没有办法在Vim / gVim中保持错误的位置? 类似于许多Windows编辑器。
我知道标记,并使用它们。 我也知道''。 标记(最后编辑位置),但寻找其他的想法。 我这样问,因为有时候我想把光标保持在某个位置,用鼠标滚轮滚动到另一个地方,然后按一个arow键或者某个东西让我回到那个位置。

不,vim是一个控制台应用程序,所以将光标置于屏幕外面是没有意义的(这可能会导致混淆)

另一种解决scheme, 从comp.editors的这个线程复述post:

Ctrl+o转到上一个光标位置, Ctrl+i转到下一个(如撤消/重做动作)

标记似乎是另一种解决scheme..

另外,使用标记。 商标以字母命名。 例如打字ma记住标记a下的当前位置。 要跳转到包含标记a的行,请键入'a。 到确切的位置使用`a。

小写字母标记是每个文件。 大写字母标记是全球性的; `A将切换到包含标记A的文件到准确的位置。

基本上ma ,四处移动,然后`a跳回来。

保罗build议的另一个select,

gi命令将Vim切换到插入模式,并将光标置于上次插入模式停止的位置。

你为什么不拆开窗户,看看你想看什么,然后closures拆分?

 :split 

要么

 :vsplit (if you want to split vertically) 

有时候可以避免在input文本之前跳转到标记 – gi命令将Vim切换到插入模式,并将光标置于上次停止插入模式的位置。

我在Vim中发现的唯一类似的行为:

z t “尽可能向下滚动屏幕而不移动光标”

z b “尽量滚动”。

如果可能, Ctrl + E “向下滚动一行”

如果可能, Ctrl + Y “向上滚动一行”

谷歌说,游标(因此当前行)必须在Vi中可见,所以你必须使用标记。

''(2个单引号)和''(2个后引号)也非常有用。 前者跳回到上一次跳转之前的行(例如,下一页)。 后者跳回到最后一跳之前的行列。