命令CTRL-U
可以向上翻滚半屏,但是可以通过设置scroll选项来控制这个命令翻滚的行数。例如命令:set scroll=10
可以使得Vim一次翻滚10行。也可以通过改变CTRL-U命令的参数来改变翻滚的行数。例如命令2CTRL-U
可以使得Vim一次向上翻滚两行。
当光标到达窗口上端或下端时,窗口要发生滚动。我们可以通过设置scrolljump选项来控制这个翻滚行数的大小,默认情况下为1。例如命令:set scrolljump=5
将翻滚量设为5。与其相类似的就是sidescroll选项,所不同是后者控制水平的翻滚。
通常情况下,窗口翻滚是在光标到达窗口顶部或底部时才发生的。我们可以通过scrolloff选项来控制光标与顶部或是底部有多少距离时发生。例如命令:set scrolloff=3
将值设为3,当光标与顶部距离为三行时发生翻滚,且翻滚后光标与底部相距三行。
有时我们希望将指定的行放在屏幕顶端。先将光标放在指定的行上,然后输入z<Enter>
,这一行就会出现在屏幕的顶端了。我们还可以利用参数将指定的行置于屏幕顶端。例如命令8z<Enter>
就是将第八行置于屏幕顶端。这个命令将指定的行置于顶端,并将光标移动到本行第一个非空白字符处。如果要将指定行置于顶端,并将光标保持在一行的当前位置不变,可以使用zt
命令。
如果要将指定的行放在屏幕底部,可以使用命令z-
或是zb
。所不同的是,前者将光标放在这一行中第一个没有空白符的字符处,而后者是保持光标的位置不变。
命令zz
或是z.
可以将指定的行放在屏幕的中部。这两个命令的不同就是,前者保持光标的位置不变,而后者是将光标置于第一个非空白的字符处。
CTRL-E | 向下动滚一行 |
CTRL-D | 向下翻滚半屏 |
CTRL-F | 向下滚动一屏 |
PageDown | |
CTRL-U | 向上翻滚半屏 |
CTRL-B | 向上滚动一屏 |
PageUp | |
H | 移动到屏幕顶部 |
M | 移动到屏幕中间 |
L | 移动到屏幕底部 |
zz<Enter> | 将当前行置为屏幕顶部 |
z. | 将当前行置为屏幕中间 |
z- | 将当前行置为屏幕底部 |