Linux之vim编辑器

发布时间:2023年12月25日

目录

vim编辑器?

vim编辑器指令

命令模式指令

光标相关

移动光标相关

文本操作

底行模式指令

插入模式

vim配置


?面试官:小伙子,你是用什么环境编写代码的?

小明:vs2019

面试官:小伙子,你是用什么环境编译代码的?

小明:vs2019

面试官:小伙子,你是用什么环境调试代码的?

小明:vs2019

面试官:小伙子,你是用什么环境运行,发布代码的?

小明:vs2019

通过一个有趣的事例引入今天的主题--------vim编辑器。

vim编辑器?

我们知道,一份合格的代码要进行几个阶段:编写,编译,调试,运行,发布。在windows环境中,有很多比较nb的软件可以将这五个阶段一起搞定,什么idea,vs2019等等,我们称这些软件为集成开发环境,但是在linux操作系统中,这几种阶段却分别由不同的工具来完成,今天我们要学习的vim编辑器,完成的就是代码的编写工作

vim编辑器:一种类似于windows中记事本的工具,可以完成代码的编写且只能完成代码的编写。

vim的三种模式命令模式插入模式底行模式 。在打开vim编辑器时,默认处于命令模式。

vim编辑器指令

命令模式指令

光标相关

光标就是打开vim编辑器之后可以看到一个很显眼的鲜艳标志就是图标。图示如下:

H,J,K,L:除了键盘上原始的上下左右键外,这四个字母分别代表左(H),下(J),上(K),右(L)四个方向。

移动光标相关

shift + ^:移动至行首。

shift + $:移动至行尾。

gg:移动至起始行

?shift + g:移动至末尾行。

n+shift+g:切换至指定行。

下图从第14行切换至第2行:

b/w:以单词为单位向前移动或者向后移动。

文本操作

yy:复制当前行。

nyy:复制包含当前行以及当前行之后的n-1行。

u:撤销上一操作。

ctrl+r:撤回撤销上一操作的操作。

p:粘贴。

dd+p:实现剪切功能。

np:一次粘贴复制行数的n倍行。

dd:删除当前光标所在行。

ndd:删除当前行在内的总共n行。

shift+~:实现大小写转换。

x:从左向右删除光标之后的一个字符。

nx:从左向右删除光标之后的n个字符。

X:从右向左删除光标之前的一个字符。

nX:从右向左删除光标之前的n个字符。

r:替换光标位置的一个字符。

nr:替换包括光标位置及光标位置之后的n个字符。

shift+r:进行多个字符的替换。

底行模式指令

我们进入vim编辑器时,默认是底行模式,我们可以使用shift+:组合键进入底行模式。

底行模式快捷键:

set nu:设置行号。

set nonu:取消行号。

vs? 文件名:进行多文件操作。

ctrl+w:进行多个文件之间的光标的切换,进入多文件之后,如果要退出,可以先进行单文件的退出。

w:保存文件。

w!:强制保存。

q:退出。

q!:强制退出。

wq!:强制保存退出。

插入模式

插入模式在进入vim编辑器之后默认是命令模式,然后按i键进入插入模式。

命令模式如下:

插入模式如下:

插入模式就是我们一般在记事本中的模式,除了不能用鼠标之外其实本质和记事本没有什么区别。

注意:不管是什么模式,只要按了ESC键,都会进入指令模式,只有在指令模式之下才可以切换底行模式,底行模式和插入模式不可以互相转换。

vim配置

一般的默认的vim编辑器如下:

默认状态下是一片空白,我们可以对.vimrc文件进行vim配置,使得vim编辑器更美观高效。

注意:默认在每个用户的工作目录之下,可以使用cd~指令切换到用户的工作目录,然后使用ls -al查看隐藏文件,如果没有.vimrc文件,需要自己进行创建。?在/etc/下面有默认的.vimrc文件,配置之后所有用户有效,但是不建议对该文件进行配置,应该在用户各自的目录下的文件中进行配置,配置之后,vim中的样式是互不相干的,root配置之后也不影响其它用户。

打开.vimrc文件,写入下列两行代码,保存之后,我们与上述vim原本编辑器进行对比:

set nu
set cursorline

我们发现,相较于之前,显示了行号,并且可以更清楚的看见所在行。 还有其它的指令,大家可以在网上自行搜索下载。

为了省事,大家可以运行下述指令,可以是vim变成类似vs2019的集成开发环境,原文地址如下:

Gitee 搜索 - Gitee.com

最终根据最后提示的指令完成安装,或者重启xshell即可完成安装。

使用vim编辑器更改添加?

以上便是vim编辑器的所有内容,本期内容到此结束^_^

文章来源:https://blog.csdn.net/qq_55958734/article/details/135185082
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。