在行内移动
我们可以用w
命令向前移动一个单词,用b
命令向后移动一个单词。我们也可以用数字做前缀组成新的命令,来快速的移动。例如4w
就是向前移动4个单词,而5b
则是向后移动5个单词。命令e
也是向前移到一个单词,但是将光标定位在单词的结尾处;命令ge
则是向后移到一个单词并到达前一个单词的结尾处。
利用$
命令可以使光标移到一行的结尾处;而g_
命令则会而将光标移到一行的最后一个非空字符处。
利用0
命令可以使光标移到一行的开始处。而^
命令则会忽略开头的空格,而将光标移到一行的第一个字符处。
在行间移动
进入命令状态,直接输入行号,按下回车键就可以移动到指定的行。
使用G
命令,可以移动到指定的行。例如3G
可以使我们快速的移到第3行。而1G
则可以使我们移到文章的最顶端,而G
则是定位到文章的最后一行。
使用-
命令,可以移动到上一行的第一个非空字符处;而+
命令,则可以移动到下一行的第一个非空字符处。
使用)
命令,可以向前移动一个句子;而(
命令,则可以向后移动一个句子。
使用}
命令,可以向前移动一个段落;而{
命令,则向后移动一个段落。
将以上移动命令与数字相结合,可以进一步加快移动的速度。
除了在行间移动,我们还可以使用ctrl+U和ctrl+D命令进行向上和向下翻页,以快速移动到文章的不同部分。我们将在滚动屏幕章节中做详细介绍。
显示位置信息
那么又如何知道现在第几行呢?我们可以使用:set number
命令使vi显示行号;而取消行号的命令为:set nonumber
即使没有显示行号,也可以使用CTRL-G
命令在屏幕的下端显示当前所在位置的信息。我们还可以在CTRL-G命令加上一个数字参数,这个数字越大得到的信息就越详细。命令1CTRL-G
会显示文件的全路径。命令2CTRL-G
会同时显示缓冲区的数字标号。
命令gCTRL-G
可显示出当前文件中的字符数的信息。主要显示出当前行数(Line)、列数(Col)、字数(Word)、字符数(Char)和字节数(Byte)等信息。
命令:set ruler
可以打开标尺选项(ruler option)。将在屏幕右下角,显示当前所在的行和列,以及相对于整个文件所处的位置。
移动的历史记录
Vim可以记录你曾经到过的地方,并且可以使你回到前一次到过的地方。例如在编辑文件时执行了下面的命令,从而到过不同的行:1G
到第一行;10G
到第十行;20G
到第二十行。现在执行:jumps
命令,就会看到一个曾到过的行的列表。使用命令CTRL-O
跳转到移动记录列表中上一个位置。而命令CTRL-I
跳转到移动记录列表中下一个位置。你不但可以在当前文件内跳转,甚至还可以移动到曾经涉足过的其它文件。
^ | 移动到当前行的第一个非空字符处 |
g^ | |
_ | |
<Home> | 移动到当前行的第一个字符处 |
g<Home> | |
0 | |
g0 | |
g_ | 移动到当前行的最后一个非空字符处 |
<End> | 移动到当前行的最后一个字符处 |
g<End> | |
$ | |
g$ | |
gm | 移动到当前行的中间处 |
w | 向前移动一个单词 |
b | 向后移动一个单词 |
G | 移动到指定行 |
:set number | 显示行号 |
:set nonumber | 不显示行号 |
count| | 移动到count列 |
counth | 向左移动count个字符 |
countl | 向右移动count个字符 |
countgo | 移动到第count个字符处 |
- | 移动到上一行的第一个非空字符处 |
+ | 移动到下一行的第一个非空字符处 |
) | 向前移动一个句子 |
( | 向后移动一个句子 |
} | 向前移动一个段落 |
{ | 向后移动一个段落 |
G | 移动到文件末尾 |
gg | 移动到文件开头 |
`. | 移动到上次编辑处 |
没有评论:
发表评论