戒掉GUI——Vim入门教程

Vim入门教程

有IDE了为什么还要学习Vim?

Vim在C/C++后台开发中是必不可少的编辑工具,很多场景下我们不能依靠任何IDE的帮助来书写代码,此时Vim成为了在这种场景下的首选代码编辑工具。因此,对有志于后台开发的同学来说,Vim入门是必不可少的一课。

本文假设你是一个Vim的新手(之前从来没有接触过Vim),希望你通读本文后,可以使用Vim做基本的代码编辑。当然,要想真正将Vim用到得心应手,并配合其他相关工具,这需要长此以往的熟悉。在没有使用Linux下的Vim工具时,也可以使用Qt中的FakeVimLeetCode中的Vim键位等来熟悉Vim的操作。

1. 三种模式的切换

在这里插入图片描述
图1 Vim的三种模式转化图

2. 普通模式

安装Vim后,在Linux命令行中键入如下命令使用Vim打开一个文件:

vim filename # 打开一个文件
vim filename1,filename2,filename3...# 同时打开多个文件到文件缓冲区

刚进入Vim的模式默认为普通模式,此模式下不能编辑,只能查看文件。所以有些没用过Vim的同学一打开Vim之后就开始疯狂操作。。。结果什么也没有发生(比如我)。在这种模式下,有一些快捷键帮助我们便捷的查看文件,如下:

普通模式下的快捷键行为
k / ↑向上
j / ↓向下
h / ←向左
l / →向右
10k / 10↑向上10字符
10j / 10↓向下10字符
10h / 10←向左10字符
10l / 10→向右10字符
/word向下查找word
?word向上查找word
n如果是/word后使用,则表示向下继续查找;
如果是?word后使用,则表示向上继续查找;
N如果是/word后使用,则表示向上继续查找;
如果是?word后使用,则表示向下继续查找;
u撤销
ctrl+r重做
ctrl+w + →/←多窗口中切换光标到右/左边的窗口
bn在当前窗口切换为下一个文件
bp在当前窗口切换为上一个文件
b num在当前窗口切换为标号为num的文件
(在命令模式下查看已打开文件编号)
a进入编辑模式,在当前字符后面插入
A进入编辑模式,在当前行尾插入
i进入编辑模式,在当前字符前面插入
s进入编辑模式,删除当前字符并插入
S进入编辑模式,删除当前行并插入
o进入编辑模式,在当前行下一行插入
O进入编辑模式,在当前行上一行插入
:进入命令模式

3. 编辑模式

从普通模式键入a / o / i / s后会进入编辑模式,此模式下可以对文件进行编辑。

文本普通的编辑和其他IDE差不多,稍加熟悉就可以编辑了,只是注意不能用鼠标了。。实际上,Vim工具的一个重要作用就是去除对鼠标的依赖,特别是用熟练了之后,不用鼠标反而可以提升编程的效率。

从编辑模式退回普通模式按Esc即可,编辑模式不能直接到命令行模式,需要先经普通模式。

4. 命令模式(低行模式)

这个模式下可以在Vim中输入一些指令来设置文件和编辑器的属性,常见的命令如下:

命令模式下的快捷键行为
:w保存
:q不保存退出
:wq保存并退出
:q!强制退出
:w filename另存为filename文件
:set nu设置显示行号(这个还是很重要的,特别是配合gdb调试的时候)
:e filename打开filename文件到缓冲区
:sp filename打开一个文件到缓冲区并水平分割窗口以显示之(这个感觉很鸡肋)
:vsp filename打开一个文件到缓冲区并垂直分割窗口以显示之(这个很有用)
:bn在当前窗口切换为缓冲区中的下一个文件
:bp在当前窗口切换为缓冲区中的上一个文件
:b num在当前窗口切换为标号为num的文件
(在命令模式下查看已打开文件编号)
:ls显示当前所有打开文件的编号
:行号光标跳到指定的行号处
:/word查找word字符串,用n以跳到下一处
Esc退回普通模式

5. Vim操作图谱

这里有一张Vim操作图谱可供查看:
在这里插入图片描述

图2:Vim操作图谱

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值