您的位置:首页 > 其它

常用的VI/VIM命令

2013-01-06 11:10 239 查看
删除单个字符: x

删除整行: dd

合并成一行:J

撤消: u

重做:crtr + r

插入: i , a(光标后),o(下方开始新行) ,O(上方开始新行)

移动

w:向前移动一个单词开始

b:向后移动一个单词开始

e:向前移动到一个单词的末尾

ge:向后移动到一个单词的末尾

W,B,E,gE是以空格(' ')区分单词,小写的话是以非字母区分

$:移到行尾

^:移动一行第一个非空格光标

0:移动一行第一字光标处

f<c>:在当前行向前查找为c的字符

F<c>:在当前行向后查找为c的字符

[fF]<c>这两个命令执行后,按 ; 和 , 可以重复执行命令

%:定位到对称的符号光标处,如[ ],{ }

<n>G:光标定位在指定的行

gg:定位到第一行

G:定位到最后一行

H:移动到当前可见视图的第一行

M:移动到当前可见视图的中间行

L:移动到当前可见视图的最后一行

CRTL + G : 显示当前位置

:set number 显示行号

:set nonumber 关闭显示行号

CRTL + E : 向下滚动一行

CRTL + Y : 向上滚动一行

CRTL + U : 向上滚动半屏

CRTL + D : 向下滚动半屏

CRTL + B : 向上滚动一屏

CRTL + F : 向下滚动一屏

zz:把当前光标所在的行移动屏中间行

zt: 把当前光标所在的行移动屏上端

zb:把当前光标所在的行移动屏下端

m[az]:把当前光标所在的位置设置一个标记,用a~z之间的一个字符表示,如果在别的地方要马上回到此标记的位置,按 '<m>,如:'s,则回到标记为s的地方 '' 跳回到上次光标位置

查找

/<find_sequence> : 查找<find_sequence>字符串,注意.*[]^%/\?~$是特殊字符,要用\转义

按enter执行命令后,可以输入n或N进行正向,或者反向查询下一个

如果执行查找时一个单词太长不容易拼写,则可以在光标定位到该单词时执行: * 命令,则可以执行查找,# 命令是反向查找

:set ignorecase可以设置查询是否对大小写敏感

:set hlsearch 高亮显示所有匹配的行

:set incsearch 在输入的时候就显示匹配点

:set wrapscan 找n或N查找的时候到达末尾时,是徇环查找

编辑文本

d + <移动命令>:操作从当前光标所处的位置到移动后的光标位置的所有内容,例于:de,删除当前光标到下一个单词结尾的所有内容

c + <移动命令>:和上面一样,不过会进入插入模式

一些快捷键:

x = dl : 删除当前光标内容

X = dh : 删除光标左边的字符

D = d$ : 删除到行尾

C = c$ : 删除到行尾并进入插入模式

s = cl : 修改一个字符

S = cc : 修改整行

r[az]:替换光标定位位置的字符,如rb则把当前光标位置的字符换成b,这比 c 命令的好处在于不用进入插入模式,省下ESC操作

. : 重复执行上次的操作

v,V,crtl + v,可分别进入可视模式,行可视模式,块可视模式,选择后按d可以删除选择的内容。在可视模式下,如果想换可变换的光标点,则可以按o和O来进行切换

y + <移动命令>:复制

daw:删除一个单词

yaw:拷贝一个单词

yiw:拷贝一个单词,与前的区别是这个拷贝不包括单词后面的空格字符串

~:改变单词大小写

A:移动在行尾并启动插入模式

I:移动到行首第一个非空字符并启动插入模式

R:进入替换模式

NERDTree

crtl + ww : 返回到NERDTree操作界面

:! touch 新增文件

--——
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: