Vim使用

Vim开启后在Normal模式下;(注意:在Vim的Normal模式下所有键都是功能键)

插入模式:
i:在光标所在的字符前开始输入文字并进入插入模式

a:在光标所在的字符后开始输入文字并进入插入模式

o:在光标所在行的下面单独开一行来输入文字并进入插入模式

s:删除光标所在的字符并进入插入模式

I:在行首开始输入文字并进入插入模式

A:在行尾开始输入文字并进入插入模式

O:在光标所在行的上面单独开一行来输入文字并进入插入模式

S:删除光标所在行并进入插入模式

Normal模式使用命令:

x:删除当前光标所在的一个字符;

dd:删除当前行,此行会存到剪贴板里;

p:粘贴;

上下左右移动:

h:左边

j:下边

k:上边

l:右边

u:撤销键

显示帮助命令:help

---------------------------------------------------------------------

插入模式:
a:在光标后插入

o:在当前行后插入一个新的行

O:在当前行前插入一个新的行

cw:替换从光标所在位置后到一个单位结尾的字符

简单的移动光标:

0:数字0,到行头部

^:到本行第一个不是blank字符的位置(blank指空格,换行,回车等)

$:到本行的尾部

g_:到本行最后一个 不是blank字符的位置

/pattern:搜索pattern 的字符串(如果搜索出多个字符串,可按n键到下一个)

拷贝、粘贴

p/P:都可以表示粘贴,区别在于p表示在当前位置之后,P表示在当前位置之前

P:粘贴

yy:拷贝当前行当前行于ddp

Undo/Redo

u:undo

ctrl+r:redo

打开、保存、退出、改变文件

:e <path/to/file>打开一个文件

:w存盘

:saveas <path/to/file>另存为以上的路径文件

:x,ZZ或wq(wq保存并退出、ZZ不需要输入冒号并回车)

:q!退出不保存,qa!强行退出所有的正在编辑的文件

:bn和:bp同时打开多个文件,使用这两个命令切换到下一个或者上一个(:n表示到切到下一个文件)   

 高级指令

.:重复上一次的命令

N<command>重复某个命令N次

例子:2dd:删除两行

2p:粘贴文本三次

100idesu[esc]:写下100个esu

.重复上一个指令

3.重复三次desu

更牛叉的指令

1.NG:到第N行,例子::137

2.gg:到第一行,也可以1G、:1

3.G:到最后一行

4.按照单词移动:

  1.w到下一个单词的开头

  2.e到下一个单词的结尾

  注意如果单词由blank字符分隔符,可以使用大写的E和W

最强光标移动

%:匹配括号移动,包括(,{,[

*和#:匹配光标在当前所在的单词,移动光标到下一个或者上一个单词(*下一个,#是上一个)

命令联动

<start position> <command> <end position>

例子:

0y$:

0:先到行头

y:从这里开始拷贝

$:拷贝到本行的最后一个字符

ye:从当前位置拷贝到本单词的最后一个字符

y2/foo:拷贝两个foo之间的字符

d(删除)

v(可视化选择)

gU(变大写)

gu(变小写)

超能力

0:到行头

^:到本行的第一个非blank字符

$:到行尾

g_:到本行最后一个不是blank字符的位置

fa:到下一个为a的字符处,你可以fs到下一个为s的字符

t,:到,前的第一个字符

3fa:在当前行查找第三个出现的a

F和T:和f和t相同,只是方向相反

dt:删除所有的内容直到遇到双引号

insert模式下:输入一个单词,按下ctrl+p或者ctrl+n自动补全的功能就出现了

参考资料:

http://coolshell.cn/articles/5426.html

http://www.cnblogs.com/zeushuang/archive/2012/11/16/2772830.html

怕什么真理无穷,进一寸有一寸的欢喜。---胡适
原文地址:https://www.cnblogs.com/hujianglang/p/6917077.html