【二、玩转vim(vi)编辑器】三大模式及命令介绍、如何通过配置文件.vimrc配置vim编辑器(一)

简介: 【二、玩转vim(vi)编辑器】三大模式及命令介绍、如何通过配置文件.vimrc配置vim编辑器

一、vim三大模式的关系以及如何配置vim为默认编辑器

1. 三种模式的切换

vim编辑器有三个模式:命令模式(command mode)、插入模式(Insert mode)也叫做编辑模式、末行模式(last line mode)也叫底行模式。我们在shell下输入命令vi或者vim加要编辑的文件名就可以进入vi或vim编辑器(我们一般使用vim,因为vim是vi的加强版,功能更为强大)。

我们在shell下初次进入vim是进入到vim的命令模式,在命令模式下按a/i/o/s等插入键进入插入模式,插入模式下按ESC回到命令模式。在命令模式下按 : 进入末行模式,末行模式下按两次ESC回到命令模式。末行模式和插入模式之间不能直接切换。

2. 配置vim为默认编辑器

我们在shell下敲击命令vim就可以进入vim编辑器,敲击vi默认是进入vi编辑器。我们也可以通过过配置,当输入vi的时候也进入vim编辑器,有两种方法。

① 通过别名设置

alias vi="vim"

非常简单,通过别名实现,一句话搞定。

② 执行下列指令

1. sudo update-alternatives --install /usr/bin/editor editor /usr/bin/vim 1
2. sudo update-alternatives --set editor /usr/bin/vim
3. sudo update-alternatives --install /usr/bin/vi vi /usr/bin/vim 1
4. sudo update-alternatives --set vi /usr/bin/vim

二、vim三种模式下的命令介绍

学习vim可以使用官方的教程,在shell下输入命令就能查看vim教程

vimtutor

通过上下键就可以翻页学习。

1. vim的命令模式(command mode)

在shell下通过vim进入vim编辑器后就是命令模式,在命令模式下按下的键都会当作命令去执行,命令模式界面如下,最低下一行会显示文件名和当前光标所在行号。

(1)移动光标

最基本的上下左右移动,可以在教程中看到,四个方向键和k/h/j/l四个字母键。

光标移动相关的命令如下表所示:

命令 作用
h/左键 光标左移一个字符
j/下键 光标下移一个字符
k/上键 光标上移一行
l(小写L)/右键 光标下移一行
0 (数字0) 移动到光标所在行行首
$ (shit + 4) 移动到光标所在行行尾
gg 移动到整个文件的首部(文件的第一个字符处)
shift+g   (G)

移动到整个文件的尾部

(G可以是shift+g,也可以是CapsLk开启大写键后直接按G键)

n shift+g   (nG)

移动到第n行

(先按数字键指定n,然后按住shift键不放,同时按g键)

(2)复制、粘贴、删除、剪切

① 删除与剪切

之所以把删除和剪切放在一起,是因为删除的内容会放在剪切板上,可以通过粘帖把剪切板(刚删除)的内容粘帖回来,这样删除就起到了和剪切一样的效果。其实,删除就是剪切,剪切就是删除,如果删除后不粘帖那就是删除,如果删除后进行粘贴操作,那就是剪切。

命令 作用

x  (小写x)

删除光标后面的字符
d+l(小写L)/右键
shift+x (大写X)

删除光标前面的字符

(X可以是shift+x,也可以是CapsLk开启大写键后直接按X键)

d+h/左键
d+方向键(箭头或hjkl) 删除相应方向的字符或行(不建议用)
dw 删除光标所在位置到光标所在单词的尾部
d shift+4  (d+$)

删除光标所在位置一直到行尾

(D可以是shift+d,也可以是CapsLk开启大写键后直接按D键)

shift+d  (D)
dd 删除一整行
ndd 删除光标所在行开始的n行

操作演示:

dw删除指令演示

ndd命令演示,先按数字键,然后快速按两次d键

② 复制与粘贴

粘贴操作既可以在复制后进行,也可以在删除(剪切)后进行

命令 作用
yy 复制光标所在行到剪切板
p (小写p) 将剪切板内容粘贴到光标所在位置的下一行
P (大写P) 将剪切板内容粘贴到光标所在位置的上一行

通过粘贴前后对比可以看到,粘贴会新开辟一行然后把剪切板内容复制到新开辟的这一行,而不会把原来的上一行或下一行覆盖掉,原来的下一行变为粘贴行的下一行。

(4)查找命令

比如要查找文件内所有的string

命令 用法及解释
/ 命令模式下,直接输入 /string ,回车,从文件顶部开始查找文件内所有string并高亮显示
? (shift+/) 命令模式下,直接输入?string,回车,从文件底部开始查找文件内所有string并高亮显示
# 把光标移动到要查找的字符串string上,按#便可以查找所有string并高亮显示
n 向下遍历查找到的字符串(依次选中下一个高亮显示的string)
N (shift+n) 向上遍历查找到的字符串(依次选中上一个高亮显示的string)

