vim三种模式下的小技巧,提高一半工作效率

Posted Java识堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim三种模式下的小技巧,提高一半工作效率相关的知识,希望对你有一定的参考价值。

1
vim打开文件的几种方式


命令 作用
vim +n filename 打开文件,并定位到第n行
vim + filename 打开文件,并定位到最后一行
vim +/pattern filename 定位至第一次被pattern匹配到的行的行首


按行或pattern,可以快速打开到配置文件错误的地方,或者日志中报错的地方。

如从监控系统,或者邮件收到报错信息时,直接根据时间定位到相应的日志位置

vim +/"2019-02-17 23:01:49.994" server.log


2
vim的三种模式


命令模式(command mode)


命令模式是Vim的默认操作模式,当使用vim命令打开一个文件时,默认进入的就是命令模式。不管用户处于何种模式,只要按下Esc键就可使进入命令行模式


编辑模式(input mode)


只有在vim编辑模式下,才能将键盘键入的内容输入到当前打开的文件中


尾行模式(last line mode)


尾行模式主要用于保存文件或退出Vim,同时也可以设置编辑环境和一些编译工作,如列出行号(set nu)、寻找字符串(/target)等


在命令模式下,用户按冒号键(:)即可进入末行模式下,此时Vi会在显示窗口的最后一行显示一个”:“作为末行模式的提示符,等待用户输入命令


三种模式的切换如下图


3
命令模式下的常用命令


光标移动命令


上 下 左 右

用键盘上的方向键也可,看个人习惯,这种方式比较省时间


命令 作用
h
j
k
l


行级移动


命令 作用
0 移动光标到当前行行首
$ 移动光标到当前行行尾
^ 移动光标到当前行的第一个非空字符
nG或者ngg 移动光标到当前文件的第n行
:n 移动光标到当前文件的第n行 (同上)


文件首尾移动


命令 作用
gg 或 :0 移动光标到当前文件的第一行
G 或 :$ 移动光标到当前未经的最后一行


翻页


命令 作用
Ctrl + b 向前滚动一页
Ctrl + f 向后滚动一页
Ctrl + u 向前滚动半页
Ctrl + d 向后滚动半页


文本编辑命令


插入

在命令模式下按以下按键可进入编辑模式,执行插入操作,具体包括:


命令 作用
a 在当前光标所在字符的后面开始插入
A 在当前光标所在行的行尾开始插入
i 在当前光标所在字符的前面 开始插入
I 在当前光标所在行的行首开始插入
o 从光标当前所在行的下一行处开始插入
O 从光标当前所在行的上一行处开始插入
s 删除当前光标所在的字符开始插入
S 删除当前光标所在的行开始插入


删除


命令 作用
x 删除当前光标所在的字符
X 删除当前光标所在字符的前一个字符
dd 删除/剪切光标所在的行


复制 粘贴


命令 作用
yw 复制从光标所在位置到当前【单词结束】部分的内容
yy 复制光标所在【行】的所有字符 (包含换行符)
p 将最后一次删除或复制操作的文本内容粘贴到光标所在字符之【后】
P 将最后一个删除或复制操作的文本内容粘贴到光标当前字符之【前】


撤销 反撤销


命令 作用
u 撤销最近的一次操作
<Ctrl> + r 恢复最近的一次操作(取消撤销)


多次执行u 命令可以连续撤销最近的操作,多次执行Ctrl+r可以连续取消撤销


查找命令


基本搜索

在Vim命令模式下,输入 / 或 ? 符号就进入了搜索模式,/ 用于正向往下搜索,? 用于反向往上搜索


命令 作用
n 查找下一个
N 查找上一个


正则表达式搜索

为了更好的进行搜索,Vim支持正则表达式,最基本的正则表达式规则包括:


符号 含义
^ 表示一行的开头
$ 表示一行的结尾
. 表示任意一个字符
* 匹配0次或n次


如查找行首为test的行,命令模式下输入如下即可


/^test


4
尾行模式下的命令


命令 作用
:w 保存文本
:q 退出vim,没有修改过文件
:w! 强制保存,在root用户下,文件只读也可保存
:q! 强制退出,所有改动不生效
:wq 保存并退出
:x 保存并退出
ZZ 等同于:wq
:set nu 显示行号
:set nonu‍‍ 不显示行号
:set readonly 设置只读


推荐阅读:






Java识堂

以上是关于vim三种模式下的小技巧,提高一半工作效率的主要内容,如果未能解决你的问题,请参考以下文章

7种提高工作效率的Vim操作-Vim使用技巧

两个成倍提高工作效率的 Vim 使用技巧

两个成倍提高工作效率的 Vim 使用技巧

提高工作效率的小技巧

linux下vim的使用以及高效率的技巧

linux下vim的使用以及高效率的技巧