Next Previous Contents

2. 安裝

首先從這個地方

取得 sgml-tools-0.99.9.tar.gz

你可以從 SGML-Tools WWW Page 取得最新的資訊.

sgml-tools-0.99.0.tar.gz 包含了所有你需要用來寫 SGML 文件並轉換為 groff, LaTeX, HTML, GNU info, LyX, 與 RTF 的東西.除此之外,你可能還需要下列的工具---SGML 系統並不需要這些,但我建議你取得這些工具以方便你轉換文件,在你公開散佈你的文件前將先確定它們看起來沒問題.

  1. groff. 你必須使用 1.08 或更新的版本.你可以從 ftp://prep.ai.mit.edu/pub/gnu 取得.在 ftp://sunsite.unc.edu/pub/Linux/utils/text 可找到 Linux 的執行檔.你必需使用 groff 讓你的 SGML 文件產生純文字檔. nroff 不行!
  2. TeX 與 LaTeX. 這幾乎在每個地方都有,你應該可以毫無困難地找到並安裝 (在 sunsite.unc.edu 可以找到 Linux 的執行檔) 當然,如果你要用 LaTeX 來格式化你的 SGML 文件你才需要 TeX/LaTeX.
  3. flex. lex 可能不行.你可以從 ftp://prep.ai.mit.edu/pub/gnu 取得.
  4. gawk 與 GNU info tools, 用來格式化與預視 info 檔案. 在 ftp://prep.ai.mit.edu/pub/gnu, 或 ftp://sunsite.unc.edu/pub/Linux/utils/text 可以找到 gawk, 還有 ftp://sunsite.unc.edu/pub/Linux/system/Manual-pagers 可找到 GNU info tools. awk 不行.
  5. LyX (一個半所見即所得(quasi-WYSIWYG) 的 LaTeX 界面),可在 ftp://ftp.via.ecp.fr 找到.

2.1 安裝軟體

安裝與設定 SGML-Tools 所需的步驟是:

  1. 首先,在某處解開 sgml-tools-0.99.0.tar.gz 的壓縮檔. 它將產生 sgml-tools-0.99.0 的目錄.在那裡解開都沒有關係,只是不要把裡面的東西搬離 sgml-tools-0.99.0 目錄就行.
  2. 閱讀 INSTALL 檔,它包含了安裝過程的細節.

如果一切順利,你就可以使用它了.

譯註: 其實就是執行 install 這支 shell script,回答它的問題就行了!

2.2 編排 SGML 文件

例如說你想要編排一份 SGML 文件叫 foo.sgml,這裡有一份簡短的說明如何輸出成不同的格式.完整的選項列表請參考 man pages.

產生純文字輸出

如果你想產生純文字檔,使用這個指令:

% sgml2txt foo.sgml 

請注意我已調整 groff 轉換為純文字輸出.也就是說,我將頁首,頁碼,邊框等去掉. 經過一些修改你可以從 groff 的輸出產生 PostScript 與 DVI 格式,但我建議你用 LaTeX 比較好.

你可以為 man pages 產生 groff 的原始檔,而用 groff -man 將其編排. 執行這個指令:

% sgml2txt -man foo.sgml 

產生 LaTeX, DVI 或 PostScript 輸出

要從 SGML 原始檔產生 LaTeX 文件,就用:

% sgml2latex foo.sgml 

如果你希望產生 PostScript 輸出(經由 dvips),可用 -p 選項:

% sgml2latex -p foo.sgml 

或者你可以加上 -d 選項產生 DVI 檔:

% sgml2latex -d foo.sgml 

產生 HTML 輸出

如果你希望輸出 HTML 檔,用這指令:

% sgml2html -img foo.sgml 

這將產生 foo.html, foo-1.html, foo-2.html, 等等 --- 每一章一個檔案.foo.html 是首頁,可以用你的 WWW 瀏灠器觀看. 確定你所有的 HTML 檔在同一目錄下,因為它們是用相對的 URL 彼此參考的. HTML 檔的圖示目錄指向 $SGMLTOOLSLIB/icons 所定義的目錄. 這些檔都應被拷貝到最後的位置上.$SGMLTOOLSLIB/ 定義在 SGML 轉換程序的最開頭.

如果你使用 sgml2html 而沒有加上 -img 選項的話,產生的 HTML 文件會加上導讀用的 "Previous", "Next", 以及 "Table of Contents" 標籤. 你可以藉由在 $SGMLTOOLSLIB/rep/html/<filename> 建立一個檔案以蓋過這些預設, 並且以你自己的話來取代它們.該檔案的格式如下所示: he following format:

        PrevPage:  newvalue
    NextPage:  newvalue
        TOC:     newvalue
範例請參閱 deutsch

產生 GNU Info 格式的輸出

如果你想要將你的檔案編排成 GNU Info 瀏覽程式接受的格式,只要使用下列指令:

% sgml2info foo.sgml 

產生 LyX 格式的輸出

欲產生 LyX 格式的出,使用這個指令:

% sgml2lyx foo.sgml 

產生 RTF 格式的輸出

如果你想產生 RTF 格式的輸出,執行這個指令:

% sgml2rtf foo.sgml 

這將會產生 foo.rtf, 以及 foo-1.rtf, foo-2.rtf, 等等檔案---文件的每一節自成一個檔案.

檢查 SGML 語法

如果你只是想從 SGML 轉換中抓出你的錯誤,可以使用 sgmlcheck 這個指令稿. 例如:

% sgmlcheck foo.sgml 

2.3 ISO 8859-1 字元集

ISO 8859-1 (latin1) 字元集可以用在純文字 LaTeX, HTML, LyX, 以及 RTF 輸出的國際字元(GNU Info 未來可能支援 ISO 8859-1). 要使用這項功能的話,可以加上 -l 選項給編排指令稿,例如:

% sgml2txt -l foo.sgml 
你也可以在 SGML 原始文件中使用 ISO 8859-1 字元,它們會自動被轉換成對應文件格式的適當逸出字元(escape codes).


Next Previous Contents