vim 下令学习

vim 命令学习

 

移动光标

上: k nk:向上移动n行 9999k或gg可以移到第一行 G移到最后一行
下: j nj:向下移动n行
左: h nh:向左移动n列
右: l nl:向右移动n列

 

w: 光标以单词向前移动 nw:光标向前移动n个单词 光标到单词的第一个字母上
b: 与w相反
e: 光标以单词向前移动 ne:光标向前移动n个单词 光标到单词的最后一个字母上
ge: 与e相反

 

$: 移动光标到行尾 n$:移动到第n行的行尾
0: 移动光标到行首
^: 移动光标到行首第一个非空字符上去

 

%: 移动到与制匹配的括号上去(),{},[],<>等。

nG: 移动到第n行上 G:到最后一行

CTRL+G 得到当前光标在文件中的位置

 

翻页

向前翻页: CTRL+F
向下移动半屏: CTRL+G
向后翻页: CTRL+B

 

 

存盘
:q!:   不存盘退出
:e!:   放弃修改文件内容,重新载入该文件编辑
:wq: 存盘退出

 

删除

dw:  删除一个单词,需将光标移到单词的第一个字母上,按dw,如果光标在单词任意位置,用daw
dnw:删除n个单词
dne: 也可,只是删除到单词尾
dnl:  向右删除n个字母
dnh: 向左删除n个字母
dnj:  向下删除n行
dnk: 向上删除n行
d$:   删除当前光标到该行的行尾的字母
dd:   删除一行

J:   删除换行符,将光标移到该行,按shift+j删除行尾的换行符,下一行接上来了.
u:   撤销前一次的操作

shif+u(U):撤销对该行的所有操作。

ctrl+r: 恢复撤销的内容

o: 在当前行的下面另起一行

O: 在当前行的上面另起一行

nk或nj:光标向上或向下移n行,n为数字

nx:执行n次x(删除)操作

ZZ:保存当前文档并退出VIM

:help :查看帮助文档,在这之中,按CTRL+] 进入超连接,按CTRL+O 返回。
:help subject :看某一主题的帮助,ZZ 退出帮助

:set number / set nonumber :显示/不显示行号
:set ruler /set noruler:显示/不显示标尺

 

 

把光标放到某个单词上面,然后按*号键,表示查找这个单词
查找整个单词:/\<word\>

然后按n 继续向下找

 

高亮查找

:set hlsearch 高亮显示查找到的单词
:set nohlsearch 关闭该功能


r:        替换当前字符
nr字符:替换当前n个字符

查找替换:
way1:
/【word】 :查找某个word
cw【newword】:替换为新word
n: 继续查找
.: 执行替换

way2:
:s/string1/string2/g:在一行中将string1替换为string2,g表示执行 用c表示需要确认
:num1,num2 s/string1/string2/g:在行num1至num2中间将string1替换为string2
:1,$ s/string1/string2/g:在全文中将string1替换为string2

 


粘贴:p,这是粘贴用x或d删除的文本
复制:
ynw:复制n个单词
yy:复制一行
ynl:复制n个字符
y$:复制当前光标至行尾处
nyy:拷贝n行
完了用p粘贴

 

 

:split:      分割一个窗口
:split file.c : 为另一个文件file.c分隔窗口
:nsplit file.c:为另一个文件file.c分隔窗口,并指定其行数
CTRL+W :   在窗口中切换

:close:      关闭当前窗口