学习vim最重要的是了解其常用的模式,vim中常用的模式有:normal
,insert
,visual
,command
,replece
快捷键简记表
快捷键 | 作用 |
---|---|
insert模式 | |
i | 在光标前进入 insert 模式 |
I | 在当前行左边第一个非空字符前进入 insert 模式,类似其他编辑器的<c-a> 快捷键 |
a | 在光标后进入 insert 模式 |
A | 在当前行右边第一个非空字符前进入 insert 模式,类似其他编辑器的 <c-e> 快捷键 |
o | 在光标的下一行插入 |
O | 在光标的上一行插入 |
s | 删除当前字符,并进入 insert 模式 |
S | 删除当前行,并进入插入模式 |
cc | 删除当前行,并进入插入模式 |
visual模式 | |
v | 选中当前字符,并进入 visual 模式,随着光标的游走来选中字符 |
V | 选中当前行,并进入 visual 模式,随着光标的上下移动整行选中字符 |
<c-v> | 选中当前字符,并进去 visual 模式,随着光标的移动以长方形的模式选中字符 |
replace模式 | |
r | 替换单个字符,自动返回 normal 模式 |
R | 连续替换多个字符,手动 <esc> 返回 normal 模式 |
1.normal模式
当我们使用vim
进入 Vim 编辑器时,默认就是 normal
模式。
我们大部分时间都呆在该模式下,该模式下,我们几乎可以做除了插入数据以外的任何操作,其中一部分就是上一章我们讲到的那些。
一般情况下,我们都是从 normal
模式去到其他的模式进行操作,如果想回来,那就按<esc>
键,有时候你可能会搞不清楚现在在哪个模式下,多按几下 <esc>
返回 normal
模式总是没有错的。因为接下讲到的其他模式都是从 normal
模式进入的。
2.insert模式
跟 normal
交互最频繁的就是 insert
模式,不管我们的光标移动多灵活,最终目的就是去往该去的地方,然后插入数据。
在该模式下,我们可以像其他 IDE 一样,输入所有我们需要输入的信息。
在该模式下,光标移动不会很方便,默认情况下只能通过键盘方向键和鼠标来移动。所以才需要返回 normal
模式移动光标,再进入 insert
模式,如此往复,开始你会觉得很别扭,经常按错键,但是练熟以后你会爱上它的,因为 normal
模式下操作真的很方便。不过在 insert
模式中也想手不离开键盘中心区,就进行短距离的移动也不是不可以,不过需要配置一下我们的 Vim 编辑器,当然,这是后话,以后我再介绍。
进入 insert
模式有很多种方式,除了最常用的 i
还有如下方式:
1 | i " 在光标前进入 insert 模式 |
这就已经很多了,对吧。但是除了这些“循规蹈矩”的操作外,还有很多更方便,更有趣的键位,比如 c
键,就可以引申出许多高效的插入方式,但是不要贪多,我们慢慢学。
现在你应该立马练习起来,把每个键位先尝试一下,然后忘掉几个,只先频繁使用几个你最常用的方式,我建议先从 i
, a
, o
, cc
开始,你觉得?
3.visual模式
visual
模式简单来说,是选中一些字符,是指进入一个“块”中,我们可以对这个块进行删除、复制等简单或复杂的操作
进入 visual
模式后,我们可以使用上一章讲到的所有移动光标的操作来扩大“块”的范围,
1 | v " 选中当前字符,并进入 visual 模式,随着光标的游走来选中字符 |
4. command模式
command
模式顾名思义就是命令行模式,该模式下可以执行保存推出、分割窗口、插件管理等命令。
按下 : 进入 command
模式,输入命令后回车 <cr>
生效。
1 | :e hello.py |
上面的例子将打开同一文件夹下的hellp.py文件。
5.replece模式
replace
模式的使用频率相对较少,主要在替换单个或连续多个字符时使用。
将光标移动到想要替换的字符上,按下r
进入 replace
模式,然后按下按下任意字符,此时你会看到字符已经替换成功,并且自动返回 normal
模式。
如果你想要连续替换多个字符,需要使用 R
,比如有一个单词 code
,我们将光标移动到 c
上,然后按下 R,随后键入 name
,你会发现整个单词被替换过来,并且现在仍然停留在 replace
模式下,需要按下 <esc>
才会返回 normal
模式
1 | r " 替换单个字符,自动返回 normal 模式 |
该模式在使用得当的情况下,会让开发非常有效率,同样的,我们需要多加练习才行。
现在我们讲的这么多模式,并不是让你全到牢记,你难免会迷糊,没有关系,现在你只需要大概了解有这么个东西,后面我们会经常用到这些名词,看得多了也就熟了。