Vim提供了丰富的快速跳转任意行、任意列的方法,方便高效地移动光标,定位文件位置。
一、Vim行跳转
使用Vim查看文件时,使用以下命令可以快速跳转文件首、尾行,方便对整个文件有个全局把握。
1.1 跳转文件首行
Vim普通模式下,使用 gg
跳转到当前文件的第一行;
Vim命令行模式下,使用 :0
或 :1
跳转光标到当前文件的首行。
1.2 跳转文件尾行
Vim普通模式下,使用 G
跳转光标到当前文件的最后一行 (尾行);
Vim命令行模式下,使用 :$
跳转光标到当前文件的尾行。
1.3 跳转文件任意行
Vim命令行模式下,使用命令 :n
跳转光标到当前文件的第 n 行。
注:文件行号可以在命令行模式下使用 set nu
或 set number
进行显示,更多vim配置可参考vim配置文件入门。
二、Vim列跳转
跳转到Vim当前行的任意列是使用vim时一个比较常见的需求, 例如,在Vim可视化模式下就可能需要快速跳转到某一列。
2.1 跳转到行首
Vim普通模式下,使用命令 0
或 |
可跳转光标到当前行的行首。
注:|
英文名叫 bar,是vim普通模式下用于跳转到当前行某一列的一个命令 (To screen column [count] in the current line),|
表示当前行的第0列 (行首)
2.2 跳转到行尾
Vim普通模式下,使用命令 $
跳转光标到当前行的行尾
2.3 跳转任意列
Vim普通模式下,可使用以下vim命令 0nl
或 n|
跳转到当前行的第 n 列。
注:
0nl
表示先用命令 0
将光标移动到行首,nl
表示执行 n 次向右移动光标操作n|
表示使用 | 命令跳转到当前行的第 n 列
三、vim突出显示当前行、当前列
在Vim配置文件 .vimrc 或 Vim命令行模式下使用命令 set cursorline
或 set cul
可高亮显示鼠标当前所在行,set nocursorline
或 set nocul
可关闭高亮显示鼠标当前所在行;
命令 set cursorcolumn
或 set cuc
可高亮显示鼠标当前所在列,set nocursorcolumn
或 set nocuc
可关闭高亮显示鼠标当前所在列。