Vim有3种模式:一般模式、编辑模式、命令模式。
一般模式
- 使用命令:vim filename ,默认进入该文件的一般模式,在此模式时可以做的操作有:上下左右移动光标、删除某个字符、删除某行、复制或粘贴一行或多行。
按键 | 作用 |
---|---|
h或向左方向键 | 光标向左移动一个字符。 |
l或向右方向键 | 光标向右移动一个字符。 |
k或向上方向键 | 光标向上移动一个字符。 |
j或向下方向键 | 光标向下移动一个字符。 |
Ctrl+f或PageUp键 | 屏幕向前移动一页。 |
Ctrl+b或PageDown键 | 屏幕向后移动一页。 |
数字0或Shift+6 | 移动到本行行首。 |
Shift+4 | 移动到本行行尾。 |
gg | 移动到首行。 |
G | 移动到尾行。 |
nG(n是任意数字) | 移动到第n行。 |
x | 向后删除一个字符。 |
X | 向前删除一个字符。 |
nx | 向后删除n个字符。 |
D | 删除从当前光标字符到光标所在行行尾的全部字符。 |
dd | 删除光标所在的那一行。 |
ndd | 从光标所在行开始,向下删除n行。 |
Y | 复制光标所在行。 |
y | 复制选中的指定字符。 |
yy | 复制光标所在行。 |
nyy | 从光标所在行开始,向下复制n行。 |
p | 从光标所在行开始,向下粘贴已经复制或者粘贴的内容。 |
P | 从光标所在行开始,向上粘贴已经复制或者粘贴的内容。 |
u | 还原上一步操作。 |
v | 按v后移动光标会选中指定字符,然后可以实现复制、粘贴等操作。 |
编辑模式
- 在一般模式,不可以修改某一个字符,如果要修改字符,只能进入编辑模式。从一般模式进入编辑模式,你只需按i、I、a、A、o、O中的某一个键即可。当进入编辑模式时,在屏幕的尾行会显示“INSERT或REPLACE”的字样。从编辑模式返回一般模式,只需按ESC键即可。
按键 | 作用 |
---|---|
i | 在光标所在字符前插入。 |
I | 在光标所在行的行首插入。 |
a | 在光标所在字符后插入。 |
A | 在光标所在行的行尾插入。 |
o | 在光标所在行的下一行插入新的一行。 |
O | 在光标所在行的上一行插入新的一行。 |
命令模式
- 在一般模式,输入“:”或者“/”即可进入命令模式,在该模式可以搜索某个字符或字符串,也可以实现保存、替换、退出、显示行号等操作。
命令 | 作用 |
---|---|
/word | 向光标之后查找一个字符串word,按n向后继续搜索。 |
?word | 向光标之前查找一个字符串word,按n向后继续搜索。 |
:n1,n2s/word1/word2/g | 在n1-n2行之间查找word1并替换为word2,不加g则只替换每行的第一个word1。 |
:1,$s/word1/word2/g | 将文档中所有的word1替换为word2,不加g则只替换每行的第一个word1。 |
:w | 保存文本。 |
:q | 退出Vim。 |
:w! | 强制保存,在root用户下,即使文本只读也可以完成保存。 |
:q! | 强制退出Vim,所有改动不生效。 |
:wq | 保存并退出。 |
:set nu | 显示行号。 |
:set nonu | 不显示行号。 |