vim编辑器--使用详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim编辑器--使用详解相关的知识,希望对你有一定的参考价值。
vim编辑器
1.基本模式:
编辑模式,命令模式
输入模式;
末行模式;
2.打开文件,模式间转换
#vim [OPTION]... FILE...
+#:打开文件后,直接让光标处于第#行的行首
-/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首;
模式转换:
编辑模式 --> 输入模式
i:insert,在当前光标所在处输入
a:append,在当前光标所在处的后边输入
o:open,在当前光标的下面新开一行输入
I:在当前光标所在行的行首输入
A:在当前光标所在行的行尾输入
O:在当前光标所在行的上面新开一行输入
输入模式 --> 编辑模式
ESC
编辑模式 --> 末行模式
:
末行模式 --> 编辑模式
ESC(正常按2次,按1次反应很慢)
关闭模式:
:q 没有任何修改的时候,在末行模式退出
:q! 不保存做出的修改,强制不保存不退出
:wq 保存做出的修改,保存退出
:x 保存退出
:w /PATH/SOMESWHERE 保存到指定的地方
ZZ 在编辑模式,直接保存退出,无需切换到末行模式再保存退出
3.光标跳转
字符间跳转
h:向左
j:向下
k:向上
l:向右
单词单跳转
w:跳转到下一个单词的词首
e:跳转到当前或下一个单词的词尾
b:跳转到当前或上一个单词的词首
行首行尾跳转
^:跳转到当前行的行首
0:跳转到当前行的行着
$:跳转到当前行的行尾
行间移动
G:跳转到最后一行
#G:跳转到第#行
1G,gg:跳转到首行
4.vim的编辑命令
字符编辑
x:删除当前光标所在处的字母
#x:删除当前光标所在处,向后数的第#个字符
xp:交换当前光标所在处与其后面字符的交换
r:replace,按下r键,再按a键,表示把当前光标所在处的字符替换为a
删除命令:
d:删除命令,可以结合光标跳转字符,实现范围内删除
d$:删除当前光标所在处至行尾的内容
d^,d0:删除当前光标所在处至行首的内容
dd:删除当标所在行一整行
#dd:实现在多行删除,以当前光标所在行为起始
dw:
de:
db:
粘贴命令(p,put,paste):
p:缓冲区存的如果为事先,则粘贴在当前光标所在行的下方;否则,粘贴至光标所在处的后面
p:缓冲区存的如果为事先,则粘贴在当前光标所在行的上方;否则,粘贴至光标所在处的后面
复制命令(y,yank):
y:复制,工作行为类似于d命令
y^:复制当前光标所在处至行首
y0:复制当前光标所在处至行首
y$:复制当前光标所在处至行尾
yy:复制当前光标所在行的一整行
#yy:实现多行复制,以当前光标为起始
yw:
ye:
yb:
改变命令(c,change):
c:修改
编辑模式 --> 输入模式
c$:修改光标处至行尾,直接把光标所在处至行尾的内容删除,并变为插入模式
c^:修改光标处至行首,直接把光标所在处至行首的内容删除,并变为插入模式
c0:修改光标处至行首,直接把光标所在处至行首的内容删除,并变为插入模式
cw:
cb:
ce:
cc:修改整行,并变为插入模式
撤消此前的编辑(u,undo):
u:撤消前一次的操作
#u:撤消此前指定次数的操作
撤消此前的撤消:即使用u撤消之前的操作后,又后悔了,想要变回来
ctrl+r
重复前一个编辑动作:
.
可视化模式:
v:按字符选定
V:按行选定
注意:经常结合编辑命令,实现多行删除,复制等
翻屏操作:
ctrl+f:向文件尾部翻一屏
ctrl+b:向文件首部翻一屏
ctrl+d:向文件尾部翻半屏
ctrl+u:向文件首部翻半屏
5.vim中的末行模式
内建的命令行接口
(a)地址界定
:start_pos,end_pos
#:具体第#行,例如2表示第2行
#,#:从第几行开始到第几行
#,+#:从第几行开始加几行
.:点表示当前行
$:表示最后一行
$-1:表示倒数第2行
%:表示全文,等于1,$
/pat1/,/pat2/
从第一次被模式pat1匹配开始,到第一次被模式
以上是关于vim编辑器--使用详解的主要内容,如果未能解决你的问题,请参考以下文章