Vim编辑器的基本操作

描述

 

前言

在代码的世界里,效率是永恒的追求。无论是新手开发者还是资深工程师,都渴望拥有一款能让自己如虎添翼的编辑器。而在Linux生态中,有一款被无数程序员奉为神器、被誉为“效率之王”的编辑器——Vim。它以26个字母键为核心,用极简的操作重构了代码编辑的宇宙。今天,就让我们一同走进Vim的世界,探索它如何以独特的方式提升你的编程效率。

一、Vim是什么?

Vim(Vi IMproved)是一款高度可配置的文本编辑器,最初作为Vi编辑器的改进版发布。它运行在大多数类Unix系统(如Linux、macOS)上,同时也支持Windows平台。Vim的设计哲学是“模式化编辑”,通过不同的操作模式(如普通模式、插入模式、可视模式等)来高效地完成文本编辑任务。

 

二、为什么选择Vim?

1.极致效率:Vim的操作几乎完全基于键盘,无需频繁切换鼠标,让双手始终保持在键盘上,极大地提高了编辑速度。

2.高度可定制:Vim提供了丰富的配置选项和插件生态,用户可以根据自己的需求定制专属的编辑环境。

3.跨平台兼容:无论是Linux、macOS还是Windows,Vim都能提供一致的使用体验。

4.学习曲线陡峭但回报丰厚:虽然Vim的学习曲线相对较陡,但一旦掌握,你将发现它带来的效率提升是任何其他编辑器都无法比拟的。

三、Vim的核心模式

Vim的精髓在于其模式化设计,下面给大家介绍一下Vim在使用时几种常用的模式:

3.1 命令模式(Normal Mode)

默认模式,所有移动和编辑命令都基于此模式。

3.2 插入模式(Insert Mode)

插入模式顾名思义,是用来插入文字的。我们在键盘上找到a、i、o键就能进入插入模式。

