VIM的两种状态
- vim分为两种状态:命令状态和编辑状态
- 在命令状态下,所键入的字符均作为命令来处理;而在编辑状态下,则可以编辑文本资料
- 当你进入vim时,会首先进入命令状态
- 在命令状态下,按”i”或”a”可以进入编辑状态;在编辑状态下,按ESC键可以进入命令状态
在命令状态下,有如下一些常用命令:
x:删除光标处的字符
- dd:删除光标所在的整行
- 3dd:删除光标所在的整行以及下面的两行
- D:删除光标到行尾的文本,常用于删除注释语句
- yy:复制光标所在的整行
- [n]yy:从光标开始往下复制n行
- p:将复制后的文本粘贴到光标处
- u:撤销上次操作
-
光标移动
^:光标移动到行首
- $:光标移动到行尾
- gg:光标移动到文档头
- G:光标移动到文档尾
[n]G:光标移动到第n行行首,也可以用”:n”移动到第n行
查找和替换
/[str]:查找字符串str,回车后会加亮显示所有找到的字符串,接着使用命令n移动到下一个找到的字符串,使用命令N移动到上一个找到的字符串
- 部分替换:只能替换光标所在的行
- :s/[src]/[dst]/i(忽略大小写)/g(全部匹配)
- 注意:如果不加g只替换在该行匹配的第一处,加了g就替换该行所有的匹配处
- 举例::s/hello/world/ig(替换一行)、:3,6s/hello/world/g(在3-6行中找)
全部替换
v:进入可视化块选择状态,选中块之后,可以通过d(删除)、y(复制)、x(剪切)对块进行操作
用于批量注释代码的操作
结束编辑
- :q 在未修改文档的情况下退出
- :q! 放弃文档的修改,强制退出
- :w 文档存盘
- :wq 文档存盘并退出,等价于:x
- :wq! 文档存盘并强制退出,忽略只读限制
- 在命令模式下输入 :new 2.c,表示再横向打开一个vim;在命令模式下输入 :vnew 2.c,表示再纵向打开一个vim
- 在命令模式下输入 :sp,表示再横向打开同一个文件的vim,在命令模式下输入 :vsp,表示再纵向打开同一个文件的vim
- 两个窗口之间进行切换的方式:Ctrl+w,w
- 注意:如果在编辑过程中不小心按了Ctrl+s,vim会处于僵死状态,按Ctrl+q可以恢复
给VIM增加配置文件