vim最实用的操作命令

          笔者只记录最常用的vim命令,相信也很少有人能够将其全部记住,毕竟这只是一个编辑工具。也不值得我们投入大量的精力。只求以最小的精力,尽可能满足我们的需要。

目录

一. vim常用模式

二.vim打开方式

三.vim文档操作

四.光标移动

五.vim文本插入

六.查找替换

7.多文件编辑

七.撤销与重做

八.文件加密

九.文件编码


一. vim常用模式

正常模式:按:即可进入,此模式下可输入命令进行操作

插入模式:按 i ,可对内容进行编辑,在光标处进行插入,退格以及回车操作

可视模式:按v以字符精度进行选中,按V以行精度进行选中,ctrl+v以块精度进行选中。

                  可视模式下可进行d删除,y复制,p黏贴

​​​​​​​二.vim打开方式

vim file  正常打开

vim + file 从文件的末尾开始

vim num file 从某一行开始

三.vim文档操作

:w 保存修改

:wq 保存并退出

:q 退出

:q! 强制退出

:e file  关闭当前文件,并打开其他文件

:e! file  放弃对当前文件的修改,编辑新的文件。

:e#或ctrl+^   回到上一个编辑的文件

:Sex  水平分割,并浏览文件系统。在文件系统回车直接进入vim模式

:Vex  垂直分割

四.光标移动

(1)基本移动

0 移动到行首

shift + 4 移动到行尾

gg 文件头部

G 文件尾部

ctrl+f: 下翻一屏。

ctrl+b: 上翻一屏

ctrl+e: 向下滚动一行。

ctrl+y: 向上滚动一行

(2)标记

m{a-z}: 标记光标所在位置,局部标记,只用于当前文件。

m{A-Z}: 标记光标所在位置,全局标记。标记之后,退出Vim, 重新启动,标记仍然有效。

`{a-z}: 移动到标记位置。

:marks 显示所有标记

:delmarks a 

:delmarks!  删除所有标记

五.vim文本插入

指定数量插入字符 eg:按8,再按i,进入插入模式,输入=, 按esc进入命令模式,就会出现8个=。 这在插入分割线时非常有用,如30i+<esc>就插入了36个+组成的分割线。

o: 在下面新建一行插入;

O: 在上面新建一行插入;

:r filename在当前位置插入另一个文件的内容。

:r !date 在光标处插入当前日期与时间。同理,:r !command可以将其它shell命令的输出插入当前文档。

六.查找替换

:/something: 在后面的文本中查找something

:?something: 在前面的文本中查找something。

n: 向后查找下一个。

N: 向前查找下一个

:s/old/new - 用new替换当前行第一个old。

:s/old/new/g - 用new替换当前行所有的old。

7.多文件编辑

分屏编辑

vi -o filenames 在水平分割的多个窗口中编辑多个文件。

vi -O filenames 在垂直分割的多个窗口中编辑多个文件。

ctrl+w 窗口切换

qall – 关闭所有窗口,退出vim。

:wall – 保存所有修改过的窗口。

:only – 只保留当前窗口,关闭其它窗口。

ctrl+w + –当前窗口增高一行。也可以用n增高n行。

ctrl+w - –当前窗口减小一行。也可以用n减小n行。

ctrl+w < –当前窗口减少一列。也可以用n减少n列。

ctrl+w > –当前窗口增宽一列。也可以用n增宽n列。

多标签编辑

vim -p files: 打开多个文件,每个文件占用一个标签页。

tabn – 切换到下一个标签。Control + PageDown,也可以。

:tabp – 切换到上一个标签。Control + PageUp,也可以。

七.撤销与重做

[n] u: 取消一(n)个改动。

:undo 3– 撤销3个改变。

:undolist – 你的撤销历史。

ctrl + r: 重做最后的改动。

U: 取消当前行中所有的改动。

:earlier 3m – 回到3分钟前

:later 5s – 前进5秒

八.文件加密

vim -x file: 开始编辑一个加密的文件。

:X – 为当前文件设置密码。

:set key= – 去除文件的密码

九.文件编码

:e ++enc=utf8 filename, 让vim用utf-8的编码打开这个文件。

:w ++enc=gbk,不管当前文件什么编码,把它转存成gbk编码。

:set fenc或:set fileencoding,查看当前文件的编码。

在vimrc中添加set fileencoding=ucs-bom,utf-8,cp936,vim会根据要打开的文件选择合适的编码。 注意:编码之间不要留空格。 cp936对应于gbk编码。 ucs-bom对应于windows下的文件格式。

猜你喜欢

转载自blog.csdn.net/qq_18887855/article/details/81158134
今日推荐