vim学习笔记——入门

一 删除

1 dw: 在normal模式下删除一个词,从光标所在位置删到下一个词第一个字母之前;

2 de:在normal模式下删除一个词,从光标所在位置删到当前词最后一个字母之后;

d$:删除一行,只删除有文本的行;

 dd:删除一行,空白行也可以删除。

小结:关于OPERATORS和MOTION

vim中一些命令是根据操作符(OPERATOR)+方向(MOTION)形成的。如d操作符。

d MOTION

MOTION:

w--到下一个词的第一个字母;

e--到当前词的最后一个字母;

$--到当前行的最后一个字母。

如果在normal模式下,没有d操作符,则会光标如上所述移动。

另外,加上计数可以让命令重复操作,有两种格式,如下:

d COUNT MOTION

COUNT d MOTION

示例:d2w,删除包括当前词在内的两个词;2dw,同样。

 

二 撤销

1 u:恢复前一个命令所作的修改,譬如,使用x连续删除三个字符,那么连按三次u之后就会恢复;

2 U:在当前行的当前状态和前一状态间切换。譬如我在一行中连续删除两个字符,那么按U会恢复这两个字符;再次按U会回到删除后的状态。

3 CTRL+R:恢复u所作的动作。譬如,我删除了三个字符,使用u恢复,那么再按CTRL+R,就恢复到删除后的状态。

 

三 PUT命令

当执行删除操作的时候,会把删除的文本存放到寄存器中;当执行p命令的时候,会把寄存器中的文本粘贴到光标之后。

譬如,使用dw或de删除一个词,将光标移动到另一个地方,执行p命令,会粘贴到光标之后;

如果使用d$或dd删除一行,那么移动光标到另外一行执行p命令,会粘贴到当前行的下一行。

 

四 REPLACE命令

rx(x是一个字符)会用x替换掉光标当前所在的字符。

Rxxxxxxx替换掉多个字符。

 

五 CHANGE命令

ce 删除当前字符到当前词的最后一个字符(包含),将模式置为INSERT模式。

其实就是c MOTION这种命令格式,譬如cw,c$。

也可以使用c COUNT MOTION的格式。实质上相当于d COUNT MOTION命令之后再按i进入INSERT模式。

 

六 光标位置和文件状态

ctrl + g会在屏幕底行显示文件信息,包括总行数,当前行号,百分比,列数等;

直接按G会到达文件底部;

gg会到达文件顶部;

行号 G” 和“行号 gg”会到达指定的行号。

 

七 搜查命令

/word:从当前位置自上往下搜索;

?word:从当前位置自下往上搜索;

n:根据当前方向搜索下一个;

N:往当前反方向搜索上一个;

ctrl+o:回到上一个位置;

ctrl+I:回到下一个位置。譬如你按ctrl+o回到上一个位置,可以按ctrl+I到达前一个位置。

 

 八 %命令

查找当前的小括号、中括号和大括号(),[],{}的配对。

 

九 正规表达式替换

:s/old/new 替换当前行的第一个old。old表示要被替换的词,new表示用来替换的词。

:s/old/new/g 替换当前行的所有old。

:#,#s/old/new/g #表示行号,替换这两个行(包含在内)中所有的old。

:%s/old/new/g 替换全文的old。

:%s/old/new/gc 替换全文的old,每次替换都询问。

 

九 执行外部命令

:! command 能够在vim中执行任何外部命令。

譬如,你在根目录下启动vim,那么:! pwd将会显示/root

 

十 另存为

:w filename可以将当前文件另存为filename

 

十一 在当前窗口中打开多个文件

:sp file 将以horizontal打开另一个文件

vsp file 以vertical打开另一个文件

 

 十二 选择文本行

在normal模式下直接按v,将进入visual选择模式,你只需移动光标,就会选择文本(高亮)

选择文本之后,可以针对这些文本进行操作,譬如d,删除这些文本;w filename 另存为一个文件等

 

十三 检索和合并文件

:r filename 将会在光标所在行的下一行插入filename文件中的文本

:r !command 只会将命令的输出插入。

 

十四 插入文本

a 在当前光标后插入

i 在当前光标前插入

A 在当前行行尾插入

 

十五 复制和粘贴

y 复制操作符

yw 复制一个词(包括下一个词之前的空格)

ye 同样复制一个词(不包括当前词后面的空格)

y$ 从当前光标位置复制到行尾

yy 复制当前行整行

p 在当前光标位置后粘贴

 

十六 设置选项

搜查一个词,譬如am,使用命令::/am

然后:set ic,按n,则不论am,Am,aM,AM都会被搜索到,如果取消,则用set noic

如果想要全文高亮,则设置hlserch和incserch,:set hls is

 

十七 自动完整命令

首先必须将vim设置为非兼容模式,set compatible?可以查询是否是兼容模式。set nocp设置为非兼容模式。set cp设置为兼容模式。

:e 然后按CTRL-D将会列出所有以e开头的命令

:e 然后按TAB将会自动完成命令,当然,如果e开头的命令有多个,那么将会自动选择第一个。

 

至此,你基本上会使用vim这个强大的文本编辑器了,呵呵

posted @ 2010-10-23 00:10  茫茫深海一条鱼  阅读(317)  评论(0)    收藏  举报