vim
一般模式
列操作
删除列
1.光标定位到要操作的地方。
2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
3.d 删除。
插入列
插入操作的话知识稍有区别。例如我们在每一行前都插入"() ":
1.光标定位到要操作的地方。
2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
3.SHIFT+i(I) 输入要插入的内容。
4.ESC 按两次,会在每行的选定的区域出现插入的内容。
复制
y0 复制光标到行首的所有数据
y$ 复制光标到该行行尾的所有数据
p p 为将已复制的数据在光标下一行贴上
P P 则为贴在游标上一行!
合并列
J 将光标所在列与下一列的数据结合成同一列
删除
c 重复删除多个数据,例如向下删除 10 行,[ 10cj ]
重复
u 复原前一个动作。(常用) [Ctrl]+r 重做上一个动作。(常用) . 重复前一个动作。
指令模式
替换
#追加换行符
:%s/$/\\n"/g
#删除文章中的空行
:g/^s*$/d
#行间替换
:n1,n2s/word1/word2/g
:1,$s/word1/word2/g
:1,$s/word1/word2/gc
模式切换
ctags
:tag xxx 转到满足查找代码的定义处,简写为 :ta xxx :tag /^xxx 转到以xxx为起始的tag处 other find tags :stag/ptag/ts/tj/pts/ptj /<pat> :tag /xxx 列出所有包含xxx的tag :tag 转到前一个浏览过的tag处 vi -t xxx 直接定位到xxx的定义处 :tn / :tp 转到下/上一个tag代码处,可以使用:5tn的形式 :tr / :tl 转到首/尾tag代码处 :tags 列出当前tag栈的内容 :ts xxx 列出所有匹配的代码及其所属文件,并提供选择浏览 :sts xxx 列出匹配处提供选择在新窗口中打开文件 :tj xxx 类似 :ts xxx,当只有一个匹配时直接转到代码处 g] 与 :ts xxx 功能相同(tag为光标下的标识符) <C-w> g] 等价于 :sts xxx g <C-]> 等价于 :tj xxx :pt? xxx 提供上述命令(?为j,s)的预览功能,退出窗口 :q! :t?! xxx 当前文件的修改被丢弃转到目标文件中 <C-w> } 在预览窗口中显示当前光标下的tag :ptl / ptf / ptn /ptp 类似于 tl,tf,tn,tp :che 察看没有找到的头文件(checkpath) makeprg :set makeprg=gcc\ yourfile.c 为在线编译设置 :make 在线编译 :cn / :cN 移动到编译的 下/上 一个error处 :stag xxx 查找xxx的声明处并在新窗口中打开 :ta {ident} 跳转到标识符定义处 gd 跳转到局部标识符定义处
标签
:tabnew 新建标签页
:tabs 显示已打开标签页的列表
:tabc 关闭当前标签页
:tabn 移动到下一个标签页
:tabp 移动到上一个标签页
:tabfirst 移动到第一个标签页
:tablast 移动到最后一个标签页

浙公网安备 33010602011771号