免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1095 | 回复: 0
打印 上一主题 下一主题

安装和使用 SGMLtools-Lite [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-08-28 14:58 |只看该作者 |倒序浏览
安装和使用 SGMLtools-Lite
在上一篇文章中,曾介绍过将 DocBook
标记用于文档项目的一些基本知识。然而,以 DocBook
标记文档只是过程的一半。有时候,您可能希望与其它人共享文档,这意味着需要将
DocBook
转换成另一种格式。该过程的第二步是让文档文件通过语法分析器后输出可读的文件格式,例如
HTML、PostScript 或 RTF。本文将指导您使用 SGMLtools-Lite
软件包来达到这一步。
      
      
SGMLtools-Lite 是 SGML 处理软件的 Python
前端。基本上,SGMLtools-Lite 简化了将 DocBook
文档转换成希望分发的一种或几种格式的过程。
      
如果您是 Linux
用户,那么根据您使用的发行版和在安装期间选择的选项,可能系统上已安装了原始
SGMLtools 包。不过,原始 SGMLtools
项目没有维持多长时间,SGMLtools-Lite 项目成了该项目的接任者。
      
SGMLtools-Lite 的安装
      
SGMLtools-Lite 项目在 Sourceforge 上托管(请参阅本文稍后部分的 )。根据您的需要,可以从那里下载 RPM
或 tar-gzip 压缩的源码。RPM 是针对 Red Hat 6.2 构建的,它也曾在
SuSE Linux
上测试过。它们可能不能在其它发行版中正确工作,所以请小心使用。
      
      



安装 SGMLtools-Lite 之前
      
不幸的是,SGMLtools-Lite
没有包括您需要的所有文件。还需要安装其它三个包 - SGML ISO
实体声明以及 DocBook DTD 和 DSSSL
样式表。大多数发行版都具有带有这些文件的包;有关链接,请参阅
      
      



从源码进行安装
      
要从源码安装 SGMLtools-Lite,将 sgmltools-lite-3.0.0.tar.gz
文件复制到一个空的目录中,在那里展开它,然后将目录更改到新的
sgmltools-lite-3.0.0 目录:

      
tar -zxvf sgmltools-lite-3.0.0.tar.gz
cd sgmltools-lite-3.0.0/

      
在执行任何其它操作之前,检查 sgmltools-lite-3.0.0 目录中是否有
"config.cache" 文件。如果有,在运行配置之前将它除去。如果文件在配置
make 时出现,可能会导致问题。

      
rm config.cache
../configure
make
make install

      
到目前为止应该就是这些。要查看是否安装了
SGMLtools-Lite,运行以下命令:

      
sgmltools --help

      
如果已正确安装和配置了 SGMLtools-Lite,您应该看到以下消息:

      
SGMLtools version 3.0.0
Usage:
  sgmltools [OPTION...] [INPUT-FILE...]
Convert SGML files into various output formats.
Options:
  -v  --verbose         Print verbose output
  -d  --debug           Do not remove temporary files
  -b: --backend=        Backend to use
  -j: --jade-opt=       Options passed on to jade
  -s: --dsssl-spec=     DSSSL spec to use
  -V  --version         Print version number and exit
  -h  --help            Print usage and exit
  -l  --license         Print license information
For help on a specific backend, use "--backend xyz --help".

      



从 RPM 进行安装
      
如果使用的是基于 RPM 的系统,可以使用 RPM 来安装
SGMLtools-Lite。需要下载最新的 sgmltools-lite
包和支持文件。下载了这两个 RPM 后,继续使用 -i
选项安装它们。您还是可以通过运行 sgmltools -- help
命令来测试安装,确保每个部分都安装成功。
      



安装疑难解答
      
要使 SGMLtools-Lite 能正确工作,您可能需要做的一件事就是设置
SGML_CATALOG_FILES 环境变量,以使 SGMLtools-Lite
知道在什么地方查找目录文件。可以通过手工发出设置正确环境变量的命令来做到。在我的系统上使用的就是这种方法(是的,输入工作可能有些繁重)。

      
export SGML_CATALOG_FILES=/usr/local/share/sgml/stylesheets/docbook/catalog:
/usr/local/share/sgml/entities/iso-entities-8879.1986/iso-entities.cat:
/usr/local/share/sgml/dtd/jade/dsssl.cat:
/usr/local/share/sgml/stylesheets/sgmltools/sgmltools.cat:
/usr/local/share/sgml/dtd/sgmltools/catalog:
/usr/local/share/sgml/dtd/docbook/3.1/docbook.cat

      
要避免在每次登录时都不得不执行这一步,您可能需要继续设置
.bash_profile 中的 SGML_CATALOG_FILES 环境变量。请注意,如果在一个
x-term 中设置环境变量,可能无法扩大到其它
x-term,因此如果收到错误,需要通过检查来确保正确设置环境。
      



使用 SGMLtools-Lite
产生输出文件
      
一旦安装了 SGMLtools-Lite,使用起来就相当简单。SGMLtools-Lite
主要用来从 DocBook 文件中产生 HTML、PostScript、RTF
或纯文本文件。还可以使用 SGMLtools 来将 Linuxdoc 文件转换成 DocBook
格式。
      



产生 HTML 文件
      
以下是如何使用 SGMLtools-Lite 来产生 HTML
输出的方法。如果所产生的文档带有图像,则需要引用不带有文件扩展名的图像名。例如,不是这样引用:

      
     
        
      

      
而希望这样使用:

      
     
        
      

      
在处理 DocBook 文件时,如果产生的是 HTML 文件,SGMLtools-Lite
需要的是 gif,如果产生的是 PostScript 文件,需要的是 EPS
文件。在产生 HTML 时,SGMLtools-Lite 自动附加 .gif 扩展名,因此
HTML 文档可以正确使用。
      
要从名为 book.sgml 的 DocBook 文件中产生 HTML
输出,输入以下命令:

      
sgmltools -b html book.sgml

      
"-b" (后端)参数告诉 SGMLtools-Lite 产生 HTML 输出。
      
这将创建一个名为 "book" 的目录,并且 HTML 文件在其中。如果您的
DocBook 文档调用其它文件,SGMLtools-Lite
也将处理它们,并自动创建索引和“页面”之间的导航。
      
由 SGMLtools-Lite 产生的 HTML
标记过于花俏。在把文件上载到服务器之前,您需要对它们运行 "HTML
Tidy" 。HTML Tidy
不仅可以整理代码,它还会用 CSS 规则替换例如  和
这样的显示标记。
      
      



产生 PostScript 文件
      
要产生 PostScript 输出,使用以下命令:

      
sgmltools -b ps book.sgml

      
由 SGMLtools-Lite 产生的 PostScript
输出看上去很专业,适合于许多文档的使用,例如软件手册或公司报告;通常情况下,会使用排版程序来产生这些文档。SGMLtools-Lite
甚至还可以直接产生封面和目录表。
      



产生 RTF 文件
      
如果需要与使用 Word 的人共享文档,则需要输出多文本格式 (Rich Text
Format),或 RTF 格式的文件。如果使用
SGMLtools-Lite,这一过程和产生任何其它输出类型的过程一样简单:

      
sgmltools -b rtf book.sgml

      
不幸的是,据我所知,Microsoft Word 没有导出到 DocBook
的选项。
      



产生纯文本文件
      
最后,如果需要,可以用 DocBook 创建纯文本文件。要使用
SGMLtools-Lite 产生纯文本,使用 "-b txt" 参数。
      



将 Linuxdoc 转换成
DocBook
      
在某些情况下,也许要负责维护 Linuxdoc
格式的文档。可能您所在公司是使用 Linuxdoc
来编写文档的,也可能您碰巧遇到一些以 Linuxdoc
编写的旧文档。幸运的是,SGMLtools-Lite 的一个特性是能够将文档从
Linuxdoc DTD 转换成 DocBook DTD。
      
要将名为 Howto.sgml 的 Linuxdoc 文件转换成 DocBook
格式,使用以下命令:

      
sgmltools -b ld2db Howto.sgml

      
这将从 Linuxdoc 文件中创建 DocBook SGML 文件。然后,可以使用新的
DocBook 文件来产生其它各种类型的文件。SGMLtools-Lite 不能从
Linuxdoc 文件中产生除 DocBook 以外的输出。
      
以上是 SGMLtools-Lite 安装和使用的简要概述。使用 DocBook
进行的出版工作可能非常复杂,但您现在应该已经具备了一些起步阶段所需的基本知识。
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/9465/showart_161525.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP