【Linux】效率革命:Vim——用26个字母键重构你的代码宇宙

          欢迎来到白刘的领域   Miracle_86.-CSDN博客

系列专栏   Linux

     先赞后看,已成习惯

        创作不易,多多支持!

目录

前言

一、Vim是什么?

二、为什么选择Vim?

三、Vim的核心模式

3.1 命令模式(Normal Mode)

3.2 插入模式(Insert Mode)

3.3 底行模式(Command-line Mode)

四、Vim的基本操作

4.1 进入vim

4.2 模式切换

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

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

4.3 退出vim

五、命令模式的命令集

5.1 移动光标

5.2 删除文字

5.3 复制

5.4 替换

5.5 撤销与恢复

5.6 更改

5.7 跳至指定的行

六、底行模式的命令集

6.1 保存文件

6.2 退出

6.3 强制执行

6.4 设置行号

6.5 多文本操作 

七、Vim的配置

7.1 Vim 配置文件的位置

7.2 常用配置项

7.3 自动化一键配置 


前言

在代码的世界里,效率是永恒的追求。无论是新手开发者还是资深工程师,都渴望拥有一款能让自己如虎添翼的编辑器。而在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不支持该插件,但是也可以自行搜索进行配置。

评论 43
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Miracle_86.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值