目录
前言 vim的两种模式
第一章 输入模式
第二章 命令模式
- 保存及退出
- 光标的移动
- 查找与替换
- 删除
- 复制粘贴
- 撤销
- 显示行号及注释
前言 vim的两种模式
vim是从vi发展成的文本编辑器,相比于功能比较齐全的vi而言,vim编辑器更加方便。使用vim编辑器打开文件后,会自动进入命令模式,用户可以通过点击键盘上的字母i切换至输入模式。键盘上的Esc则可以让用户从输入模式切换回命令模式。
第一章 输入模式
输入模式下,和windows系统中默认的文本编辑器操作类似,通过Enter换行,Backspace退格,光标键移动光标等等。除了这些常用的按键外,还有以下按键可能会使得编辑的效率提升:
Home | 移动光标至行首 |
---|---|
End | 移动光标至行尾 |
Page Up | 向上翻一页 |
Page Down | 向下翻一页 |
第二章 命令模式
命令模式下,输入完命令之后按下Enter后便会执行命令。由于无法使用鼠标操作,为了便捷的编辑文本,需要掌握的命令模式操作较多,以下列出常用的一些命令。
Part1:保存及退出
- :q 退出编辑器
- :q! 强制退出编辑器
- :w 保存
- :wq 保存后退出
- :[number1],[number2] w [filename] 将文件中的第[number1]行至第[number2]行另存为[filename]
- :w [filename] 另存为[filename]
- :r [filename] 将[filename]中的数据粘贴到光标所在行和下一行中间
Part2:光标的移动
- [number]↓ 光标向下移动[number]行,←↑→同。注:hjkl可以分别代替←↓↑→。
- ctrl f 向下翻一页
- ctrl d 向下翻半页
- ctrl b 向上翻一页
- ctrl u 向上翻半页
- 光标会跳过空格行,移至下一行
- – 光标会跳过空格行,移至上一行
- 数字0 光标移动到该行的最前端
- $ 光标移动到该行的最后面
- :1 光标移动到整个文档的第一行
- :[number] 光标移动到整个文档的第[number]行
- :$ 光标移动到整个文档的最后一行
Part3:查找与替换
- /[word] 向光标之下,查找[word]字符串所在的位置
- n 在查找状态下,继续向下查找[word]字符串,即下一个
- N 在查找状态下,反向查找[word]字符串,即上一个
- :[number1],[number2]s/[word1]/[word2]/g 将第[number1]行至第[number2]行的[word1]字符串全部替换成字符串[word2]
- :1,$s/[word1]/[word2]/g 上一命令的特殊形式,将所有的[word1]字符串全部替换成字符串[word2]
Part4:删除
- [number]x 向后删除[number]个字符
- dd 删除光标所在行
- [number]dd 删除光标及以下的[number]行
- d1G 删除文件开头到光标处的所有字符
- dG 删除光标到文件结尾的所有字符
- d$ 删除光标到行尾的所有字符
Part5:复制粘贴
- yy 复制光标所在行
- [number]yy 复制光标及以下的[number]行
- y1G 复制文件开头到光标处的所有字符
- yG 复制光标到文件结尾的所有字符
- p 粘贴在光标所在行和下一行之间
- J 将光标所在行和下一行结合
Part6:撤销
- u 撤销
- ctrl r 恢复撤销
Part7:显示行号和注释
- :set nu 显示行号
- :set nonu 取消行号显示
- :[number1],[number2]s/^/[注释符]/g 在第[number1]行至第[number2]行的开头添加[注释符],要求[注释符]中不含字符”/”
- :[number1],[number2]s/[注释符]//g 删除第[number1]行至第[number2]行的开头的[注释符],要求[注释符]中不含字符”/”
- :[number1],[number2]s#^#[注释符]#g 在第[number1]行至第[number2]行的开头添加[注释符],要求[注释符]中不含字符”#”
- :[number1],[number2]s#[注释符]##g 删除第[number1]行至第[number2]行的开头的[注释符],要求[注释符]中不含字符”#”