🔥博客主页:小王又困了
📚系列专栏:Linux
🌟人之为学,不日近则日退
❤️感谢大家点赞👍收藏⭐评论✍️
目录
一、vim的基本概念
📒1.1命令模式
📒1.2插入模式
📒1.3底行模式
二、vim的基本操作
📒2.1进入vim
📒2.2模式转换
📒2.3退出vim
三、命令模式命令集
📒3.1移动光标
📒3.2复制粘贴
📒3. 3删除文字
📒3.4撤销
📒3.5替换
四、底行模式命令集
📒4.1调出行号
📒4.2保存退出
📒4.3多文件操作
📒4.4命令执行
📒4.5查找字符
五、vim的配置
📒5.1配置文件的位置
📒 5.2vim常用配置选项
🗒️前言:
本期给大家介绍的工具是vim,它是多模式编辑器,vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、 windows。
一、vim的基本概念
我们先介绍 vim 的三种模式,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
📒1.1命令模式
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者进入底行模式。
📒1.2插入模式
只有在插入模式下,才可以做文字输入,按ESC键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
📒1.3底行模式
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下输入,shift + ' : '即可进入底行模式。
注意:要查看你的所有模式:打开vim,底行模式直接输入help vim-modes。
二、vim的基本操作
📒2.1进入vim
指令:
- vim code.c
在系统提示符号输入vim加文件名称后,就进入vim全屏幕编辑画面。打开vim默认是命令模式,命令模式下所有的输入都被当成命名,所以我们敲击键盘,屏幕不会显示字符,想要显示字符,我们要切换为插入模式,接下来就让我们看看怎么切换模式。
注意:如果vim后的文件不存在,系统会生成一个新文件并进入编辑画面。
📒2.2模式转换
🎀「命令模式」切换为「插入模式」
从命令模式切换为插入模式,可以输入 a 或 o 或 i ,它们三个的区别在于,进入插入模式后光标的位置不同。
- 输入 a :进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字
- 输入 o :进入插入模式后,是插入新的一行,从行首开始输入文字
- 输入 i :进入插入模式后,是从光标当前位置开始输入文件
🎀「插入模式」切换为「命令模式」
点击键盘上的Esc键,就可以退回到命令模式。(所有模式退到命令模式都是按Esc)
🎀「命令模式」切换为「底行模式」
- 点击shift + ; ,其实就是输入:。
插入模式无法直接进入底行模式, 因为插入模式下所有的输入都会被当成文本输入,没有被解释成命令。
📒2.3退出vim
要退出vim要在底行模式下进行,在命令模式下输入下「:」即可进入底行模式,输入q退出vim。
- :w :保存当前文件
- :wq:保存并退出vim
- :q!:不保存,强制退出vim
三、命令模式命令集
📒3.1移动光标
- $ :移动到光标到所在行的行尾
- ^ :移动到光标到所在行的行首
- gg:移动到光标到文本开始
- G :移动到光标到文本末尾
- w :光标移动到下个字的开头(可以配合n,一次跳过n个单词)
- b :光标移动到上个字的开头(可以配合n,一次跳过n个单词)
- h 、 j 、 k 、 l :以字符为单位,进行左、下、上、右移动
📒3.2复制粘贴
- yy:复制光标所在行到缓冲区
- p :将缓冲区内的字符贴到光标所在行的下一行位置。
- n+yy:n是任意数字,从光标所在行开始,复制n行
- n+p:n是任意数字,将缓冲区的的字符粘贴n份
注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
📒3. 3删除文字
- dd:删除光标所在行
- n+dd:从光标所在行开始删除n行
- x :删除光标所在位置的一个字符
- n+x:删除从光标位置开始的n个字符
- X :删除光标所在位置的前一个字符
- n+X:删除从光标位置开始的前n个字符
注意:dd完如果不p的话就是删除,如果p的话就是剪切。
📒3.4撤销
- u :回到上一个操作,按多次可以执行多次回复
- ctrl+r:撤销的恢复
📒3.5替换
- shift + ~:快速更换大小写
- r :替换光标所在字符,点击r后,再点输入待替换的字符
- n+r:把从光标位置开始的n个字符全部替换成目标字符
- R :替换光标所到之处的字符,直到按下Esc键停止
四、底行模式命令集
在使用底行模式之前,请记住先按ESC键确定已经处于命令模式,再按冒号即可进入底行模式。
📒4.1调出行号
- set nu:调出行号,在文件每一行前面列出行号
- set nonu:取消行号
📒4.2保存退出
- w :保存
- w!:强制保存
- q :退出
- q!:强制退出
- wq:保存并退出
- wq!:强制保存并退出
📒4.3多文件操作
- vs 文件名:实现多文件分屏
- ctrl+w+w:实现光标在分屏多文件之间的切换
注意:光标在哪个界面,我们就在编辑哪一个界面,底行也是一样。
📒4.4命令执行
- !command:在底行模式下执行命令
在!后直接跟shell命令就可以执行 。
📒4.5查找字符
- / 关键字:先输入 / ,在输入你先更要查找的字符,如果第一次找的不是你想要的,可以一直按n,会继续往后寻找你想要的。
- ?关键字:先输入 ? ,在输入你先更要查找的字符,如果第一次找的不是你想要的,可以一直按n,会继续往后寻找你想要的。
五、vim的配置
没有配置的vim,在插入模式下写代码的时候,没有任何语法提醒,也没有自动补全功能,使用起来比较笨重。要实现在写代码的时候给出提示,需要我们自行对vim进行配置。
📒5.1配置文件的位置
配置项一般都放在用户家目录下,我们在家目录下建立私有的配置文件,命名为.vimrc。如果/root目录下,已经存在一个.vimrc文件,就不用创建。
示例:
1. 我们先进入配置文件,给配置文件中加入,调出行号的选项set nu
2. 再用vim打开文件,就可以看见,文本每一行的前面都有了行号
以上就是配置vim的基本原理,即:将自己所需要的配置项,写入配置文件.vimrc中就行。
在每一个用户自己家目录下配置的vim不会影响的其他普通用户,只对当前用户有效。而在/ect/目录下的.vimrc属于系统公共的vim配置文件,对所有用户都有效,一般不建议对公共的配置文件进行修改。
📒 5.2vim常用配置选项
set nu //设置行号
syntax on //语法高亮
set showmode //底部显示当前处于什么模式
set cursorline //显示行号下划线
set shiftwidth=4 //设置缩进的空格数为4
……
本次的内容到这里就结束啦。希望大家阅读完可以有所收获,同时也感谢各位读者三连支持。文章有问题可以在评论区留言,博主一定认真认真修改,以后写出更好的文章。你们的支持就是博主最大的动力。