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    移动到最后一个标签页

 

 
posted @ 2016-09-27 22:41  EDPL  阅读(134)  评论(0)    收藏  举报