简介
vim - vi improved 是一个多模式文本编辑器
注:很多系统默认安装了Vi编辑器的,但Vim编辑器是没安装或者未完全安装的。
vi/vim通过多模式来实现摆脱鼠标,仅使用键盘就可以进行复制剪切粘贴等常用操作。
从正常模式到其他模式的切换
yy -> 复制当前行
- y$ -> 复制当前光标所在位置到本行结尾的所有字符
- dd -> 剪切当前行
- d$ -> 剪切当前光标所在位置到本行结尾的所有字符
p -> 粘贴
x -> 删除当前光标所在的一个字符
r -> 替换当前光标所在的一个字符
0 -> 数字零,将光标移到行首
- ^ -> 将光标移动到本行第一个不是blank字符的位置
- g_ -> 将光标移动到本行最后一个不是blank字符的位置
- $ -> 将光标移动到行尾
- gg -> 将光标移动到第一行
- G -> 将光标移动到最后一行
:N -> 将光标移动到N行(:set nu 可显示行数)
u -> undo撤销
Ctrl+r -> redo重做(即撤销的步骤做多了或者错误的撤销时进行重做)
hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→).
插入模式(Insert-mode)
i -> 进入Insert 模式,并在当前光标的前面编辑
- I -> 进入Insert 模式,并在当前行的行首编辑
- a -> 进入Insert 模式,并在当前光标的后面编辑
- A -> 进入Insert 模式,并在当前行的行尾编辑
- o -> 进入Insert 模式,并定位到下一行(会新建一个空行)编辑
O -> 进入Insert 模式,并定位到上一行(会新建一个空行)编辑
命令模式(Command-mode)
通过“:”“/”“?”“:!”可以进入命令模式,分别对应的是:执行内部命令、向上或向下搜索、执行外部命令
- :w -> 写入原始文件里
- :w
-> 写入指定文件里 - :q -> 退出
- :wq -> 保存并退出
- :q! -> 不保存退出
- :e
-> 打开文件 - :bp和:bn -> 在打开多个文件的情况下,可以通过这两个命令切换上一个和下一个文件
- / 查找
- /1 查找字符1
- 按 n 向下移动
- 按 N 向上移动
- :s 替换
- :s/1/one -> 将光标所在行的第一个1替换成one
- :s/1/one/g -> 将光标所在行的所有1替换成one
- :%s/1/one -> 将所有行的第一个1替换成one
- :3s/1/one -> 将第3行的第一个1替换成one
- :3,5s/1/one -> 将3至5行的第一个1替换成one
- :3,$s/1/one -> 将3至最后行的第一个1替换成one
- :! 执行shell命令
:set 设置命令
v -> 进入字符可视模式
- V -> 进入行可视模式
- ctrl+v -> 进入块可视模式
- 配合d和I(大写的i)可进行块的便利操作
