技术成长日记-Vim-2. Vim中的常用模式

2.1 正常模式

Vim初始化后默认进入正常模式,在正常模式可以通过快捷键进入其他模式,也可以使用命令对内容进行编辑,但是不能直接进行字符输入。

2.2 插入模式

顾名思义就是插入内容的模式。在该模式下,单个字符都不能构成快捷键,因为需要输入字符。进入该模式以后,在当前窗口的底部 显示“-- INSERT --”字样。当Vim处于正常模式时,可以通过不同的命令进入此模式:

1. a或A命令

输入a命令,Vim将插入符向后移动一个字符的位置并进入插入模式。输入A命令Vim将插入符移动到行尾然后进入插入模式。

2. i或I命令

输入i命令,Vim直接进入插入模式。输入I命令,Vim将插入符移动到行首,然后进入插入模式。

3. o或O命令

输入o命令,Vim在当前行下面插入新的一行并进入插入模式。输入O命令,Vim在当前行的上面插入新的一行并进入插入模式。

4. :start命令

在命令行模式下,输入start命令进入插入模式.

另外也可以在vim初始化时使用”-c start”参数直接进入插入模式。

2.3 可视模式

在可视模式下,Vim能够使选择的区域高亮,可以对该区域进行操作。进入该模式时,在窗口底部显示”— VISUAL —“字样。它还分为三种子模式,分别是普通可视模式行可视模式列可视模式,下面是详细的描述。

1. 普通的可视模式

在正常模式下,按’v’键进入普通可视模式,在该模式下可以任意选择字符。通过h/j/k/l四个按键(上下左右四个按键也可以)任意选择要操作的内容,此时被选择的内容显示为高亮。也可以通过一些命令进行快捷选择,例如”v$”选择当前字符到行尾的内容,”v^”选择当前字符到行首的内容。

选择完成后就可以进行操作,比如删除、复制、查找、替换等。当输入’:’时进入命令行模式,命令行显示“:’<,’>”字样,表示要在所选择的区域内完成某些操作,而不是整个文档。

2. 行可视模式

在正常模式下按V进入,此时按j/k(上下方向键也可以)进行选择,它以行为单位进行选择。Vim还提供一些快捷操作,比如输入gg命令,选择当前行到第一行的内容;输入G命令,选择当前行到文件末尾行的内容;输入nG,选择到n行内容,其中n代表的是要选择的行号。

3. 列(块)可视模式

在正常模式下按CTRL-v组合键进入,进入该模式后,也是按h/j/k/l键进行内容选择,该模式下可以选择一个方形内容块,有时删除某一列的多余字符非常有用,比如复制一个patch内容到某个源码文件,可能这些被复制的内容包含patch中的+-字符,在此模式下很方便的删除它们。还可以在该模式下进行列插入,在4.4.9节提供了详细的命令序列。

2.4 命令行模式和Ex模式

1. 命令行模式

在正常模式下通过下面方法进入命令行模式:

’:’字符进入命令行模式

’/‘’?’字符进入命令行搜索模式,’/’表示向后搜索,’?’表示向前搜索。

2. Ex模式

可以在该模式下执行Ex命令。在正常模式下按Q键进入,进入后Vim停留在该模式,在窗口底部显示“Entering Ex mode.  Type "visual" to go to Normal mode.”,这时可以输入Ex命令。输入visual命令回车退出该模式。

3. 命令行模式与Ex模式的关系

Ex模式是命令行模式的一个子集。

2.5 各个模式之间的切换

从当前模式如何进入到另外一种模式,请看表2.1:



2.6 一种中间模式-操作待决模式

这是一种中间模式,因为在输入操作符的时候,Vim等待输入一个动作(3.10.2 动作motion)用来指定要操作的范围,输入动作命令后该模式结束。例如,”y4w”代表复制4个单词的操作,按下y键时进入操作待决模式,再按下4w后模式结束。


本文为我原创

本文禁止转载或摘编

-- --
  • 投诉或建议
评论