3.3 底行模式(Command-line Mode

通过**:**进入,用于执行Vim命令,如保存文件(:w)、退出Vim(:q)等。

四、Vim的基本操作

4.1 进入vim

 首先我们输入vim 文件名,就可以打开vim。

语法:vim 文件名

功能:用vim打开文件。

编辑器

刚进入vim默认的模式就是命令模式,如下图:

编辑器

4.2 模式切换

【命令模式】【插入模式】

命令模式→插入模式:

1、按 “ a ” 键:进入插入模式后,在光标当前位置的下一个位置开始插入文字。

2、按 “ i  ” 键:进入插入模式后,在光标当前位置开始插入文字。

3、按 “ o ” 键:进入插入模式后,插入新一行开始插入。

插入模式→命令模式:按 “Esc” 键。 

【命令模式】【底行模式】

命令模式→底行模式:shift + ' ; '(也就是输入' : ')

底行模式→命令模式:按 “Esc” 键。 

插入模式和底行模式不能直接切换,只能通过命令模式来切换,所以命令模式是使用最频繁的模式。

4.3 退出vim

退出vim一共有两种方法:

• 在命令模式下,输入大写的“ZZ”。

• 在底行模式下,输入w保存当前文件,输入q退出vim。

wq:保存并且退出。
q!:不保存,强制退出。(加个感叹号就是强制的意思)

五、命令模式的命令集

5.1 移动光标

• 基础移动

• 「h」:光标左移一格。(在键盘最左,所以是左)

• 「j」:光标下移一格。(jump,向下跳,所以是下)

• 「k」:光标上移一格。(king,国王高高在上,所以是上)

• 「l」:光标右移一格。(在键盘最右,所以是右)   

• 特定位置移动

• 「G」:移动到文本最后。(shift + ‘ g ’)

• 「$」:移动到光标所在行的行尾。(shift + ‘ 4 ’)

• 「^」:移动到光标所在行的行首。(shift + ‘ 6 ’)

• 「w」:光标跳到下个单词的开头。

• 「e」:光标跳到下个单词的字尾。

• 「b」:光标回到上个单词的开头。

• 「nl」:光标移到该行的第n个位置,如:5l, 56l。

• 「gg」:进入到文本开始。

• 屏幕移动

• 「Ctrl + b」:屏幕往后移动一页。

• 「Ctrl + f」:屏幕往前移动一页。

• 「Ctrl + u」:屏幕往后移动半页。

• 「Ctrl + d」:屏幕往前移动半页。

5.2 删除文字

• 单个字符删除

• 「x」:删除光标所在位置的一个字符。

• 「#x」:例如,「6x」表示删除光标所在位置后面(包含自己在内)6个字符。

• 「X」:每按一次,删除光标所在位置的前面一个字符。(shift + ‘ x ’)

• 「#X」:例如,「20X」表示删除光标所在位置的前面20个字符。

• 整行删除

• 「dd」:删除光标所在行。

• 「#dd」:从光标所在行开始删除#行。

5.3 复制

• 字符复制

• 「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

• 「#yw」:复制#个字到缓冲区。

• 整行复制

• 「yy」:复制光标所在行到缓冲区。

• 「cyy」:c代表c行,例如,「6yy」表示拷贝从光标所在的该行往下数6行文字。

• 粘贴

• 「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

• 剪切

• 「dd」:剪切光标所在行到缓冲区。

5.4 替换

• 单个字符替换

• 「r」:替换光标所在处的字符。

• 「R」:替换光标所到之处的字符,直到按下「ESC」键为止。(shift + ‘ r ’)(实际上是从命令模式进入到替换模式,而按ESC是退出替换模式到命令模式)

• 「~」:将光标所到之处的字符进行大小写变换,如果是大写字母就变成小写,如果是小写字母就变成大写。(shift + ‘ · ’)

5.5 撤销与恢复

• 撤销上一次操作

• 「u」:撤销,回到上一个操作。按多次“u”可以执行多次撤销。

• 撤销的恢复

• 「Ctrl + r」:恢复,回到撤销前的操作(反撤销)。按多次可以执行多次恢复。

5.6 更改

• 「cw」:更改光标所在处的字到字尾处。

• 「c#w」:例如,「c3w」表示更改3个字。

5.7 跳至指定的行

• 「Ctrl + g」:列出光标所在行的行号。

• 「#G」:例如,「15G」,表示移动光标至文章的第15行行首。

六、底行模式的命令集

6.1 保存文件

• 「w」:在冒号后输入字母「w」,保存文件。

编辑器

6.2 退出

• 退出

• 「q」:按「q」退出vim。如果无法离开,可以在「q」后跟一个「!」强制离开。

• 保存并退出

• 「wq」:建议离开时搭配「w」一起使用,这样在退出时还可以保存文件。

6.3 强制执行

• 强制退出

• 「!q」:强制退出,不保存任何修改。

• 强制保存

• 「!w」:强制保存文件,覆盖原有的只读限制(前提是有权限)。

6.4 设置行号

• 「set nu」:列出光标所在行的行号。

编辑器

• 「set nonu」:撤销光标所在行的行号。

编辑器

6.5 多文本操作

在底行模式中我们可以利用 vs 文件名 来实现多文件同屏。

编辑器编辑器

我们还可以通过「Ctrl + w + w」来让光标跳转到下一个文件。

七、Vim的配置

我们在插入模式中,由于未经配置,vim不像其它编译器那样有自动补全或者显示行号高亮等功能,导致我们在使用的时候会感到用起来并不是那么丝滑,这个时候我们就需要对vim进行配置。

7.1 Vim 配置文件的位置

配置项一般都放在家目录的 .vimrc 文件中,这个 .vimrc 就叫做配置文件。如果用户当前没有配置文件,则可以自己touch一个。

编辑器

之后我们可以通过 vim .vimrc 来打开配置文件并且进行配置项的编辑。

7.2 常用配置项

 

syntax on                                 " 自动语法高亮
set nu                                    " 显示行号
set tabstop=4                             " 设定 tab 长度为 4
set cursorline                            " 突出显示当前行
......

 

网上还有更多的配置项,大家可根据需要自己搜索进行配置。

7.3 自动化一键配置

这里分享一个可以自动化配置的方案:

VimForCpp: 快速将vim打造成c++ IDE

只需要输入这行代码即可完成一键配置:

curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh

但是要注意两点,首先强烈不建议使用root账户操作,其次该插件只支持 Centos7 x86_64. ,也就是说Ubuntu不支持该插件,但是也可以自行搜索进行配置。

链接: https://blog.csdn.net/Miracle_86

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分