From 2a3c756cad9ad633725cd63e9190e54ae77859ba Mon Sep 17 00:00:00 2001 From: chxuan <787280310@qq.com> Date: Sun, 6 May 2018 12:31:56 +0800 Subject: [PATCH] update vimplus --- .vimrc | 1 + README.md | 58 +++++++------- help.md | 228 ++++++++++++++++++++++++++++++++++++++++-------------- 3 files changed, 199 insertions(+), 88 deletions(-) diff --git a/.vimrc b/.vimrc index fd86cba..4313312 100644 --- a/.vimrc +++ b/.vimrc @@ -24,6 +24,7 @@ syntax enable " 开启语法高亮功能 syntax on " 自动语法高亮 set t_Co=256 " 开启256色支持 set cmdheight=2 " 设置命令行的高度 +set showcmd " select模式下显示选中的行数 set ruler " 总是显示光标位置 set laststatus=2 " 总是显示状态栏 set number " 开启行号显示 diff --git a/README.md b/README.md index b8ed87b..745fdaa 100644 --- a/README.md +++ b/README.md @@ -66,6 +66,7 @@ An automatic configuration program for vim 修改 `~/.vimrc.local` 文件内容,以启用个性化定制,可覆盖 `~/.vimrc` 中的设置。 + 插件列表 ------------ @@ -112,34 +113,34 @@ An automatic configuration program for vim 以下是部分快捷键,更详细的快捷键请查阅[vimplus帮助文档][59]。 -| 快捷键 | 说明 | -| ------- | ----- | -| `,` | Leader Key | -| `e` | 快速编辑vimrc文件 | -| `s` | 重新加载vimrc文件 | -| `h` | 打开vimplus帮助文档 | -| `n` | 打开/关闭目录树 | -| `t` | 显示函数、变量、宏列表 | -| `a` | .h .cpp 文件切换 | -| `u` | 转到函数实现 | -| `i` | 转到函数声明 | -| `o` | 打开include文件 | -| `w` | 单词跳转 | -| `f` | 搜索~目录下的文件 | -| `y/p` | 生成函数定义 | -| `` | 分析语法错误 | -| `/` | 改变主题颜色 | -| `/` | 启用/关闭markdown实时预览 | -| ` p/ n` | buffer切换 | -| `:bd` | 关闭buffer | -| ` o/ i` | 光标位置切换 | -| `gcc` | 注释代码 | -| `:DirDiff ` | 目录比较 | -| `.` | 重复上次操作 | -| `vi"/di"/ci"` | 选中/删除/改写引号(可以是括号等配对符)内的内容 | -| `di,/ci,` | 删除/改写函数参数 | -| `vif/dif/cif` | 选中/删除/改写函数内容 | -| `gg=G` | 缩进代码 | +| 快捷键 | 说明 | +| ------- | ----- | +| `,` | Leader Key | +| `n` | 打开/关闭代码资源管理器 | +| `t` | 打开/关闭函数列表 | +| `a` | .h .cpp 文件切换 | +| `i` | 转到函数声明 | +| `u` | 转到函数实现 | +| `o` | 打开include文件 | +| `y` | 拷贝函数声明 | +| `p` | 生成函数定义 | +| `w` | 单词跳转 | +| `f` | 搜索~目录下的文件 | +| `` | 分析语法错误 | +| `` | 启用markdown实时预览 | +| `` | 关闭markdown实时预览 | +| `` | 显示上一主题 | +| `` | 显示下一主题 | +| `:Tab /=` | 按等号对齐,也可以是竖线 | +| `gcc` | 注释代码 | +| `:DirDiff ` | 目录比较 | +| `vif` | 选中函数内容 | +| `dif` | 删除函数内容 | +| `cif` | 改写函数内容 | +| `vaf` | 选中函数内容(包括函数名 花括号) | +| `daf` | 删除函数内容(包括函数名 花括号) | +| `caf` | 改写函数内容(包括函数名 花括号) | + Q & A ------------ @@ -176,6 +177,7 @@ Q & A 那就麻烦您打赏一颗:star::star:吧,给予我继续维护的动力。 + 特性展示 ------------ diff --git a/help.md b/help.md index eb0d3aa..2ddda52 100644 --- a/help.md +++ b/help.md @@ -1,27 +1,33 @@ 插件相关 ------------ -| 快捷键 | 说明 | -| ------- | ----- | -| `,` | Leader Key | -| `n` | 打开/关闭代码资源管理器 | -| `t` | 打开/关闭函数列表 | -| `a` | .h .cpp 文件切换 | -| `i` | 转到函数声明 | -| `u` | 转到函数实现 | -| `o` | 打开include文件 | -| `y` | 拷贝函数声明 | -| `p` | 生成函数定义 | -| `w` | 单词跳转 | -| `f` | 搜索~目录下的文件 | -| `` | 分析语法错误 | -| `` | 启用markdown实时预览 | -| `` | 关闭markdown实时预览 | -| `` | 显示上一主题 | -| `` | 显示下一主题 | -| `:Tab /=` | 按等号对齐,也可以是竖线 | -| `gcc` | 注释代码 | -| `:DirDiff ` | 目录比较 | +| 快捷键 | 说明 | +| ------- | ----- | +| `,` | Leader Key | +| `n` | 打开/关闭代码资源管理器 | +| `t` | 打开/关闭函数列表 | +| `a` | .h .cpp 文件切换 | +| `i` | 转到函数声明 | +| `u` | 转到函数实现 | +| `o` | 打开include文件 | +| `y` | 拷贝函数声明 | +| `p` | 生成函数定义 | +| `w` | 单词跳转 | +| `f` | 搜索~目录下的文件 | +| `` | 分析语法错误 | +| `` | 启用markdown实时预览 | +| `` | 关闭markdown实时预览 | +| `` | 显示上一主题 | +| `` | 显示下一主题 | +| `:Tab /=` | 按等号对齐,也可以是竖线 | +| `gcc` | 注释代码 | +| `:DirDiff ` | 目录比较 | +| `vif` | 选中函数内容 | +| `dif` | 删除函数内容 | +| `cif` | 改写函数内容 | +| `vaf` | 选中函数内容(包括函数名 花括号) | +| `daf` | 删除函数内容(包括函数名 花括号) | +| `caf` | 改写函数内容(包括函数名 花括号) | 插入模式 @@ -39,7 +45,7 @@ | `` | 退出插入模式 | -缓存 +缓存操作 ------------ | 快捷键 | 说明 | @@ -50,7 +56,7 @@ | `d` | 删除当前buffer | -窗口 +窗口操作 ------------ | 快捷键 | 说明 | @@ -76,10 +82,15 @@ | `0` | 光标移动到行首 | | `^` | 跳到从行首开始第一个非空白字符 | | `$` | 光标移动到行尾 | +| `` | 跳到上一个位置 | +| `` | 跳到下一个位置 | | `` | 上一页 | | `` | 下一页 | | `` | 上移半屏 | | `` | 下移半屏 | +| `H` | 调到屏幕顶上 | +| `M` | 调到屏幕中间 | +| `L` | 调到屏幕下方 | | `:n` | 跳到第n行 | | `w` | 跳到下一个单词开头(标点或空格分隔的单词) | | `W` | 跳到下一个单词开头(空格分隔的单词) | @@ -88,7 +99,7 @@ | `b` | 上一个单词头(标点或空格分隔的单词) | | `B` | 上一个单词头(空格分隔的单词) | | `ge` | 上一个单词尾 | -| `` | 在配对符间移动 | +| `%` | 在配对符间移动, 可用于()、{}、[] | | `gg` | 到文件首 | | `G` | 到文件尾 | | `fx` | 跳转到下一个为x的字符 | @@ -97,48 +108,146 @@ | `Tx` | 跳转到上一个为x的字符前 | | `;` | 跳到下一个搜索的结果 | -编辑 + +文本编辑 ------------ -| 快捷键 | 说明 | -| ------- | ----- | -| `vi"/di"/ci"` | 选中/删除/改写引号(可以是括号等配对符)内的内容 | -| `di,/ci,` | 删除/改写函数参数 | -| `vif/dif/cif` | 选中/删除/改写函数内容 | -| `u` | 撤销修改 | -| `` | 恢复修改 | -| `J` | 将下一行放到当前行尾 | -| `.` | 重复上次操作 | -| `/` | 光标位置切换 | -| `I` | 光标移动到行首并进入插入模式 | -| `A` | 光标移动到行尾进入插入模式 | -| `viw gU ` | 将选中的单词变成大写 | -| `viw gu` | 将选中的单词变成小写 | -| `gg=G` | 缩进代码 | -| `dgg` | 删除至文件首 | -| `dG` | 删除至文件尾 | +| 快捷键 | 说明 | +| ------- | ----- | +| `r` | 替换当前字符 | +| `R` | 进入替换模式,直至 ESC 离开 | +| `s` | 替换字符(删除光标处字符,并进入插入模式,前可接数量) | +| `S` | 替换行(删除当前行,并进入插入模式,前可接数量) | +| `cc` | 改写当前行(删除当前行并进入插入模式),同 S | +| `cw` | 改写光标开始处的当前单词 | +| `ciw` | 改写光标所处的单词 | +| `caw` | 改写光标所处的单词,并且包括前后空格(如果有的话) | +| `c0` | 改写到行首 | +| `c^` | 改写到行首(第一个非零字符) | +| `c$` | 改写到行末 | +| `ci"` | 改写双引号中的内容 | +| `ci'` | 改写单引号中的内容 | +| `ci)` | 改写小括号中的内容 | +| `ci]` | 改写中括号中内容 | +| `ci}` | 改写大括号中内容 | +| `cit` | 改写 xml tag 中的内容 | +| `cis` | 改写当前句子 | +| `c2w` | 改写下两个单词 | +| `ct(` | 改写到小括号前 | +| `x` | 删除当前字符,前面可以接数字,3x代表删除三个字符 | +| `X` | 向前删除字符 | +| `dd` | 删除当前行 | +| `d0` | 删除到行首 | +| `d^` | 删除到行首(第一个非零字符) | +| `d$` | 删除到行末 | +| `D` | 删除到行末(同 d$) | +| `dw` | 删除当前单词 | +| `diw` | 删除光标所处的单词 | +| `daw` | 删除光标所处的单词,并包含前后空格(如果有的话) | +| `di"` | 删除双引号中的内容 | +| `di'` | 删除单引号中的内容 | +| `di)` | 删除小括号中的内容 | +| `di]` | 删除中括号中内容 | +| `di}` | 删除大括号中内容 | +| `dit` | 删除 xml tag 中的内容 | +| `dis` | 删除当前句子 | +| `d2w` | 删除下两个单词 | +| `dt(` | 删除到小括号前 | +| `dgg` | 删除到文件头部 | +| `dG` | 删除到文件尾部 | +| `d}` | 删除下一段 | +| `d{` | 删除上一段 | +| `u` | 撤销 | +| `U` | 撤销整行操作 | +| `CTRL-R` | 撤销上一次 u 命令 | +| `J` | 链接多行为一行 | +| `.` | 重复上一次操作 | +| `~` | 替换大小写 | +| `g~iw` | 替换当前单词的大小写 | +| `gUiw` | 将单词转成大写 | +| `guiw` | 将当前单词转成小写 | +| `guu` | 全行转为小写 | +| `gUU` | 全行转为大写 | +| `gg=G` | 缩进代码 | +| `<<` | 减少缩进 | +| `>>` | 增加缩进 | +| `==` | 自动缩进 | +| `CTRL-A` | 增加数字 | +| `CTRL-X` | 减少数字 | +| `p` | 粘贴到光标后 | +| `P` | 粘贴到光标前 | +| `v` | 开始标记 | +| `y` | 复制标记内容 | +| `V` | 开始按行标记 | +| `CTRL-V` | 开始列标记 | +| `y$` | 复制当前位置到本行结束的内容 | +| `yy` | 复制当前行 | +| `Y` | 复制当前行,同 yy | +| `yiw` | 复制当前单词 | +| `3yy` | 复制光标下三行内容 | +| `v0` | 选中当前位置到行首 | +| `v$` | 选中当前位置到行末 | +| `viw` | 选中当前单词 | +| `vi)` | 选中小括号内的东西 | +| `vi]` | 选中中括号内的东西 | +| `vis` | 选中句子中的东西 | +| `gv` | 重新选择上一次选中的文字 | +| `:set paste` | 允许粘贴模式(避免粘贴时自动缩进影响格式) | +| `:set nopaste` | 禁止粘贴模式 | +| `"?yy` | 复制当前行到寄存器 ? ,问号代表 0-9 的寄存器名称 | +| `"?p` | 将寄存器 ? 的内容粘贴到光标后 | +| `"?P` | 将寄存器 ? 的内容粘贴到光标前 | +| `:registers` | 显示所有寄存器内容 | +| `:[range]y` | 复制范围,比如 :20,30y 是复制20到30行,:10y 是复制第十行 | +| `:[range]d` | 删除范围,比如 :20,30d 是删除20到30行,:10d 是删除第十行 | +| `ddp` | 交换两行内容:先删除当前行复制到寄存器,并粘贴 | 文件操作 ------------ -| 快捷键 | 说明 | -| ------- | ----- | -| `:w` | 保存文件 | -| `:w ` | 按名称保存文件 | -| `:e ` | 打开文件并编辑 | -| `:saveas ` | 另存为文件 | -| `:r ` | 读取文件并将内容插入到光标后 | -| `:r !dir` | 将dir命令的输出捕获并插入到光标后 | -| `:close` | 关闭文件 | -| `:q` | 退出 | -| `:q!` | 强制退出 | -| `:wa` | 保存所有文件 | -| `:cd ` | 切换Vim当前路径 | -| `:new` | 打开一个新的窗口编辑新文件 | -| `:enew` | 在当前窗口创建新文件 | -| `:vnew` | 在左右切分的新窗口中编辑新文件 | -| `:tabnew` | 在新的标签页中编辑新文件 | +| 快捷键 | 说明 | +| ------- | ----- | +| `:w` | 保存文件 | +| `:w ` | 按名称保存文件 | +| `ZZ` | 保存文件(如果有改动的话),并关闭窗口 | +| `:e ` | 打开文件并编辑 | +| `:saveas ` | 另存为文件 | +| `:r ` | 读取文件并将内容插入到光标后 | +| `:r !dir` | 将dir命令的输出捕获并插入到光标后 | +| `:close` | 关闭文件 | +| `:q` | 退出 | +| `:q!` | 强制退出 | +| `:wa` | 保存所有文件 | +| `:cd ` | 切换Vim当前路径 | +| `:new` | 打开一个新的窗口编辑新文件 | +| `:enew` | 在当前窗口创建新文件 | +| `:vnew` | 在左右切分的新窗口中编辑新文件 | +| `:tabnew` | 在新的标签页中编辑新文件 | + + +增删改查批量操作 +------------ + +| 快捷键 | 说明 | +| ------- | ----- | +| `/pattern` | 从光标处向文件尾搜索 pattern | +| `?pattern` | 从光标处向文件头搜索 pattern | +| `n` | 向同一方向执行上一次搜索 | +| `N` | 向相反方向执行上一次搜索 | +| `*` | 向前搜索光标下的单词 | +| `#` | 向后搜索光标下的单词 | +| `:s/p1/p2/g` | 将当前行中全替换p1为p2 | +| `:%s/p1/p2/g` | 将当前文件中全替换p1为p2 | +| `:%s/p1/p2/gc` | 将当前文件中全替换p1为p2,并且每处询问你是否替换 | +| `:10,20s/p1/p2/g` | 将第10到20行中所有p1替换为p2 | +| `:%s/1\\2\/3/123/g` | 将“1\2/3” 替换为 “123”(特殊字符使用反斜杠标注) | +| `:%s/\r//g` | 删除 DOS 换行符 ^M | +| `:g/^\s*$/d` | 删除空行 | +| `:g/test/d` | 删除所有包含 test 的行 | +| `:v/test/d` | 删除所有不包含 test 的行 | +| `:%s/^/test/` | 在行首加入特定字符(也可以用宏录制来添加) | +| `:%s/$/test/` | 在行尾加入特定字符(也可以用宏录制来添加) | 宏录制 @@ -179,4 +288,3 @@ | `e` | 快速编辑vimrc文件 | | `s` | 重新加载vimrc文件 | | `h` | 打开vimplus帮助文档 | -