通用输入模式
一旦进入编辑文档,除了使用[Esc]切换方法,还有其它很多方法使vi进入到输入模式。很多其它的方法都包含使用一个vi指令。这些指令可以立即让vi进入输入模式,由此输入的字符立即以文字出现在文档中。常用的指令为:
i
这是一个输入命令,即从光标所在位置前面开始插入文字,光标后的文字随新增文字向向移动。 如果是一个空白文档,文字将会输入在文档的左上角。
I
在行命令开始处的输入模式,即在当前行的开始处输入文字。与Word中的按下键后输入文字类似。
a
这是一个新增命令,即从光标所在位置后面开始新增文字,光标后的资料随新增文字向后移动。
A 这是一个新增到行命令的操作,即从光标所在行最后面的地方开始新增文字。这与Word中的按下键后输入文字类似。
中国网管联盟www.bitscn.com
o
这是一个命令之下的打开行命令,即在光标所在行下面新增一行并进入输入模式。
O
这是一个命令之上的打开命令,即在光标所在行上方新增一行并进入输入模式。
编辑之后使用以上任一命令,将会返回到指令模式。
光标移动指令
接下来需要学习的是vi中的浏览命令。以指令模式在文档中移动,可以使用以下的命令:
h:将一个文字移动到左边
j:往下移动一个文字
k: 往上移动一个文字
l: 将一个文字移动到右边
在鼠标与GUI的环境中,这些移动命令看似有些过时,但是它们都被包含于所有vi版本就广泛应用。很多时候,光标号,上光标,下光标,左光标,右光标都会起到作用,但是操作者应该将termcap与terminfo属性包含在这些命令之中。
以下的其它移动指令也可大有帮助:
[Ctrl]f
向下移动一页指令。这将使得光标在文本中向下移动一页。
[Ctrl]b
向后移动一页指令。这将使得光标在文本中向后移动一页。
网管联盟www.bitsCN.com
[Ctrl]u
向下移动半页指令。这将使得光标在文本中向下移动半页。
^
行命令开始处。光标将会移动到行的开始处。
$
行命令结束处。光标将会移动到行的结束处。
w
移动到上一个文字的开始。
b
移动到下一个文字的开始。
e
文字末端指令。
G
移动到文件的末端。
常规功能
在一般的文本编辑器中,所有的功能,比如删除,更改,剪切,复制,粘贴,以及搜索/替代等,都可以在vi中找到。很多指令都可以将编辑状态进入输入模式,而又可以使用[Esc]来终止。常规使用的编辑指令包括:
x:删除字符命令,即删除光标所在字符。
dw:删除文字命令,即删除光标处的文字。
dd:删除行命令,即删除光标所在的行。
D:删除到行末端,即删除从光标所在位置到行末端的所有文本。
cw:改变文字命令,即光标所有位置的文字将随着输入文字而改变,至到按下[Esc]。 中国网管联盟www、bitsCN、com
r:替代字符命令,即光标所在位置的字符将被输入的字符替代,至到按下[Esc]。
R:替代多行字符命令,即光标所在位置到右边所有的字符将被输入的字符替代,至到按下[Esc]。
绝大多数这些指令都可以通过组合而提高其功能。例如,如果你输入2dd,vi将删除两行文本。
剪切与粘贴等操作
与其它很多编辑器一样,你可以在文档中使用剪切与粘贴文本。以下命令是可以使用的最为简单的剪切与粘贴操作。
yy
复制行命令。光标所有行的文本将被复制到类似剪切板的缓冲器。注意到可以使用多个复制命令更改这一命令以将多行文字剪切到缓冲器。
yl
复制字符命令。光标所有行的字符将被复制到类似剪切板的缓冲器。可以使用多个复制命令更改这一命令以将多行字符剪切到缓冲器。
p
后放置命令。在当前光标位置之后放置或粘贴缓冲器的内容。对于复制行命令,缓冲器的内容将被粘贴在当前行之后。对于复制字符行命令,缓冲器内容将被粘贴在光标的右边。
P
前放置命令。在当前光标位置之前放置或粘贴缓冲器的内容。对于复制行命令,缓冲器的内容将被粘贴在当前行之前。对于复制字符行命令,缓冲器内容将被粘贴在光标的左边。 中国网管论坛bbs.bitsCN.com
使用复制和放置指令时,你也可以字符指令而使用多个缓冲器或剪切板。这些字符可为a-z,并且只能是小写字母。例如,ayy将当前行内容复制到缓冲器A,ap命令将缓冲器的内容粘贴在当前行之前。
Vi中最为重要的命令要算undo指令。这一命令十分简单:只需要按下u。按下u键就可以撤消最近使用的一次指令。
与undo命令类似的是redo命令。按下句号键(.)将会重新键入最近的指令。例如,如果你使用cw来改变一个文字,你可以查找这一文字然后使用句号.来这一文字。
其它两个重要的命令为search命令。为了在文档中向前查找,可键入/text,text即为你查找的内容。重要的是一定注意,只有输入内容完全的匹配,你才可以查找到。Vi不支持混合查询或者模糊查询。对于向后查找,可键入?text,text即为查找的内容。
【转自www.bitsCN.com】