一般模式(按ESC进入)
编辑模式(一般模式键入i,I,o,O,a,A,r,R)
命令行命令模式(一般模式键入':',/,?)
2, 一般模式:左下角会显式这个文件的状态:名称、行数与字符数或[New File]
移动光标 | |
h,j,k,l | 左、下、上、右、移一个字符,小写L,30k向上移30行,不够到第一行 |
ctrl+f/b | 向下翻一页,向上翻一页 |
ctrl+d/u | down半页,up半页 |
+ - | 非空格字符的下一行或上一行行首 |
数字+空格 | 光标向后移相应数字的字符 |
数字0 $ | 行首,行尾 |
H M L | 移动到当前屏幕的首行、中英、尾行的第一个字符 |
G | 移动到这个文件的最后一行 |
数字n+G | 移动到文件的n行,行数超了后移动到文件的最后一行 |
gg | 移动到文档的第一行,相当于1G |
数字n+回车 | 向下移动n行(空格是向后移动字符) |
文本编辑 | |
x,X,nx,nX | 向后,向前删除一个字符,或n个字符 |
dd,ndd,dnG,dG | 删除光标所在行,(包括光标所在行)向下n行,到第n行,最后一行 |
d$,d0 | |
yy,nyy,ynG,yG | 复制光标所在行,向下n行,(同dd) |
p,P | p为粘贴到光标的下一行,P为粘贴到光标的上一行 |
J | 光标所在行与下一行合成一行,并用一个空格隔开(有且只有一个空格) |
ncj | 向下删除n行并进入编辑模式,重新编写当前行(当前行是没有数据的) |
u,ctrl+r,小数点 | 复原前一个操作,重做上一个操作,'.'是重复前一个动作 |
2, 命令行命令模式(一般模式键入':',/,?)
键入/或?,输入要搜索的字符串 | 向下或向上搜索 |
n,N | 重复进行前一个搜索动作,反向进行前一个搜索动作 |
n1、n2s/word1/word2/g | 将n1行和n2行之间的word1字符串word1替换为word2字符串 |
1、$s/word1/word2/gc | 从第一行到最后一行,进行替换,替换前需要确认 |
:w,:w!,:q,:q! | 保存,离开 |
n1 n2 w[filename] |
3,复制与黏贴(命令模式下)
复制整行,光标位于当前行,键入yy
复制单词,光标位于当前单词的第一个字母,键入yw
黏贴,键入p
4,撤消(命令模式)
键入u
5,跳转(命令模式)
键入 150gg 表示跳到150行