vim具有三种工作模式:①命令行模式(输入字符作为命令使用);②插入模式(进行编辑程序,文本记录);③底行模式(在最底部冒号后面输入对应命令);
命令行模式操作命令:
删除、复制、粘贴
删除行 | 光标+7+d+d | 连删7行 | ||
复制行 | 光标+7+y+y | 连续复制7行 | ||
粘贴 | 光标放到某处+p | 粘贴在此处 |
行、列、区域选择
光标+v+左右移动光标 | 选择部分列 | ||
光标+V+上下移动光标 | 选择整行,上下移动光标选择多行 | ||
光标+Ctrl+v+移动光标 | 选择某一区域 |
取消操作:按u,多按几次可依次取消之前的操作;
底行模式(:开头可输入的)操作命令:
?char | n | 向前移动一个匹配处 |
N | 向后移动一个匹配处 |
:w | 保存 | |
:q | 退出 | |
:q! | 强行退出不保存 | |
:wq | 保存后退出 | |
:w[filename] | 另存为filename的文件 | |
:set nu | 显示行号 | |
:set nonu | 取消行号 | |
:n1,n2,w[filename] | 将n1与n2之间的内容另存为filename | |
:!+linux命令 | 不退出vim的情况下在终端操作,按回车可继续回到vim编辑 | |
:files | 显示当前已打开的文本名 | |
:sp +另一个filename | 在同一个窗口同时显示另一个file(上下分屏,方便代码对比) | |
Ctrl+w+k | 光标切换到上半屏 | |
Ctrl+w+j | 光标切换到下半屏 | |
:n1,n2 s/word1/word2/g | 从n1行到n2行范围内将word1全部换成word2,g代表全部换不询问,若g改为从,则是每更换一个就询问一次(y/n) |