vim 在unix内核的操作系统用的很多,之前使用过vim修改代码,但是对其了解的不是很深刻,所以想记录一下,争取早日熟练使用vim编辑器
vim的normal模式
和插入模式
- normal模式:启动Vim后,vim在 normal模式下。
- 插入模式:键入
i
,进入insert模式,左下角有个插入(insert)
,表示进入该模式 - 键入
ESC
,返回normal模式
vim 插入模式下的一些基础命令
- i → Insert 模式,按 ESC 回到 Normal 模式.
- x → 删当前光标所在的一个字符。
- :wq → 存盘 + 退出 (:w 存盘, :q 退出)(:w和 :wq 后可以跟文件名,指另存为该文件)
- dd → 删除当前行,并把删除的行存到剪贴板里
- p → 粘贴剪贴板
- yy → 拷贝当前行当行于 ddp
- hjkl (移动光标,依次是
左下上右
) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。 - u → undo撤销上一步操作
- <Ctrl-r> → redo
各种插入快捷键
- a → 在光标后插入
- o → 在当前行后插入一个新行
- O → 在当前行前插入一个新行
- cw → 替换从光标所在位置后到一个单词结尾的字符
打开/保存/退出/改变文件(Buffer)
- :e <path/to/file> → 打开一个文件
- :w → 存盘
- :saveas <path/to/file> → 另存为 <path/to/file>
- :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
- :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
- :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件
重复
- . → (小数点) 可以重复上一次的命令
- N<command> → 重复某个命令N次
光标移动
- N-G → 到第 N 行 (注意命令中的G是大写的,另外还可以使用 : N 到第N行,如 :137 到第137行)
- gg → 到第一行。(相当于1G,或 :1)
- G → 到最后一行。