VIM 与 DocBook VIM VIM 有很多特性,有助于撰写类似 DocBook 的 XML 文档,包括语法高亮和可定制的按键绑定。另外,还可以用外部程序辅助 VIM 完成拼写检查等操作。本章假定您已知悉 VIM 一般用法;如果您要学习一般用法,执行 vimtutor 或在 VIM 中执行 :help tutor 设置 <filename>.vimrc</filename> 文件 VIM 配置文件 下面是一个示例 .vimrc 文件,打开了一些 VIM 特性,便于编辑类似 DocBook 的 SGML 或 XML 文档: " 关闭 vi 兼容特性,类似有限的撤销 set nocompatible " 基于文件扩展名的语法高亮 syntax on " 在 80 个字符后面自动插入新行 set textwidth=80 " 自动缩进 set autoindent " 使用 % 匹配 SGML 标记 source $VIMRUNTIME/macros/matchit.vim 一些特性需要安装 vim-enhanced。如果您使用的是 vim-minimal,或者是旧版本的 VIM,可能不包含 $VIMRUNTIME/macros/matchit.vim 文件,那么可以在 Vim.org 下载 matchit.zip 并加载。 VIM 中的按键映射 VIM 可以使创建 DocBook 文档更加快捷,只要将经常使用的标记 (或任何词汇短语) 定义为快捷键。默认情况下,键盘映射以反斜线 (\) 开始,但是也可以用命令定义,类似 let mapleader = ","。有两种方式来使用下面的例子;您可以将它写在 .vimrc 文件中,或者将它保存为单独的文件,并在 .vimrc 文件中以 source 命令加载。e />:nohlsearcha " common tags that start a new text block imappa O imaps1 joO imappl O0i imapcp O0i " common tags that are placed inline " use F>a imapen F>a imapfi F>a imaplt F>a imapre F>a imapui F>a imapul F>a imapsi F>a imapus F>a imapsy F>a imapcm F>a " entities imap > > imap < < ]]> 不幸的是,这不是所有 DocBook 命令的完整集合,因此您需要自行定义,或定制 范例中的定义。 其他 VIM 资源 其他 VIM 相关的资源可以在这里找到: 示例 sgml-vimrc,来自 Beginner's guide to Vi Improved (VIM) VIM Quick Reference Card Vim 作为 XML 编辑器 VIM REFERENCE MANUAL,包含在 vim-common 软件包中 — /usr/share/vim/<version>/doc/intro.txt,可以在 VIM 中执行 :help intro 查看。