普通模式
光标移动
1 | h "光标左移,同 <Left> 键 |
位置跳转
1 | CTRL-O "跳转到上一个位置 |
文本编辑
1 | r "替换当前字符 |
复制粘贴
1 | p "粘贴到光标后 |
文本对象 - c,d,v,y 等命令后接文本对象,一般为:<范围 i/a><类型>
1 | $ "到行末 |
代码折叠
1 | za "切换折叠 |
插入模式与普通模式切换
1 | i 在光标处进入插入模式 |
插入模式 - 由 i, I, a, A, o, O 等命令进入插入模式后
1 | <Up> 光标向上移动 |
查找替换
1 | /pattern "从光标处向文件尾搜索 pattern |
VISUAL MODE - 由 v, V, CTRL-V 进入的可视模式
1 | > "增加缩进 |
文件操作
1 | :w "保存文件 |
缓存操作
1 | :ls "查案缓存列表 |
窗口管理
窗口操作
1 | :sp <filename> "上下切分窗口并在新窗口打开文件 filename |
标签页
1 | :tabs "显示所有标签页 |
书签
1 | :marks "显示所有书签 |
常用设置
1 | :set nocompatible "设置不兼容原始 vi 模式(必须设置在最开头) |
帮助信息
1 | :h tutor "入门文档 |
外部命令
1 | :!ls "运行外部命令 ls,并等待返回 |
Quickfix 窗口
1 | :copen "打开 quickfix 窗口(查看编译,grep等信息) |
拼写检查
1 | :set spell "打开拼写检查 |
宏录制
1 | qa 开始录制名字为 a 的宏 |
其他命令
1 | CTRL-E "向上卷屏 |
注释插件 - https://github.com/tpope/vim-commentary
1 | gcc "注释当前行 |
对齐插件 - https://github.com/godlygeek/tabular
1 | :Tabularize /, "按逗号对齐 |
插件 - https://github.com/tpope/vim-unimpaired
1 | [space 向上插入空行 |
插件 - https://github.com/skywind3000/asyncrun.vim
1 | :AsyncRun ls "异步运行命令 ls 结果输出到 quickfix 使用 :copen 查看 |
插件 - https://github.com/gaving/vim-textobj-argument
1 | cia 改写函数参数 |
网络资源
1 | 最新版本 https://github.com/vim/vim |