歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

安裝和使用SGMLtools-Lite打開DocBook的鑰匙

  Joe "Zonker" Brockmeier 自由作家 2000 年 10 月 內容: 從源碼進行安裝 從 RPM 進行安裝 安裝疑難解答 產生 Html 輸出 產生 PostScript 輸出 產生 RTF 輸出 產生純文本輸出 將 Linuxdoc 轉換成 DocBook 參考資料 關於作者 開始將 DocBook 用於文檔項目的讀者需要一些使用 SGMLtools-Lite 產生有用輸出的指南。本文將介紹 SGMLtools-Lite 的安裝和使用。您還可以獲得有關疑難解答和為聯機以及打印媒體定制輸出的技巧。 在我 上一篇有關 DocBook 的文章中,曾介紹過將 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 輸出的方法。如果所產生的文檔帶有圖像,則需要引用不帶有文件擴展名的圖像名。例如,不是這樣引用: <screenshot> <graphic fileref="..../misc/datebook1.gif"><graphic> <screenshot> 而希望這樣使用: <screenshot> <graphic fileref="..../misc/datebook1"><graphic> <screenshot> 在處理 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 規則替換例如 <font> 和 <center> 這樣的顯示標記。 產生 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 進行的出版工作可能非常復雜,但您現在應該已經具備了一些起步階段所需的基本知識。 參考資料 * 請訪問 DocBook.org,這是官方 DocBook 站點。 * 請參閱 RPM 格式的 SGML ISO 實體聲明。 * 請參考 DocBook DTD RPM。 * 仔細查看 DocBook DSSSL 樣式表 RPM。 * linux 文檔項目包含了許多以 DocBook 編寫的文檔。LDP Author Guide 有一些 DocBook 入門方面的技巧。 * 從 SGML-tools Lite 上下載源碼或 RPM,然後按照指令安裝它們。該站點有許多將 DocBook 文檔轉換成 HTML、PDF、PostScript、RTF 或純文本時所需的工具。 * 可以在 OASIS DocBook 頁面上找到 DocBook 技術委員會主頁。 * 有關開始使用 SGML DTD 的幫助,請參閱 SGML 資源 W3C 概述。 * 有關詳細信息,請參閱常規 SGML/XML 應用,這是 SGML/XML 應用的 OASIS 指南。 * 嘗試使用 HTML Tidy 來整理 HTML 輸出,並使用 CSS 規則來替換顯示標記。 關於作者 Joe "Zonker" Brockmeier 是 linux 雜志的撰稿編輯,為 Prima Publishing 著有 Install, Configure and Customize Slackware Linux 一書。他的第二本書是 DocBook Publishing,將由 Prima 於 2001 年初出版。Joe 歡迎您提出有關今後 DocBook 文章的問題、建議或意見,可以通過 [email protected] 與他聯系。 您對這篇文章的看法如何? 真棒! 好文章 一般,尚可 需提高 太差! 意見? (c) Copyright IBM Corp. 2001, (c) Copyright IBM China 2001, All Right Reserved 隱私 法律 聯系



要將名為 Howto.sgml 的 linuxdoc 文件轉換成 DocBook 格式,使用以下命令: sgmltools -b ld2db Howto.sgml 這將從 linuxdoc 文件中創建 DocBook SGML 文件。然後,可以使用新的 DocBook 文件來產生其它各種類型的文件。SGMLtools-Lite 不能從 Linuxdoc 文件中產生除 DocBook 以外的輸出。 以上是 SGMLtools-Lite 安裝和使用的簡要概述。使用 DocBook 進行的出版工作可能非常復雜,但您現在應該已經具備了一些起步階段所需的基本知識。 參考資料 * 請訪問 DocBook.org,這是官方 DocBook 站點。 * 請參閱 RPM 格式的 SGML ISO 實體聲明。 * 請參考 DocBook DTD RPM。 * 仔細查看 DocBook DSSSL 樣式表 RPM。 * linux 文檔項目包含了許多以 DocBook 編寫的文檔。LDP Author Guide 有一些 DocBook 入門方面的技巧。 * 從 SGML-tools Lite 上下載源碼或 RPM,然後按照指令安裝它們。該站點有許多將 DocBook 文檔轉換成 HTML、PDF、PostScript、RTF 或純文本時所需的工具。 * 可以在 OASIS DocBook 頁面上找到 DocBook 技術委員會主頁。 * 有關開始使用 SGML DTD 的幫助,請參閱 SGML 資源 W3C 概述。 * 有關詳細信息,請參閱常規 SGML/XML 應用,這是 SGML/XML 應用的 OASIS 指南。 * 嘗試使用 HTML Tidy 來整理 HTML 輸出,並使用 CSS 規則來替換顯示標記。 關於作者 Joe "Zonker" Brockmeier 是 linux 雜志的撰稿編輯,為 Prima Publishing 著有 Install, Configure and Customize Slackware Linux 一書。他的第二本書是 DocBook Publishing,將由 Prima 於 2001 年初出版。Joe 歡迎您提出有關今後 DocBook 文章的問題、建議或意見,可以通過 [email protected] 與他聯系。 您對這篇文章的看法如何? 真棒! 好文章 一般,尚可 需提高 太差! 意見? (c) Copyright IBM Corp. 2001, (c) Copyright IBM China 2001, All Right Reserved 隱私 法律 聯系



Copyright © Linux教程網 All Rights Reserved