我最近发现,Vim的Ctrl+E和Ctrl+Y快捷键可以分别用一行步骤上下移动屏幕,而不需要移动光标。
你知道有什么命令可以让光标留在原地,但会移动屏幕,让光标所在的行变成第一行吗?(最后一行有一个命令将是一个很好的奖励)。
我可以通过手动按下适当次数的Ctrl+E(或Ctrl+Y)来实现这一点,但有一个命令可以以某种方式直接做到这一点会更好。
什么好主意吗?
我最近发现,Vim的Ctrl+E和Ctrl+Y快捷键可以分别用一行步骤上下移动屏幕,而不需要移动光标。
你知道有什么命令可以让光标留在原地,但会移动屏幕,让光标所在的行变成第一行吗?(最后一行有一个命令将是一个很好的奖励)。
我可以通过手动按下适当次数的Ctrl+E(或Ctrl+Y)来实现这一点,但有一个命令可以以某种方式直接做到这一点会更好。
什么好主意吗?
当前回答
输入vim并输入:
:帮助z
Z是用于重绘的vim命令,因此它将相对于您定位光标的位置重绘文件。您的选项如下:
z+ -将光标放在窗口顶部,并在行中第一个非空字符处重绘文件。
z——用光标在窗口底部重绘文件,并以行中第一个非空字符为单位。
z. -将光标置于窗口的中心,并以您行的第一个非空白字符重绘文件。
zt -用光标在窗口顶部重绘文件。
zb -用光标在窗口底部重绘文件。
zz -重新绘制文件,光标位于窗口的中心。
其他回答
我在过去使用过这些快捷键(注意:分开的键击,即点击z,放手,点击后续键):
Z t…或者…Z输入——>移动当前行到屏幕顶部
Z Z…或者…z。——>将当前行移动到屏幕中央
Z b…或…Z -——>将当前行移动到底部
如果不是很明显:
“enter”表示“返回”或“enter”键。
. 表示DOT或“句号”键(.)。
-表示连字符键(-)
无论如何,z避免了保存和关闭Vi的危险,因为如果打开了大写锁,则不小心键入ZZ。
更多信息::help scroll-cursor
您可以在光标移动命令前加上一个数字,这将重复该命令多次
10Ctrl+E将执行10次Ctrl+E而不是1次。
另外:
Ctrl-y将屏幕向上移动一行 Ctrl-e将屏幕向下移动一行 Ctrl-u移动光标和屏幕向上½页 Ctrl-d移动光标和屏幕下移½页 Ctrl-b将屏幕上移一页,光标移到最后一行 Ctrl-f向下移动屏幕一页,光标到第一行
Ctrl-y和Ctrl-e仅在光标要移出屏幕时才更改光标位置。
由www.lagmonster.org/docs/vi2.html提供
Zz -移动电流线到中间 屏幕上的 (小心zz,如果你不小心打开了Caps Lock,你会保存并退出vim!) Zt——移动电流线 到屏幕的顶部 Zb -移动 当前行到底部 屏幕
有时用K和J键滚动文本是有用的,所以我在.vimrc中有这个“滚动模式”函数(也绑定到zs)。
看到scroll_mode.vim。