1、进入vim
vi main.c :main.c存在的话则编辑main.c,否则新建main.c并且进行编辑;通过这个命令进入vim的命令行模式
2、三种模式(它们之前的切换命令如绿色字所示)
3、移动快捷键
上下左右:
h:左 l(注意是L的小写):右 上:k 下:j(个人理解j像个鱼钩,专门钓鱼,钓下面,所以表示“下”);还可以在前面加上数字表示移动的距离,比如4j,向下移动4行;8k,向上移动8行
4、命令行模式下常用命令:
复制:
yy 复制当前行
y2y(或者2yy) 复制从当前行开始的后面2行,类似有y4y,y8y…(剪切也有类似的操作d2d)
y$ 从当前位置复制到行尾
y^ 从当前位置复制到行首
或者按下v键,通过方向键或者hjkl选择要复制的内容,再按y进行复制
剪切(类比上面的复制进行记忆):
dd 剪切当前行
d2d (或者2dd) 剪切从当前行开始的后面2行,类似有d2d,d8d…
d$ 从当前位置剪切到行尾
d^ 从当前位置剪切到行首
或者按下v键,通过方向键或者hjkl选择要剪切的内容,再按d进行复制
粘贴:
p(小写) 粘贴到光标下一行
P(大写) 粘贴到光标前一行
跳转:
3gg(或者3G) 跳到第3行
5gg(或者5G) 跳到第五行
gg 跳到第一行
shift+g(或者G) 跳到最后一行
类似地。。但是如果不知道行号怎么办?看下面的末端模式下的常用命令可以显示行号
w(小写) 跳到下一个单词或者符号的开头,比如hi you ,则可由h跳到y
e(小写) 跳到单词或者符号的结尾,比如you,则可由y跳到u
% 在一些括号如()[] {}跳转,如(hi),则按%可以在这两个括号符号间跳转
#+回车 匹配当前光标所在的单词,按n或者N可以跳到下一个单词所在的位置,类似于用Android studio搜索某个单词在代码中出现的位置。和末端模式下的搜索类似
数字0 跳到行首
$ 跳到行尾
^ 本行第一个非blank字符
g_ 本行最后一个非blank字符
fa 跳到下一个为a的字符处,也可以使用fs到下一个为s的字符处;把f换成F则为反方向
4fi 跳到第四个i出现的地方;把f换成F则为反方向
t, 跳到,的前一个字符。可以把逗号换成其他字符如u,则跳到u的前一个字符,you,则跳到o;把t换成T则为反方向
撤销:
u(小写的):撤销上一步操作
助记:u其实就是undo(不干)的首字母嘛
反撤销:
ctrl+r
助记:r就是redo(重做)的首字母嘛
删除:
x :删除光标处的字符
cw: 替换从光标所在位置后到一个单词结尾的字符, 并很自然的转化Insert模式
重复:
.(小数点):重复上一次命令
数字n+命令:重复命令n次,比如要重复粘贴3次,即3p ;要删除3次,则3dd(3dd就是删除三次,即删除三行;类似地3yy就是复制三次,也就是复制三行)
可视化操作:
v(小写的) :进入可视化界面;再按一次v,可以退出可视化
V(大写的) :进入可视化行界面,是按行来选择的;再按一次V,可以退出可视化
ctrl +v(或V) :进入可视化块界面,是按块来进行选择的,类似于window下按alt选择垂直的列那样,来看两个常用操作,下面是对指定行进行注释:
操作1:将当前行到最后一行的进行注释
操作2:从当前行到最后一行的所有行末加上`# your comment
分屏操作(打开和关闭分屏是在末端模式下操作的)
ctrl+w : 循环切换分屏,类似于Alt+Tab
ctrl+w+h : 切换到左边屏幕
ctrl+w+j : 切换到下边屏幕
ctrl+w+k : 切换到上边屏幕
ctrl+w+l : 切换到右边屏幕
ctrl+w+= : :均分分屏
5、末端模式下常用命令(命令行模式下按:进入)
显示行号:
set nu (临时性的显示行号);
补充:如果想永久的显示行号,退出vim(怎么退出?看下面讲到的退出命令),然后
vi ~/.vimrc接着在这个文件的最后加上set nu 保存退出
退出vi:
w 保存但不退出
w! 强制保存但不退出
wq 保存文件并退出vi
wq! 强制保存文件,并退出vi
q 不保存文件,退出vi
q! 不保存文件,强制退出vi
助记:w就是保存,q就是退出(不保存的哦),!就是强制的意思,剩下的就靠它们之间的组合啦
saveas+文件路径 : 将文件另存到文件路径中
搜索:
输入"/你要找的字符串",再按回车进行查找,如:/myname 、/abc,再按回车即可进行查找
补充:按n往后找,按N往前找
多文件操作:
e+文件名字 :打开一个文件,这样就不用退出vim就能继续编辑另一个文件了
ls :查看当前打开的文件
bn :打开下一个文件
bp :打开上一个文件
buffer+文件序号 :打开指定序号的文件,如buffer 2
分屏操作:
sp:水平分屏
vs:垂直分屏
sp+文件路径:屏幕水平切分并打开一个新文件
vp+文件路径:屏幕垂直切分并打开一个新文件
close :关闭分屏
6、编辑模式下常用命令
vi+文件名进来的都是命令行模式,须由命令行模式输入a、i、o进入编辑模式,什么叫编辑模式?就像我们平时在window下编辑文本那样啦
a 在你光标的后一个字母开始编辑
i 在你光标的当前位置开始编辑(和a差不多了,只是差了一个字母的位置,a可以理解为append,追加的意思,追加肯定是在后面的咯,i可以理解为insert,插入当然是在当前位置插入了)
o(O的小写,不是零) 在光标所在行的下面另起一新行插入
O(O的大写,不是零) 在光标所在行的前一行插入
最后最后注意三种模式的切换:编辑好了,要保存的话,记得先按ESC进入命令行模式,再进入末端模式进行保存哦,即接着 :wq ;同理从末端模式进入编辑模式要先按ESC进入命令行模式再按a i o中的任意一个进入编辑模式