Vim使用笔记
基本操作
移动光标
hjkl→(←↓↑→)
输入模式
i→ 插入模式a→ 在光标后插入r→ 替换当前字符
删除
x→ 删除光标下的字符dd→ 删除(并复制)当前行ndd→ 删除接下来 n 行
复制粘贴
yy→ 复制当前行nyy→ 复制接下来 n 行p→ 粘贴
其他功能
Ctrl-r→ 重做u→ 撤销.→ (小数点)重复上一次命令Ctrl-p→ 自动提示(或Ctrl-n)/pattern→ 搜索 pattern 的字符串%→ 匹配括号移动,包括[,(,{.*(resp. #)→ 移动到下一个(resp. 上一个)当前光标下匹配的单词
行间操作
跨行操作
o→ 小写字母o,在当前行之后插入一行,并进入输入模式O→ 大写字母O,在当前行之前插入一行,并进入输入模式gg→ 到第一行G→ 到最后一行NG→ 到第N行(等同于:N,但是要按回车所以还是NG快点~)
当前行上移动光标
0→ 数字0,到行头g_→ 到行尾^→ 到本行第一个不是 blank 字符的位置$→ 到本行最后一个不是 blank 字符的位置fa→ 到下一个为字母 a 的匹配项处, ,(resp. ;) 会移动到下一个(resp. 上一个)t,→ 到字符 , 之前dt"→ 删除”之前的所有内容
块操作
多行注释
^→ 到行头Ctrl-v→ 开始块操作j→ 向下移动I-- [ESC]→I是插入,插入--(或者//,#等注释符),按ESC键来为每一行生效
文件操作
:wq→ 保存并退出:e <path/to/file>→ 打开:E→ 浏览目录:w→ 保存:saveas <path/to/file>→ 另存为<path/to/file>:q!→ 强制退出不保存
分屏
分屏启动
- 使用大写的
O参数来垂直分屏。
vim -On file1 file2 ...
- 使用小写的
o参数来水平分屏。
vim -on file1 file2 ...
关闭分屏
Ctrl-w q→ 关闭当前窗口,如果只剩最后一个则退出VimCtrl-w c→ 关闭当前窗口
分屏操作
- 上下分割当前打开的文件。
Ctrl+W s
- 上下分割,并打开一个新的文件。
:sp filename
- 左右分割当前打开的文件。
Ctrl+W v
- 左右分割,并打开一个新的文件。
:vsp filename
移动光标
Ctrl-w 后hjkl
写在后面
- 之前断断续续用过一段时间 Vim,但都因为工作量不算太多,而且一直在 Windows 下所以就改用了 Sublime Text, 但是最近才把 Vim 重新捡起来才发现真的好用,并且也吧 ST 开启了 Vim 模式,很是方便。
- 但 Emacs 什么的就算了吧。