Vim常用命令小记(3)——滚屏命令

向下滚屏


下面的这些命令使编辑视窗 (缓冲区中可见的部分) 向下移动:

CTRL-E            使窗口在缓冲区中向下滚动 [count] 行。

CTRL-D            使窗口在缓冲区中向下滚动。滚动的行数由 'scroll' 选项指定 (默认设置为半个屏幕)。
                       如果指定了 [count],则会先把 'scroll' 选项设为 [count]。同时,光标试图在文件中向下移动相同的行数。
                       当光标处于缓冲区最后一行时,这个命令无效,并且系统会发出一声蜂鸣。

<S-Down> 或 <PageDown> 或 CTRL-F        使窗口在缓冲区中向下滚动 [count] 页。

z+                   不指定 [count]: 重绘,在窗口中显示下一页的内容 (使当前窗口之下的一行显示在窗口最上方)。
                                             同时把光标放在那一行第一个非空白字符上。
                       指定 [count]: 和 "z<CR>" 一样。

向上滚屏


下面的这些命令使编辑视窗 (缓冲区中可见的部分) 向上移动。

CTRL-Y            使窗口在缓冲区中向上滚动 [count] 行。在Windows下,组合键 CTRL-Y 会被重新映射为重做功能。

CTRL-U            使窗口在缓冲区中向上滚动。滚动的行数由 'scroll' 选项指定 (默认设置为半个屏幕)。
                       如果指定了 [count],则会先把 'scroll' 选项设为 [count]。同时,光标试图在文件中向上移动相同的行数。
                       当光标处于缓冲区第一行时,这个命令无效,并且系统会发出一声蜂鸣。

<S-Up> 或 <PageUp> 或 CTRL-B            使窗口在缓冲区中向上滚动 [count] 页。

z^       不指定 [count]: 重绘,在窗口中显示上一页的内容 (使当前窗口之上的一行显示在窗口最下方)。
                                 同时把光标放在那一行第一个非空白字符上。
           指定 [count]: 滚动文本,使得缓冲区第 [count] 行显示在窗口底部,然后重绘,使当时处于窗口顶端的文本显示在窗口的底部。
                               同时把光标放在那一行第一个非空白字符上。

相对于光标滚屏


以下的命令重新定位编辑视窗 (缓冲区中可见的部分),但仍维持光标留在当前行。

z<CR>                 重绘,使第 [count] 行显示在窗口顶端 (默认为光标所在的行)。光标停留在那一行第一个非空白字符上。

zt                        类似 "z<CR>",不过光标停留在相同的列上。

z{height}<CR>    重绘,使得窗口有 {height} 行高。当屏幕刷新速度很慢的时候,这对减少行数很有用。
                          不能使窗口的高度超过屏幕的实际高度。

z.                        重绘,使第 [count] 行显示在窗口中部 (默认为光标所在的行)。光标停留在那一行第一个非空白字符上。

zz                       类似 "z.",不过光标停留在相同的列上。
                          如果打开了 <Caps Lock>,这个命令就变成了 "ZZ":写缓冲区并退出!
           
z-                       重绘,使第 [count] 行显示在窗口底部 (默认为光标所在的行)。光标停留在那一行第一个非空白字符上。

zb                       类似 "z-",不过光标停留在相同的列上。{Vi 无此功能}

 

水平滚动


使用以下四个命令时,鼠标会跟随屏幕而移动。如果光标移出了屏幕,它就会落在屏幕中距它最近的那个字符上。忽略 'sidescroll' 选项的值。

z<Right> 或 zl        使文本视图向右移动 [count] 个字符,也就是使文本向左滚动 [count] 个字符。仅当 'wrap' 为关时有效。
           
z<Left> 或 zh        使文本视图向左移动 [count] 个字符,也就是使文本向右滚动 [count] 个字符。仅当 'wrap' 为关时有效。

zL                         使文本视图向右移动半个屏幕宽度,也就是使文本向左滚动半个屏幕宽度。仅当 'wrap' 为关时有效。

zH                         使文本视图向左移动半个屏幕宽度,也就是使文本向右滚动半个屏幕宽度。仅当 'wrap' 为关时有效。

 

以下两个命令仅仅在屏幕上滚动文本,光标不会移动。

zs                         水平滚动文本,使光标置于屏幕的开始处 (最左侧)。仅当 'wrap' 为关时有效。

ze                         水平滚动文本,使光标置于屏幕的结束处 (最右侧)。仅当    'wrap' 为关时有效。

同步滚动


:syncbind        强制所有 'scrollbind' 窗口具有相同的相对偏移。
                      即:当一个窗口滚屏到了它缓冲区的顶部时,所有的 'scrollbind' 窗口都会滚屏到它们缓冲区的顶部。

posted @ 2012-07-03 07:28  小兔有点乖  阅读(1675)  评论(0)    收藏  举报