🎉博主首页: 有趣的中国人
🎉专栏首页: Linux
小伙伴们大家好,本片文章将会讲解Linux编辑器------Vim使用的相关内容。
如果看到最后您觉得这篇文章写得不错,有所收获,麻烦点赞👍、收藏🌟、留下评论📝,并关注💖作者。您的支持是我最大的动力,让我们一起努力,共同成长!
文章目录
Vim的基本概念和相关操作
Vim
的设计目标是提供强大的编辑功能,同时保持简洁和高效。它有着丰富的功能,包括语法高亮、自动补全、宏录制、分屏编辑等等 。Vim
有一个强大的插件系统,可以通过插件扩展其功能,使其适应各种开发环境和编程语言。
👨💻Vim的模式
Vim有好多种模式,但是我将主要讲解三种模式,这三种模式最基础,也最重要,分别是:
- 命令模式(command mode)
- 插入模式(insert mode)
- 底行模式(last line mode)
💻命令模式
命令模式下可以控制屏幕光标的移动,字符、字或行的删除 ,移动复制某区段及进入
Insert mode
下,或者到last line mode
。命令模式下相关操作:
用命令
vim [文件名称]
即可进入到vim编辑器,进入Vim时默认处于的模式就是命令模式 。
有关复制粘贴的行相关操作
「(n) + yy」
:复制当前行 (n:连续复制n行,可省略,默认一行)
「(n) + p」
:粘贴 ,当前光标的下一行 (n:表示粘贴n次,可省略,默认一行)
「u」
:撤销
「ctrl + r」
:反撤销 (对你的撤销进行撤销)
「(n) + dd」
:剪切/删除 指定行,(n:表示剪切/删除n行,可省略,默认一行)
有关光标移动的相关操作
「shift + 4 = $」
:将光标移动至此行末尾
「shift + 6 = ^」
:将光标移动至此行开头
「gg」
:将光标移动至整个文本的最开头
「shift + g = G」
:将光标移动至整个文本的最后一行
「n + shift + g = nG」
:将光标移动至文本的指定行
「(n) + h」
:将光标向左移动 (n可以指定移动步数,下面类似)
「(n) + j」
:将光标向下移动 (可以类比记忆:jump向下跳)
「(n) + k」
:将光标向上移动 (可以类比记忆:king国王)
「(n) + l」
:将光标向右移动
「w」
:按单词为单位将光标后移
「b」
:按单词为单位将光标前移
其他相关操作
「~」
:大小写的切换
「(n) + x」
:对光标位置后的元素进行删除 (n表示可以连续删除多个,行内)
「(n) + shift + x = nX」
:对光标位置前的元素进行删除 (n表示可以连续删除多个,行内)
「shift + r = R」
:进入替换模式 ,可以对光标当前位置的字符进行替换
「shift + zz = ZZ」
:保存并退出 (一般不这么用)
进入到其他模式下的相关操作进入插入模式
按
「i」
切换进入插入模式「insert mode」
,按"i"进入插入模式后是从光标当前位置 开始输入文件;按
「a」
进入插入模式后,是从目前光标所在位置的下一个位置 开始输入文字;
按「o」
进入插入模式后,是插入新的一行 ,从行首开始输入文字。进入底行模式
按
「shift + ; = :」
:进入底行模式
💻底行模式
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作 。 在命令模式下,
shift+; = :
即可进入该模式。底行模式下相关操作:
离开vim的相关操作
「w」
:在冒号输入字母「w」
就可以将文件保存起来
「q」
:按「q」
就是退出 ,如果无法离开vim
,可以在**「q」
后跟一个「!」
强制离开vim**
「wq」
:一般建议离开时,搭配「w」
一起使用,这样在退出的时候还可以保存文件
查找字符
「/关键字」
: 先按「/」
键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的 ,可以一直按「n」
会往后寻找 到您要的关键字为止
行号
「set nu」
: 输入「set nu」
后,会在文件中的每一行前面列出行号
「nonu」
: 输入「nonu」
后,会去掉行号
Shell命令执行
「!command」
:可以不退出vim,进行Shell命令的执行 ,例如用man来查看函数的用法,例如查看qsort
的相关用法:
分屏操作
我们正常写一个项目时要进行声明和定义的分离 ,即可能存在头文件,我们用命令「vs filename」
即可实现分屏,可以使用以下命令在分屏模式下进行切换
切换到下一个窗口 :
Ctrl + w
,然后按下w
。切换到上一个窗口 :
Ctrl + w
,然后按下W
。例如:
底行模式进入命令模式
从底行模式进入命令模式就按下Esc
即可。插入模式进入命令模式也是按下
Esc
即可。底行模式不能直接进入插入模式,插入模式也不能直接进入底行模式 ,只能通过命令模式这个中转站 然后再进行模式的相互切换。
💻总结
批量化注释和去注释
👨💻批量化注释操作
- 按
「ctrl + v」
进入视图模式; - 用
「h j k l」
进行区域的选择; - 按
「shift + i」
; - 在输入
//
; - 最后按两次
Esc
即可完成批量化注释。
👨💻批量化去注释操作
- 按
「ctrl + v」
进入视图模式; - 用
「h j k l」
进行区域的选择(仅包含//
); - 按住
d
即可完成去注释的操作。
普通用户的sudo提权
对于普通用户,没有权利进行sudo
的提权,因为对于一个用户能否进入sudo
提权,他是否有这个权限,是存在拥有者是root
的一个文件中的,这个文件时 /etc/sudoers
,如果想给普通用户有sudo
的提权权力,要在这个文件中添加普通用户,因此也是需要root
来进行操作的,所以这就是为什么sudo
提权的时候只需要输入普通用户的密码即可。
💻输入命令 vim /etc/sudoers 进入 sudoers 文件
在100行附近的如图位置,添加普通用户的权限即可。
注意这里修改后要强制退出wq!
就完成了
vim的配置问题
💻vim配置原理
在每次启动vim之前,vim都会读取若干的配置文件 ,例如
.vmrc
;我们可以在这个配置文件中添加相关的配置,例如 自动缩进,显示行号,那么在每次启动vim的时候都会读取此配置文件,就在你的vim中显示出来了。
💻查看.vmrc文件
因为此文件是 隐藏文件 ,所以用命令ls -al
查看:
因为我这里已经配置好了,就不进行配置了。
也可以用比特的开源项目进行一键配置,这是链接: 比特VimForCpp配置Vim
注意一定要在普通用户下进行配置,并且一定要是
centos7.X
的系统。
输入命令,即可一键配置(可以先看文档):
go
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
有关vim的异常退出
当Vim异常退出时,通常会生成一个称为"
.swp
"文件的隐藏文件。这个文件是Vim的会话恢复文件,用于存储你正在编辑的文件的临时状态。它包含了你最后一次编辑的内容,以便在下次启动Vim时恢复编辑会话。这个"
.swp
"文件通常以以下格式命名:".filename.swp
",其中"filename
"是你正在编辑的文件的名称。如果Vim异常退出,你可以尝试重新启动Vim,并在同一目录下查找以"
.swp
"结尾的文件,然后使用Vim的恢复功能来恢复丢失的编辑内容。
你可以删除这个文件(
.swp
结尾),他就不会提示了,也可以E继续编辑,R
恢复,Q
退出。
但是删除之后你没保存的内容就会消失,也就是说.swp
这个文件相当于是系统给你临时备份的一份,如果你想恢复文件,按照以下操作即可:
- vim filename.c
- 按R或者E恢复或者继续编辑
- :wq保存并退出;
- 删除.swp结尾的临时文件