每日一Vim(7)自动补全

http://liuzhijun.iteye.com/blog/1830575

 

注:以下命令都是在插入模式下执行。

单词自动补全:

CTRL+n :当你输入第一个字母的时候,再CTRL+n,自动出现下拉菜单,单词默认选中第一个,继续CTRL+n,CTRL+p可以上下切换,或者用方向键(太慢)
CTRL+p :同上,只是默认的选中的是列表中最后一个单词

行自动补全:

CTRL+x CTRL+l (l指小写的L ):两个命令组合使用。在插入模式下输入已经存在行的第一个单词,再按这两个键,就会列出该整行出来

文件名自动补全:

CTRL+x CTRL+f :插入模式下,按这两个组合键,可以插入当前目录下的文件名。处用在哪里呢,当然是有时候我们要指定默认执行文件的路径,这样就方便啦。

字典补全:

首先在~/.vimrc加入如下代码,注意这是在Linux,windows下应该是C:\Users\$username(用户名)

set dictionary-=$VIM/dic.txt dictionary+=$VIM/dic.txt

dic.txt中的单词一每行一个单词来分割的
CTRL+x CTRL+k 就能看到dic.txt中定义的单词的,如果你还麻烦,想直接CTRL+n就显示其中的列表的话,再配置一下.vimrc文件:

set complete-=k complete+=k

 

光标一次移动一个单词的长度

w:移动到下一个单词的起始处(既然是w,代表的意思就是word,好记吧)
W:移动到下一个单词的起始处

那么w和W它俩有什么区别呢,w会把一个单词理解成由连续的字母或数字或特殊字符,而W却以空格来识别是否到了下一个单词,一图胜千言

与之相反的两个操作时b和B

b:移动到前一个单词的起始处
B:移动到前一个单词的起始处(b和B的区别与w和W是同理的)

光标在一行内的移动

0(零):移动到行首
$:移动到行未
^:移动到当前行的第一个非空字符处(如果该行首没有空格,那么效果与0是一样的)
g_:移动到当前行的最后一个非空格字符处

插入,追加字符

i:在当前光标位置插入字符
o:在当前行往下插入新的一空行
O:在当前行往上插入新的一空行
a:在当前光标后追加字符
R:替换当前光标的字符直到推出插入模式(按ESC)
:r filename:把文件名为filename的内容插入当当前行的下一行
:r! command:把command返回的结果插入到当前行的下一行

拷贝一个单词、行首、行尾、整行

yw:拷贝当前的一个单词
y0:拷贝的范围是当前光标处到行首
y$:拷贝的范围是当前光标处到行尾
yy:拷贝当前行
nyy:从当前行开始拷贝n行(这里的n是数字)

拷贝完后用p就可以粘贴了。

删除一个单词,行首、行尾、整行

x:删除当前光标处字符(严格来说x不属于插入,因为你还要按i才能插入)
dw:删除当前光标出一个单词
d0:删除光标处到行首的字符
d$:删除光标处到行尾的字符
dd:删除整行
ndd:删除n行(同样n代表数字)  

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值