Vi使用

1.常用操作
VIM作为文本编辑器,其强大之处,在我看来,首先就是快速的编辑能力,其次才是丰富的扩展插件。
所以掌握vim的快速编辑的方法是非常重要的,这里列举一些必须熟记的跟效率有关的操作.


<基本编辑操作>
上下左右移动:对应为上(K),下(J),左(H), 右(L);这个是基本要求,千万不要用方向键,用方向键的朋友伤不起~。
gg:跳到文档开头
G:跳到文档末尾
w:跳到下一个单词开头; 4w:跳到往后的第四个单词的开头,依次类推.
e:跳到下一个单词结尾
b:跳到上一个单词开头;4b:跳到往前的第四个单词的开头,依次类推.
0:跳到行的开头
^:跳到行的开头的第一个字符处
$:跳到行的末尾


<快速编辑操作>
=:快速调整当前行的缩进 gg=G:全文档快速缩进调整
Ctrl+p(Ctrl+n):快速补全命令,这个在写代码时非常有用,在编辑模式中, 输入几个字符后再输入此命令则 开始向上(下)搜 索开头与其匹配的单词并补齐, 不断输入此命令则循环查找. 此命令 会在所有在这个 vim 程序中打开的文件中进行匹配.
Ctrl+x+l:自动补全一行的内容,只在当前文档查找匹配的行,多个选项时通过快速补全命令选择.
Ctrl+x+f:自动补全目录.如我输入 c:\p,然后按Ctrl+x+f, 则得到 C:\Program Files\
abbr:缩写设置,如:abbr cmain int main(int argc, char** argv),则下次只要输入cmain后再输入其他非字母符号, 它就会自动扩展为int int main(int argc, char** argv)
qa:录制宏, 宏这个不多解释,就是为了重复执行一系列操作准备的,好一点的编辑器都可以录制宏.
q:结束录制
@a: 执行一次宏, 100@a:重复执行100次


<查找相关>
查找默认是区分大小写的,要不区分大小写的话,先:set ignorecase
f:在当前行查找字符,如fx查找x, ';'查找下一个, ','查找上一个.
/xxx: 向下查找xxx,xxx允许正则表达式
?xxx:向上查找xxx,xxx允许正则表达式
n:查找下一个
N查找上一个
*:查找并高亮当前光标下的单词.
g*:查找并高亮包含当前单词的字符串. 如"helloworld world", 光标在空格后的world上按g*, 则"helloworld"也会高亮
%:查找与光标所在处括号相匹配的反括号, 包括 () [] {}


<替换相关>
替换是vim的强项, 因为可以用正规表达式来匹配字符串.
替换表达式的一些字符含义:
%:全文档搜索
g:全部替换
c:替换前确认
以下提供几个例子.
:s/aa/bb/g :将光标所在行出现的所有包含 aa 的字符串中的 aa 替换为 bb, g表示全部匹配点都替换,没有g则只替换第一个匹配的
:s/\<aa\>/bb/g :将光标aaxy所在行出现的所有 aa 替换为 bb, 仅替换 aa 这个单词,类似于aaxy之类的不会被替换
:%s/aa/bb/g :将文档中出现的所有包含 aa 的字符串中的 aa 替换为 bb
:12,23s/aa/bb/g :将从12行到23行中出现的所有包含 aa 的字符串中的 aa 替换为 bb
:12,23s/^/#/ :将从12行到23行的行首加入 # 字符
:%s= *$== :将所有行尾多余的空格删除
:g/^\s*$/d :将所有不包含字符(空格也不包含)的空行删除.


<复制粘贴>
y 表示拷贝, d 表示删除, p 表示粘贴. 其中拷贝与删除是与光标移动命令
YY:复制整行
dd:删除整行
ddp:交换当前行和下一行
ggyG:表示复制整篇文档
ggdG:表示删除整篇文档
yw:表示拷贝从当前光标到光标所在单词结尾的内容.
dw:表示删除从当前光标到光标所在单词结尾的内容.
y0:表示拷贝从当前光标到光标所在行首的内容.
d0:表示删除从当前光标到光标所在行首的内容.
y$:表示拷贝从当前光标到光标所在行尾的内容.
d$:表示删除从当前光标到光标所在行尾的内容.
yfa:表示拷贝从当前光标到光标后面的第一个a字符之间的内容.
dfa:表示删除从当前光标到光标后面的第一个a字符之间的内容.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值