DG2.2. Toolsets #
以下工具用于处理文档。其中一些可能是可选的,具体见说明。
- DocBook DTD
这是 DocBook 自身的定义。我们当前使用 3.1 版;不能使用更高或更低的版本。注意还有 DocBook 的 XML 版本 —— 不要使用那个。
- ISO 8879 character entities
DocBook 需要这些实体,但由于它们由 ISO 维护,因此单独分发。
- Jade
这是处理 SGML 的基础软件包。它包含一个 SGML 解析器、一个 DSSSL 处理器(即使用 DSSSL 样式表将 SGML 转换为其他格式的程序),以及若干相关工具。Jade 现在由 OpenJade 小组维护,而不再由 James Clark 维护。
- Norm Walsh 的模块化 DocBook 样式表
它们包含将 DocBook 源文件转换成其他格式(例如 HTML)的处理指令。
- DocBook2X tools
这个可选软件包用于创建手册页。它自身还有许多先决软件包。请查看该网站。
- JadeTeX
如果你愿意,还可以安装 JadeTeX,用 TeX 作为 Jade 的格式化后端。这样生成的打印输出不如 RTF 后端的质量。表格是尤其成问题的地方。另外,也没有机会对结果进行手工润色。不过,它仍然工作得不错,尤其是对不使用表格的较简单文档而言;而且由于 JadeTeX 和样式表都在持续改进,它将来肯定会越来越好。
我们已经记录了多种安装处理文档所需工具的方法,下面将加以介绍。这些工具也可能还有其他打包发行形式。请将软件包状态报告到 docs 邮件列表,我们会把这些信息补充到这里。
DG2.2.1. Linux RPM 安装
许多发行版厂商在其发行版中提供了用于 DocBook 处理的完整
RPM 集合,它们通常基于 Red Hat Software 的
docbook-tools
项目。安装时查找“SGML”选项,或者查找下列软件包:sgml-common、docbook、stylesheets、openjade(或 jade)。可能还需要
sgml-tools。如果你的发行版厂商没有提供这些软件包,那么应该可以使用某个大型且足够兼容的厂商提供的软件包。
DG2.2.2. FreeBSD 安装
FreeBSD Documentation Project 本身就大量使用 DocBook,因此 FreeBSD 提供了完整的文档工具“ports”也就不足为奇了。要在 FreeBSD 上构建文档,需要安装以下 ports。
textproc/sptextproc/openjadetextproc/docbook-310textproc/iso8879textproc/dsssl-docbook-modular
/usr/ports/print 中的一些内容(tex、jadetex)可能也值得安装。
有可能 ports 没有更新
/usr/local/share/sgml/catalog 中的主 catalog 文件。请确保其中包含下面这一行:
CATALOG "/usr/local/share/sgml/docbook/3.1/catalog"
如果不想编辑该文件,也可以把环境变量
SGML_CATALOG_FILES 设置为以冒号分隔的 catalog
文件列表(例如上面那些)。
更多关于 FreeBSD 文档工具的信息,请参阅FreeBSD Documentation Project 的说明。
DG2.2.3. Debian 软件包
Debian GNU/Linux 也提供了完整的文档工具软件包集。只需使用以下命令即可安装:
apt-get install jade apt-get install docbook apt-get install docbook-stylesheets
DG2.2.4. 从源码手动安装
手动安装 DocBook 工具的过程有些复杂,因此如果有预构建的软件包,就使用它们。这里只描述一种标准配置,使用合理且标准的安装路径,不使用任何“花哨”功能。有关细节,应查阅各软件包的文档,并阅读SGML入门资料。
DG2.2.4.1. 安装 Jade
OpenJade 的安装采用 GNU 风格的./configure; make; make install构建过程。详细信息可在 OpenJade 源码发行包中找到。简要来说:
./configure --enable-default-catalog=/usr/local/share/sgml/catalog make make install
务必记住“默认目录文件”的存放位置,后面会用到它。也可以不指定,但这样以后每次使用jade时,都必须设置环境变量SGML_CATALOG_FILES,使其指向该文件。
此外,还应该把dsssl目录中的文件
dsssl.dtd、fot.dtd、style-sheet.dtd和catalog
安装到某个位置,例如
/usr/local/share/sgml/dsssl。(或者直接复制整个目录。)
DG2.2.4.2. 安装 DocBook DTD 工具包
获取 DocBook V3.1 发行包。
解压归档包。
$unzip -a docbk31.zip把文件放入目录
/usr/local/share/sgml/docbook31。(具体位置无关紧要,但这个位置相当标准。)创建文件
/usr/local/share/sgml/catalog(或者安装时告诉 jade 的其他位置),并把类似下面的一行放进去:CATALOG "docbook31/docbook.cat"
可以选择编辑文件
docbook.cat,注释掉或删除包含DTDDECL的那一行。如果不这样做,你会从 jade 收到警告,但没有进一步的危害。下载 ISO 8879 字符实体归档包,将其解压,并把文件放入存放 DocBook 文件的同一目录。
DG2.2.4.3. 安装 Norman Walsh 的 DSSSL 样式表
要安装样式表,只需把发行包解压到一个合适的位置,例如
/usr/local/share/sgml/stylesheets。(归档会自动创建一个 docbook
子目录。)
DG2.2.4.4. 安装 JadeTeX
要安装和使用JadeTeX,你需要可用的 TeX和LaTeX2e安装,包括受支持的tools和 graphics宏包、Babel、AMS 字体和 AMS-LaTeX、PSNFSS扩展及 “35 种字体”配套包、用于生成 PostScript的dvips程序,以及宏包fancyhdr、hyperref、minitoc、url和ot2enc,当然还有 JadeTeX 本身。所有这些都可以在邻近的CTAN站点上找到。
JadeTeX 在撰写本文时并没有附带多少安装指南,但有一个 makefile 展示了需要什么。它还包含一个 cooked 目录,你会在其中找到它所需的部分宏包 —— 但不是全部,也不完整,至少我们上次查看时是这样。
在构建 jadetex.fmt 格式文件之前,你可能需要编辑 jadetex.ltx
文件,把 Babel 的配置改为适合你所在地区的形式。要改的那一行看起来像
\RequirePackage[german,french,english]{babel}[1997/01/23]显然,你应该只列出你确实需要、并且已为 Babel 配置好的语言。
当你把 JadeTeX 用于 PostgreSQL 文档源时,很有可能 TeX 会在第二轮运行中停下来,并告诉你它的容量已被超出。就我们所知,这是 JadeTeX 生成交叉引用信息的方式造成的。当然,TeX 可以用更大的数据结构尺寸编译。具体细节因安装而异。