Vim (六) 命令行模式

来源:互联网 发布:股票书籍推荐 知乎 编辑:程序博客网 时间:2024/05/17 04:00

命令行模式是 用来 执行命令的。

命令的作用是: 

1.  修改文本啦 (最经常用的)

2.  对文件的操作,打开新的文件,将文件写入磁盘等。

3.  对窗口的管理,打开一个新的窗口等。

4.  查找文本了。 (最强大的命令)

5. 宏

6. 对寄存器的操作了


很多东西都是在 命令模式下面进行的,所以需要花费很多篇幅来讲解了。

-----------------------------------------------------------------------------------------------------------------------------------------------------------

初始时候,先有 ed, ed 为 ex之父,ex为 vi 之父,而 vi 为 vim之父。

vi 首创区分模式编辑的范例。

ed 是面向行的编辑器。

ex 也是面向行的编辑器,这样就是Vim 中为什么会有Ex 命令了。

这些早期 Unix 文本编辑器中流淌的血脉依然流淌在现代的Vim 中。


这一节中,我们将要学习如何使用 命令行模式,带领大家 了解什么是Ex 命令, 如何使用这些Ex 命令。


技巧27   初识 Vim 的命令行模式

------------------------------------------------------------------------------------------------------------------------------------------

命令行模式会提醒我们输入一条:

Ex 命令

或者  一个查找模式

或者  一个表达式

在本节中,我们探讨一些 操作缓冲区中的文本的  EX 命令。


我们可以用Ex  命令来读写文件 (:edit 和 :write)

创建新的标签页: (:tabnew)

以及分割窗口 (:split)

操作参数列表 (:prev :next)

操作缓冲区列表 (:bprev  :bnext)


事实上,vim 几乎为了所有的功能都提供了相应的 Ex 命令来执行。

在这些命令中,绝大部分的命令都可以指定操作的范围。

我们将会学习更多的关于 :delete :yank :put 命令的知识。

:substitute 和 :global 命令非常强大,我们要花费一整副篇章来说明它们。


操作缓冲区文本的 Ex 命令:

:[range]delete [x]删除指定范围内的文本,到寄存器 x 中

:[range]yank [x]赋值指定范围内的行 到寄存器x中

:[line]put [x]在指定的行后粘贴寄存器x中的内容

:[range]copy {address}把指定范围中的行拷贝到 {address}所指定的行之下.

:[range]move {address}把指定范围中的行移动到 {address}所指定的行之下.

:[range]join 连接指定范围内的行

:[range]normal {commands}对指定范围内的每一个行 执行普通模式命令 {commands}

:[range]substitute/{pattern}/{string}/[flags]替换命令,将范围内出现{pattern}的地方替换为{string}

:[range]global/pattern/[cmd]对指定范围内匹配{pattern}的所有行,在其上执行 Ex 命令{cmd}



Vim 命令行模式上的特殊按键:

------------------------------------------------------------------------------------------------------------------

<C-w> : 删除上一个单词

<C-u>:删除至行首

<C-v>:插入特殊的字符

<C-r>{register} : 把任意寄存器的内容插入到命令行中。

<left> 和 <right> 光标进行移动。


Ex 命令影响范围广且距离远

---------------------------------------------------------------------------------------------------------------------

有时候使用 Ex 命令,能比用普通模式命令更快的完成同样的工作。

比如:

普通模式命令一般操作当前的字符,或者当前行

Ex 命令 可以在任意的位置执行, 这意味着我们无需移动光标就可以使用Ex 命令来作出修改。

但是使得 Ex 命令脱颖而出的最让人赞叹的功能,是它们拥有能够在多行上同时执行的能力。


因此一般来说: Ex 命令 操作范围更大,并且能够在一次的执行中修改多行。

总结起来就是:Ex 命令影响范围范围广并且距离远。














































0 0
原创粉丝点击