Vim常用指令

Posted 怪兽N

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vim常用指令相关的知识,希望对你有一定的参考价值。

Vim命令模式

1 移动光标

0 光标移动到行首
$ 将光标移动到行尾vi 
PageUp/PageDown 上下翻屏
H Head 将光标移动到屏幕顶端
M 将光标移动到屏幕的中间
L 将光标移动到屏幕底端
w或W 将光标移动到下一个单词
G 将光标移动到文件尾行
gg 将光标移动到文章行首

2 复制粘

yy或Y 复制光变所在的整行 
2yy y2y 6yy 复制 n行
y^ y0 复制至行首,不含光标所在处字符
y$复制至行尾,含光标所在处字符
yw 复制一个word 是从光标所在位置开始复制
y2w 复制两个word
yG 复制至文件尾部(整行)
y1G复制至文件首部(整行)
p 粘贴到光标的下面,如果是复制整行,则粘贴到光标所在行的下一行
P 粘贴到光标的上面 如果复制的是整行,则粘贴到光标所在行的上一行

3 删除

x:删除一个字符
nx 删除n个字符
X 删除光标前的字符
dd 删除当前行
dG 删除至文末,整行,包含光标所在行
d1G 删除到文件首部,整行
D/d$ 删除至行末
d0 删除至行首uu
ndd 删除n行
dw 删除至词尾
ndw 删除n个词
nd$ 删除后面n行
u 撤销误操作命令

4 撤销

u 撤销上一个误操作命令
U 取消一行内的所有操作

5 输入模式

a: 表示在光标之后提插入内容
A: 表示在光标之前插入内容
i:在光标之前插入内容
I:在光标当前行的开始部分插入内容
o:在光标所在行的下面新增一行
O:在光标所在行的上面新增一行

6 退出保存

:w 保存当前文件
:q 结束vim程序。如果文件修改过则要先保存
:q!强制退出不保存
:wq 或:x 保存当前文件并退出
:e 文件名     将在原窗口打开新文件,如果旧文件编辑 过则会要求保存
:e! 放弃所有修改,重新编辑
:r 文件名    在当前光标下一行插入文件内容
:r! 命令    在当前光标的下一行插入命令执行的结果
:set nu :set nonu     显示行号,不显示行号
:number 将光标定位带number行
:[range]s/<match>/<string>/[g,c,i,e]
		 range  		100,300从100行至300行
 		1,$ 第一行到最后一行
s: 搜索
cd
match 要被替换的字符串
string 将替换match
c 每次替换前做一个确认
e 不显示error
g 做整行替换
i 忽略大小写

7 查询

/ 查询命令 使用方法是直接在命令模式下,输入‘/’,后面直接跟要找的内容即可
?查询命令,使用方法是直接命令模式下,输入‘?’后面直接跟要查找的内容即可
n:当/往下查找;当?往上查找
N:当/往上查找;当?往下查找

8 处理多个文件

1 在vim中打开另一个文件:
:edit 文件名 
打开另一个文件,并且同时关闭目前正在编辑的文件。如果此时我们对目前正在编辑的文件做了修改,则提示错误,让我们修改错误,要先输入:w 保存,然后才能:edit 文件名;如果没有对上一个文件修改,则直接跳到新文件
:edit! 表示对当前正在编辑的文件不做任何修改保存,直接退出,并打开新文件
:hide edit 文件名: 表示隐藏目前正在编辑的文件,直接进入新文件

2 文件列表(打开多个文件)

vim aa bb cc
:next 向下定位文件
:previous 向上定位文件
:next! 放弃对当前文件的修改 直接跳转到下一个文件
:wnext 表示先保存当前文件 在跳转到下一个文件
:write 
:next

9 查看文件列表

:args 表示查看的文件列表
:previous
:wprevious
:wprevious! 放弃对当前文件的修改 直接跳转到上一个文件
:last 跳转到最后一个文件
:first 跳转到第一个文件
:2next  连续跳转两个文件

10 自动保存

:set autowrite 自动保存
:set noautowrite 自动取消

编辑另外一个文件列表
:args add ee aaa

11 从一个文件跳转到另外一个文件:

Ctrls+^

12 多个文件编辑

:sp 横排显示多个窗口
:vsp 竖排显示多个窗口

以上是关于Vim常用指令的主要内容,如果未能解决你的问题,请参考以下文章

vim的常用指令

VIM操作常用指令(转)

vim常用指令

vim 常用指令总结

vim常用指令

Vim常用指令