① / 与 n 用法演示(?与N同理)

当我们按下 / 后,在最下面会变成这样

然后在 / 后面输入需要查找的字符串

按回车键可以看到,所有的printf都已经高亮显示了

按一下n可以发现,光标移动到下一个高亮显示的printf处了

② #用法演示

把光标停在要查找的字符串处,按#即可高亮选出所有,通过n和shift+n可以在被选出的字符串之间遍历。

(5)替换命令与替换模式

命令 作用
r 在输入一个字符c,就可以将光标后面的一个字符替换为c
shift+r (R) 进入替换模式
Esc 退出替换模式

① 替换单个字符

找到要替换的字符,把光标停在字符前面,按r,在输入需要替换成的目标字符就可以替换成功。

② 进入替换模式

按 shift+r 也就是R就可以进入替换模式,这时会在最下面显示替换二字

现在就可以通过上下左右键来移动光标,并输入字符替换光标后面的字符,直到按Esc键退出替换模式。

(6)可视化模式

命令模式下按v就可以进入可视模式,我们在前面讲的复制粘贴删除等等操作只能是按行、按单词或者按字母操作,在可视模式下,我们可以通过选中来操作自己需要的任意个字符。可视模式的作用相当于Windows下,你按住鼠标左键并拖动,这样一个选中功能,然后在对选中的内容进行操作。

命令 作用
v 命令模式下按v进入可视模式,通过移动光标来选中内容
y 复制
d 删除(剪切)
p 在光标位置后面粘贴
P (shift+p) 在光标位置前面粘贴

操作演示:

按下v的时候就相当于按下了鼠标的左键,通过方向键移动光标就相当于移动鼠标来选中内容,然后对选中的内容操作。

首先在命令模式下按一下v(按完就松开,不用像鼠标一样一直按着),然后按左键和下键选中几行内容

等需要的内容全部被选中后,按y进行复制,然后移动光标到需要粘贴的位置,按p

复制完成,如果需要再次操作,在按一下v,然后进行上面的操作。


相关文章
|
2月前
|
Dart 搜索推荐 IDE
Windows下Zed编辑器配置Dart环境
本文介绍了Dart编程语言及其主要框架Flutter的优势,并推荐使用轻量级编辑器Zed进行Dart开发。详细步骤包括Dart环境的安装与配置,Zed编辑器的安装与个性化设置,以及如何在Zed中编写并运行Dart的HelloWorld程序。通过自定义任务实现Dart文件的快速运行,提高了开发效率。
|
6月前
|
开发工具
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
|
3月前
|
运维 Java Linux
【运维基础知识】掌握VI编辑器:提升你的Java开发效率
本文详细介绍了VI编辑器的常用命令,包括模式切换、文本编辑、搜索替换及退出操作,帮助Java开发者提高在Linux环境下的编码效率。掌握这些命令,将使你在开发过程中更加得心应手。
45 2
|
5月前
|
开发工具
vim编辑器常用命令
vim编辑器常用命令
105 1
|
5月前
|
Linux 开发工具
成功解决:CentOS 7中如何配置修改Vim
这篇文章介绍了如何在CentOS 7系统中配置和修改Vim编辑器的设置。文章首先指导读者如何检查Vim是否已经安装,如果未安装完全,提供了安装Vim的命令。接着,文章详细说明了如何编辑`/etc/vimrc`文件来配置Vim,包括设置显示行号、显示当前模式、光标位置信息、自动缩进和语法高亮等。最后,文章通过对比展示了配置前后使用vi和vim打开相同文本的效果差异,强调了Vim配置后的优势。
成功解决:CentOS 7中如何配置修改Vim
|
5月前
|
数据采集 运维 监控
运维笔记:流编辑器sed命令用法解析
运维笔记:流编辑器sed命令用法解析
76 5
|
6月前
|
JSON JavaScript 数据格式
文本-----wangEditor的使用,设置和获取内容,展示HTML无样式怎么办????console同步展示怎样写,Vue的配置在Vue3配置文件中的配置,是editor中的v-model绑定的值
文本-----wangEditor的使用,设置和获取内容,展示HTML无样式怎么办????console同步展示怎样写,Vue的配置在Vue3配置文件中的配置,是editor中的v-model绑定的值
|
6月前
|
网络协议 Linux 开发工具
配置Linux固定IP地址,为什么要固定IP,因为他是通DHCP服务获取的,DHCP服务每次重启都会重新获取一次ip,VMware编辑中有一个虚拟网络编辑器
配置Linux固定IP地址,为什么要固定IP,因为他是通DHCP服务获取的,DHCP服务每次重启都会重新获取一次ip,VMware编辑中有一个虚拟网络编辑器
|
6月前
|
Linux 开发工具 数据安全/隐私保护
【linux】如何优雅的使用vim编辑器
【linux】如何优雅的使用vim编辑器
|
7月前
|
XML 前端开发 Shell
技术心得记录:我的VIM配置
技术心得记录:我的VIM配置
39 0