模式与模式切换
vim下4种模式:normal、insert、command、visual
normal:正常模式,终端输入vim
进入的就是这个模式。
insert:插入模式,即编辑模式,这个模式下可以进行编辑。i
或者o
都可以进入这个模式。[ESC]退出insert模式,进入normal模式。
command:命令行模式,借助vim内置命令实现一些操作。normal下输入:
进入命令行模式,冒号后面跟vim内置命令。[ESC]退出command模式,进入normal模式。
insert
o
: 在光标下一行创建新行,同时切换到insert模式
i
: insert插入模式,输入后可以往vim中进行输入
CTRL^S:锁定光标
CTRL^Q:解锁光标
normal
- 复制粘贴删除
yy
: 复制当前行(当前行被复制到缓冲)
dd
: 删除当前行(会同时复制当前行,类似于“剪切”) - 查找
/word
: enter键在文档中当前位置向下匹配word (?word
为向上匹配;) - 重复执行相关
n
: 直接按 n 键可以执行上一个命令
u
: 可撤销上一步执行指令
command
- 跳转
:行号
: 跳转到指定行 - 文件编码 & 显示设置等
:set fileencoding
查看文件编码格式
:set list
: 显示不可见字符 - 替换
:%s/string1/string2
: 将每一行第一个string1替换成string2
:%s/string1/string2/g
: 将所有string1替换成string2 - shell命令相关
:!{cmd}
执行cmd,cmd是shell命令,执行结果将暂时跳出vim显示在标准输出上
:read !{cmd}
执行cmd,将cmd执行结果重定向到vim缓冲中
:write !{cmd}
将当前vim缓冲的每行内容作为一个shell命令执行
vim代码比对
vim -d file_left file_right
1.1 或者在vim内,命令行模式下:split file2
-------------持续加更中,欢迎网友共建评论加入更多常用命令---------------------