快捷键大全
插入模式
- Ctrl + w : 删除一个单词
- Ctrl + u : 删除一行 (也可用于终端)
- Ctrl + c/[ : 代替 esc 回到normal模式 (建议使用[ 因为另一种很可能会关闭插件功能)
- gi : 光标再次回到上次编辑处
增删查改快捷键
- normal ci + " 删除“”里面的内容并切换到插入模式,前提是光标得在""里面
- 同理 normal ci + [ 删除[] 里面内容 < { ( 均可以
- d + 0 / $ 删除光标处到行首或行尾
文本对象
w代表 word ;s 代表句子 ;p代表段落
iw 将单词作为操作对象,不包括单词周围的空格aw 将单词作为操作对象 包括单词周围的空格
同理 is as ip vp
操作有 d删除 y复制 v选中...
操作 + 操作数 + 对象
d3w 删除光标起始的3个单词
配置
映射
- nore 表示非递归。
- n 表示在普通模式下生效
- v 表示在可视模式下生效
- i 表示在插入模式下生效
- c 表示在命令行模式下生效
键表
- 小键盘 0 到 9
<S-...> Shift+键
<C-...> Control+键
<M-...> Alt+键 或 meta+键
<A-...> 同 <M-...>
Escape 键
光标上移键
插入空格
插入Tab
等于
搜索替换
替换
:[range]s/{pattern}/{string}/[flag]
- range 可以用 诸如 12,23 这种 m,n 的形式表示在12到23行内进行搜索,也可以直接用%来表示全部行
常用flag
- g 全局范围内执行
- c 可以确认或者拒绝修改
- n 报告匹配次数而不进行替换
- pattern可以使用正则表达式
搜索
查找
在normal模式下按下/
即可进入查找模式,输入要查找的字符串并按下回车。 Vim会跳转到第一个匹配。按下n
查找下一个,按下N
查找上一个。
Vim查找支持正则表达式,例如/vim$
匹配行尾的"vim"
。 需要查找特殊字符需要转义,例如/vim\$
匹配"vim$"
。
大小写敏感查找
在查找模式中加入\c
表示大小写不敏感查找,\C
表示大小写敏感查找。例如:
/foo\c
将会查找所有的"foo"
,"FOO"
,"Foo"
等字符串。
大小写敏感配置
Vim 默认采用大小写敏感的查找,为了方便我们常常将其配置为大小写不敏感:
" 设置默认进行大小写不敏感查找
set ignorecase
" 如果有一个大写字母,则切换到大小写敏感查找
set smartcase
取消高亮设置
:noh
更换配色
:colorscheme Ctrl +d 查看可选的配色方案
~/.vimrc 中添加 colorscheme + 配色方案名字
如果 没有 ~/.vim目录则创建一个,并创建 colors目录 将配色方案copy到~/.vim/colors/ 下然后就可以尽情命令行临时设置或者vimrc持久设置了
复制粘贴寄存器
- normal模式 ” + [0123456789ab] 可以指定复制粘贴的寄存器
- :reg 可以查看全部寄存器的保存值
- :reg + 寄存器号 可以查看寄存器中保存的值
多文件编写
文件跳转
- 可以通过命令模式 :ls 来查看vim当前的缓存区
- 可以通过:e filename 打开一个新的文件进行编辑,这个新的文件编辑就会纳入vim缓存区内
- 可以通过:b buffer序号 来跳转编辑
分割窗口
- :sp水平分割窗口 ( + s也可以) 当然后边可以+ filename 分割并打开一个窗口
- :vs垂直分割窗口 ( + v也可以)
- + w 循环切换/ + h(左) / +l(右) / +j(下) / +k(上)
标签页
- :tabnew + filename 打开新的标签页
- :tabs 查看所有标签组
- :tabn 切换到下一标签页
- :tabp 切换到上一标签页
- :tab close 关闭当前标签页
Others
- 查看vim版本 vim --version