工欲善其事,必先利其器

作为Linux开发的必不可少的工具,能够将Vi的功效发挥到极致,必然能够提高我们的工作效率,下面是一些Vi的使用技巧。


1、光标定位、翻屏滚屏。

命令

功能

$

当前行的末尾

0

当前行的开头

gg

文件头

G

文件尾

10gg

10G

跳到第10行

``

这是两个 back quote,在键盘上是ESC下边那个键。

回到光标跳转前的位置

H

跳到屏幕上的第一行

M

跳到屏幕的中间行

L

跳到屏幕上的最后一行

gk

屏幕所见的上一行

gj

屏幕所见的下一行


在Vim的命令模式下,有很多移动光标的命令,带给我们很大的便利。最常用的莫过于​0​ 和​$​ ,把光标定位在行头和行尾。

常用的还有​G​ 把光标定位在文件尾,​gg​ 回到文件头。在这两个命令前面加一个数字就可以去到那一行,例如​10gg​ 会带你去到第10行。

``​ 的作用是回到光标跳转前的位置。例如,假设光标现在在第10行,按 G 去到文件尾,再按 `` 就可以回到第10行。

如果你发觉有时候​k​ 和​j​ 不是很好用(按一下就跨越屏幕上的几行),可以试一下用​gk​ 和​gj​ 。


2、复制、剪切、粘贴。


命令

功能

dd

删除当前行

yy

复制当前行

d$

删除从光标位置到行尾的内容

yt<

复制从光标位置到下一个“<”前的内容

(另外,​ct<​ 修改从光标至“<”前的内容,在编辑HTML、XML文件时很方便)

"x复制

把复制内容放进寄存器x

(x可以是26个英文字母之一,区分大小写)

"xp

粘贴寄存器x的内容

"+

特殊寄存器,读写系统剪贴板

:reg

查看各个寄存器的内容


D 删除光标处至行尾的字符