有12种命令可以改变到输入模式。其中一半用于输入新数据,另一半用于替换已有文本。当然,您可能会问,只是为了改变到输入模式,为什么需要如此众多的命令呢?答案是每条命令在不同的位置打开编辑缓冲区。因此,当希望插入数据时,可以选择最适合当前情形的命令进行插入。下面就是这些命令:
i 改变到输入模式: 在当前光标位置前插入数据
a 改变到输入模式: 在当前光标位置后插入数据
I 改变到输入模式: 在当前行开头处插入数据
A 改变到输入模式: 在当前行末尾处插入数据
o 改变到输入模式: 在当前行下面插入一行
O 改变到输入模式: 在当前行上面插入一行
为了说明这些命令的作用,假设您正在编辑一篇高级古典音乐课程的学期论文。您正在写著名的歌词,当前行正好是:
For a dime you can see Kankakee or Paree
现在光标位于字母“K”之下,并且处于命令模式中。如果键入i,将切换到输入模式。在键入时,数据将插在字母“K”之前,右边的字母自动依次右移。例如加入您键入:
iAAA<Esc>
(按下<Esc>键后返回到命令模式)
那么当前行看起来就会像这样:
For a dime you can see AAAKankakee or Paree
现在,假设a键切换到输入模式。在这种情况下,数据将插入到“K”之后。因此,假设你从原始行开始,键入了下述内容:
aBBB<Esc>
那么当前行看起来会像这样:
For a dime you can see KBBBankakee or Paree
ICCC<Esc>
那么当前行看起来就像这样:
CCCFor a dime you can see Kankakee or Paree
如果当前行使用空格或者制表符缩进了,那么vi也会聪明的考虑到这一点,在缩进位置之后开始插入数据。
现在,假设仍以原始行开始,并键入:
ADDD<Esc>
所键入的数据被追加在这一行的末尾,此时当前行看起来就像这样:
For a dime you can see Kankakee or PareeDDD
最后,为了在当下行下面插入数据,可以使用o(小写字母“o”) 命令。为了在当前行上面插入数据,可以使用大写字母O(大写字母o)命令。不管哪一种情况,vi都会打开一个新行。
那么当前行看起来就会像这样:
For a dime you can see AAAKankakee or Paree
现在,假设a键切换到输入模式。在这种情况下,数据将插入到“K”之后。因此,假设你从原始行开始,键入了下述内容:
aBBB<Esc>
那么当前行看起来会像这样:
For a dime you can see KBBBankakee or Paree
提示:通过使用I(大写字母“I”)和A(大写字母“A”)命令,可以分别在当前行的开头或末尾插入数据。例如,假设以原始行开始,并键入:
要记住i命令和a命令之间的区别,可以这样想:i=insert(插入), a=append(追加)。
ICCC<Esc>
那么当前行看起来就像这样:
CCCFor a dime you can see Kankakee or Paree
如果当前行使用空格或者制表符缩进了,那么vi也会聪明的考虑到这一点,在缩进位置之后开始插入数据。
现在,假设仍以原始行开始,并键入:
ADDD<Esc>
所键入的数据被追加在这一行的末尾,此时当前行看起来就像这样:
For a dime you can see Kankakee or PareeDDD
最后,为了在当下行下面插入数据,可以使用o(小写字母“o”) 命令。为了在当前行上面插入数据,可以使用大写字母O(大写字母o)命令。不管哪一种情况,vi都会打开一个新行。
提示:
要记住o和O命令之间的区别。可以依赖下述两项:
第一,字母“o”代表“open,打开“。
第二,将命令名称想象成一个充满氨气的气球。大一点的气球,即O,浮得高,因此它在当前行的上面插入一行,而小一点的气球,即o,浮得低,因此在当前行的下面插入一行。
沒有留言:
張貼留言