VIM学习笔记 Ex脚本 (Ex Script)

如果希望一次性执行多条Ex命令,那么可以将这些命令保存为脚本文件,然后即可重复调用。

例如我的这个VIM学习笔记,都是在Vim里手工编写HTML代码的。相同的代码也会同步粘贴到我的blog里。而在搬运代码之前,我需要删除其中的Tab制表符和换行符。也就是说,我需要重复执行几个删除和替换命令。

ExScript_Purpose

创建脚本文件

我将以下命令,存储名为ExScript_Sample.vim的脚本文件。其中,所有以双引号(")开头的文本,都将被视为注释。注释可以单独为一行,也可以被放置在行的末尾。

ExScript_Sample

在Vim中执行脚本文件

在Vim中编辑文件时,可以使用以下命令来调用Ex脚本:

:source ExScript_Sample.vim

Vim将在屏幕底部显示命令执行的结果(比如修改或替换的行数等);点击Enter回车键,将返回常规模式:

ExScript_Message

如果您对执行结果不满意,那么也可以使用u命令,撤销 (Undo)以上操作。

在启动vim时,可以将文件名做为参数(Arguments),以打开多个文件。例如使用以下操作系统命令,将打开当前目录下的所有网页文件:

$ vim *.html

我们可以先在当前文件下,使用:source命令执行脚本;然后使用:next命令,切换到下一个文件,依次针对各个文件分别执行脚本。

而使用以下命令,则可以一次性对所有参数列表中的文件执行脚本:

:argdo source ExScript_Sample.vim

在命令行中执行脚本文件

在操作系统的命令行中,使用vim的-c选项,可以在加载文件之后自动执行Ex脚本文件:

$ vim -c "source ExScript_Sample.vim" test.html

利用竖直线“|”分割符,可以组合执行Ex脚本文件和Ex命令:

$ vim -c "source ExScript_Sample.vim | w" test.html

利用竖直线“|”分割符和argdo命令,可以针对多个文件分别执行脚本文件,然后保存并退出:

$ vim -c "argdo source ExScript_Sample.vim | w" -c "qa" A.html B.html C.html

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>