
                           SGML-Tools ʹ˵
                                       
: Matt Welsh. Updated by Greg Hankins.
: [1]C.W.Huang [2]cwhuang@phys.ntu.edu.tw

   v0.99.0, 29 November 1996. : 4-15 August 1997
     _________________________________________________________________
   
   ļ SGML-Tools ʹ˵һ SGML Ϊͬ
   ʽĹߣõһ SGML ԭʼļֵ (ASCII 
   ISO-8859-1), DVI, PostScript, HTML, GNU info, LyX,  RTF ļ
   ˵ SGML-Tools 0.99.0. Ϊ׼
     _________________________________________________________________
   
1. 

     * 1.1 춴ļ
     * 1.2 Ϊ SGML?
     * 1.3 
       
2. װ

     * 2.1 װ
     * 2.2  SGML ļ
     * 2.3 ISO 8859-1 Ԫ
       
3. ʹ SGML-Tools ׫дļ

     * 3.1 
     * 3.2 Ԫ
     * 3.3 Verbatim  Code 
     * 3.4 ļݸŹ
     * 3.5 ο
     * 3.6 
     * 3.7 б
     * 3.8 һѶ
     _________________________________________________________________
   
1. 

   һ SGML-Tools ļϵͳʹ˵SGML-Tools ṩһ SGML
   DTD (ļ̬壬Document Type Definition) һ顸û
   (replacement files)Խ SGML תΪ groff, LaTeX, HTML, GNU
   info, LyX,  RTF ԭʼ
   
   SGML-Tools Ҫ [3]Tom Gordon  QWERTZ DTD Ϊչģ
   
1.1 춴ļ

   ļԸ SGML-Tools ϵ linuxdoc DTD ׫дģ ʹ
    DTD д SGML ļ֪飮 ο example.sgml 
   SGML Լļġ
   
1.2 Ϊ SGML?

   ѡʹ SGML Ϊ SGML רתʽģ SGML 
   Standard Generalized Markup Language ļƣָļĽṹ---
   Ҳǣúʾļ ʹһ DTD (ļ̬) ָļ
   Ľṹlinuxdoc һָ Linux HOWTOs ļ DTD QWERTZ 
   һ DTD; SGML ı׼ṩ飬£һļʹõ DTD
   
   DTD ָļСԪءƣԪؾһֽṹ---£ڣ
   䣬ǸС ǿ֣Ȼ LaTeX ͬǣЩԪ
    SGML ںģlinuxdoc DTD Ͷ LaTeX еԪ---
   £ڣǡȵȣȻ SGML ϲļ
   νṹĳ˵SGML ǵͽ׵ TeX linuxdoc DTD 
   LaTeX
   
   ȸˣSGML һļʽϵͳûνġSGML ʽ
    SGML ԭʼֻתʽԱ㴦ģУSGML 
   ָļĽṹ û SGML ָʽ߻ǡ޼֮ģ
   еһж DTD У û DTD 㲻ʹ SGMLһ DTD 
   SGML ʲᣮ
   
1.3 

   ʹ SGML-Tools ļȣҪһ DTDõ
   QWERTZ DTD һȺΪҪ LaTeX  DTD ģҽ
   QWERTZ DTD ޸ĳ linuxdoc DTD ԷǵDTD 趨ļĽ
   ӵ:
   
<!element article - -
    (titlepag, header?,
     toc?, lof?, lot?, p*, sect*,
     (appendix, sect+)?, biblio?) +(footnote)>

   ⲿ趨ˡļṹ LaTeX ġdocumentstyle 
   һҳ(titlepag)һп޵ı(header)һѡõ
   б(toc)ѡõͼб(lof)б(lot)Ķ(p)
   ½(sect)ѡõĸ¼(appendix)һѡõĲο
   Ŀ(biblio)Լע(footnote)
   
   ɿDTD δ˵ļӦαʽ ֻ
   ļɺֲɣļһط titlepag,
   header, sect ŵԪأ
   
   дļʱ㲢Ҫ֪κι DTD ķֻ㿴һ
   ʲӻʲᣮ Ϥ DTD ļṹ
   ڳдļʱܻΥṹ ұѶϢˣǻ
   SGML ļṹϸڣ
   
    DTD Ľṹдļˣ˵һΣlinuxdoc DTD ʹ
   ļ LaTeX---Ժӣ SGML ˵ʹĳһ
   ر DTD ׫дĵһļǷ DTD ġ(instance)
   
   Ϊ˽ SGML ԭʼתʽ( LaTex  groff)Ա㴦д
   SGML ԭʼ뾭 SGML õ James Clark(
   [4]jjc@jclark.com) д sgmls , Ҳ groff ߣ
   㣮sgmls ļѭ DTD Ľṹ ͬʱļ
   еġ޼ԪչԷһ׶ε sgmlsasp 
   
   sgmlsasp  sgmls תһָʽ( LaTeX) ʹû
   ԭʼ SGML ļеԪתɡĿ꡹ʽ( LaTeX  groff)Ӧ
   ԭʼ
   
   磬һ LaTeX û
   
<itemize>    +    "\\begin{itemize}   +
</itemize>   +    "\\end{itemize}    +

   ˵˵ SGML ԭʼʹ itemize ԪʱӦñû LaTeX ԭ
   ʼе
   
\begin{itemize}

   (˵ˣDTD еԪ LaTeX еĶӦ)
   
   ˣҪ SGML תʽҪľΪ˸ʽдһµû
    ¸ʽΪÿһ SGML ԪָʵĶӦʵϣû---
   磬 㳢תɺ DTD ȫͬĽṹ鷳 
   ҪΪÿһָʽдĽתʽҪ򵥵Ķ࣮ SGML ṩһ
   һϵͳһԭʼתʽ
   
   һ sgmlsasp תɣԭ SGML ԭʼļӦ LaTeX ԭʼ
    һ LaTeX һʹһʾת
   ʽ ֻҪһָ͹ˣ
   
   ȣҪ˵ΰװ趨 SGML-Tools
   
2. װ

   ȴط
     * [5]ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.ta
       r.gz
       
   ȡ sgml-tools-0.99.9.tar.gz
   
   Դ [6]SGML-Tools WWW Page ȡµѶ
   
   sgml-tools-0.99.0.tar.gz Ҫд SGML ļתΪ
   groff, LaTeX, HTML, GNU info, LyX,  RTF Ķ֮⣬ܻ
   ҪеĹ---SGML ϵͳҪЩҽȡЩԷת
   ļ㹫ɢļǰȷǿû⣮
   
    1. groff. ʹ 1.08 µİ汾Դ
       [7]ftp://prep.ai.mit.edu/pub/gnu ȡã
       [8]ftp://sunsite.unc.edu/pub/Linux/utils/text ҵ Linux ִе
       ʹ groff  SGML ļֵ nroff !
    2. TeX  LaTeX. ⼸ÿطУӦÿԺѵҵװ
       ( [9]sunsite.unc.edu ҵ Linux ִе) ȻҪ
       LaTeX ʽ SGML ļҪ TeX/LaTeX
    3. flex. lex ܲУԴ [10]ftp://prep.ai.mit.edu/pub/gnu ȡ
       
    4. gawk  GNU info tools, ʽԤ info  
       [11]ftp://prep.ai.mit.edu/pub/gnu, 
       [12]ftp://sunsite.unc.edu/pub/Linux/utils/text ҵ gawk 
       [13]ftp://sunsite.unc.edu/pub/Linux/system/Manual-pagers ҵ
       GNU info tools. awk У
    5. LyX (һ(quasi-WYSIWYG)  LaTeX )
       [14]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)
   
3. ʹ SGML-Tools ׫дļ

   ʹ SGML-Tools DTD ׫дļĹ̴󲿷Ƿǳ׵ģе
   LaTeX ȻȻЩҪע⣮һҽ SGML ļ׫д
   SGML ļ(дָ) example.sgml Լ
   ġ ڴҽ SGML ĸܣԭʼļΪǺ
   ɶԣ ˣӡ example.sgml ԭʼ()ʵ
   Ĳο
   
3.1 

   ϸļԭʼļע⵽Խ(<  >)ʾġ
   ǩ(tags) ǩָĳԪصʼνԪһ
   һΣһбľ䣬беһĿԼĽṹ ʹñǩ
   ʹ LaTeX ָ \item  \section{...} һ㣮
   
   ٸ򵥵ӣҪһ ֣ԭʼм
   
ٸ򵥵ӣҪһ <bf></bf>, ...

   <bf> δֵĿͷ </bf> ǽβ Ҳʹʽ
   
ٸ򵥵ӣҪһ <bf//, ...

   бְ߽ס(Ȼֺߣͱʹó
   ʽ  Unix ĵƣ)
   
   ԪҪע (Ϊʲϸ۲ԭʼļ
   ͻע⵽Щܹ "&" ʾʽҽ̵˵Щ)
   
   ĳЩ£ضԪ֮βǩǿѡõģ 磬ĳһڵĿ
   ʼʹ <sect> ǩȻýڵĽβǩ (Գڸý屾
   ĵطֻǸýڵ!) ǿѡõĶͬһοʼ
   һڵʱҲͰʾýڵĽ һ˵㲻ҪЩϸڣֻҪ
   ʹ example.sgml ָġͿˡ
   
3.2 Ԫ

   ԵģǱ SGML ԭʼļԪ⻹
   עԪ 磬ɽǵıʾʽ: <foo>
   Ϊ˱ʾߵĽţʹ &lt; Ԫأ һչ
   Ԫġ޼ˣԭʼļм
   
angle brackets around it, as so: <tt>&lt;foo></tt>.

   һ˵ԽԪ(&)Ϊʼʾһľ޼ 磬 % 
   ŵ &percnt;  |  &verbar; ȵȣ еġԪн
   ޼Աʾǣ
   
   ͨ㲻ҪʹýϾ޼ʾĳԪȻĳЩǱ
   õǣ
     * Use &amp; for the ampersand (&),
     * Use &lt; for a left bracket (<),
     * Use &gt; for a right bracket (>),
     * Use &lt;/ for a left bracket with a slash (</)
     * Use &dollar; for a dollar sign ($),
     * Use &num; for a hash (#),
     * Use &percnt; for a percent (%),
     * Use &tilde; for a tilde (~),
     * Use `` and '' for quotes, or use &ldquo; for ", &rdquo; for ".
       
   ԪбԲ鿴һ滻 ͨ LaTeX ᱧԹԪ
   Բ $SGMLTOOLSLIB/rep/latex/general ǸõĿʼ
   $SGMLTOOLSLIB  SGML תǰ森
   
3.3 Verbatim  Code 

   ԪʱҲᵽverbatim  
   к벻ӱ䶯(հԪԼţ) verb 
   Ԫؾ;ģ
   
<verb>
 Some literal text to include as example output.
</verb>

   verb ʹκζ رأ verb 
   
     * ʹ &amp;  &
     * ʹ &lt;/  </
     * Ҫ verb ʹ \end{verbatim} Ϊ LaTeX 
       verbatim ģ (δӦÿȫصײֱţĿǰĽ
       ֧Ԯ)
       
   code ǳ verb Χָ
     _________________________________________________________________
   
 code ӣ
     _________________________________________________________________
   
   Ӧκ verb Χʹ tscreen 
   
<tscreen><verb>
һ䣮
</verb></tscreen>

   tscreen һŲ趨ԤΪ tt ʹáҪ
   LaTeX Լֵİ汾пöˣ ʹ tscreen  verb
   ڡʹκεԪҪ tscreen 
   Ԫ޹أ example.sgml
   
   quote  tscreen˲ԤΪ ttԣʹ
   quote ޹صã磺
   
<quote>
Here is some text to be indented, as in a quote.
</quote>

   
   
     Here is some text to be indented, as in a quote.
     
3.4 ļݸŹ

   оϸ֮ǰҪʼ linuxdoc DTD ļŹۣļ
   ġϸۿ example.sgml
   
  
  
   ļġġǱԼļ̬(style)ĶLinux HOWTO
   ļӦ
   
<!doctype linuxdoc system>

<article>

<title>Linux Foo HOWTO
<author>ΰ, <tt/cwhuang@phys.ntu.edu.tw/
<date>v1.0, 14 August 1997
<abstract>
ļ˵ʹ <tt/foo/ ߣ
</abstract>

<toc>

   ЩĿ밴˳򣮵һи SGML ʽʹ
   linuxdoc DTD <article> ǩ涨ļʹáarticleļ̬
   (ԭȵ QWERTZ DTD  reportԼbook̬Ҳû޸
    SGML-Tools ʹ)
   
   title, author, Լ date ЩǩӦǺԵģ  date ǩ
   ļİ汾Լ޸ʱ䣮
   
   abstract ǩ趨ļ֮ǰӡ֣ 㲻뺬
   (toc ǩ)ܲҪ abstract
   
  ½
  
   ֮ᣬͿ׼ļеķָֽʹã
     * sect: ½ (Ҳ 1, 2, ȵ)
     * sect1: ڶĴ½ (Ҳ 1.1, 1.2, ȵ)
     * sect2: С½
     * sect3: ĲСС
     * sect4: ССС
       
   ൱ LaTeX жӦ section, subsection ȵȣ
   
    sect ( sect, sect ȵ) ǩ֮Ǹýڵƣ 磬ļ
   ˣ֮Ǵ˱ǩ
   
<sect>

   ڴ˽ڿʼĵط()иǩǣ
   
<sect2>

   һڵıǩ֮ᣬ㿪ʼļ壮Ȼһ <p> ǩʼ
   
   
<sect>
<p>
һ SGML-Tools ļʹָ....

   Ǹ߽ʽһڵıⲢ׼ÿʼ壮 ᣬµĶ
   Կհпʼ(ͬ TeX)磬
   
ǵһεĽβ

Ǵ￪ʼµһΣ

   ûʲҪÿǰʹ <p> ǩֻҪڷָֽĵһ
   俪ʼӾУ
   
  ļβ
  
   ļĵطʹǩ
   
</article>

   Ը߽ʽѾ article Ԫ(ļ)
   
3.5 ο

   Ҫϵͳܣοף磬Ҫĳһ
   ڵĽοʾý:
   
<sect1><label id="sec-intro">

   Ϳļеĳطʽʾʽոýڣ
   
ο<ref id="sec-intro" name="">һڵĽܣ

   ⽫ sec-intro ǵĽں滻 ref ǩ  groff Լ
   HTML ת name Ǳģ SGML-Tools ʹõ groff ޼趨Ŀǰ
   δ֧Ԯοȡֲĳһڣ
   
   磬 [15]ο
   
   ȫѶʹõͨԴλ URL ҲԪ url Ԫ
   ӦļFTP ϵĵȵȣ磺
   
ɴӴȡ Linux HOWTO ļ
<url url="http://sunsite.unc.edu/mdw/HOWTO/"
   name="The Linux HOWTO INDEX">

   url ָ URL Զ뵽 HTML ļУ ѡõ
   name ָӦü(HTML ת)Ϊ URL (LaTeX 
   groff)ûи name ʹ URL 
   
   磬Դȡ SGML-Tools ׼
   [16]ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.g
   z.
   
   һõı htmlurl HTML ļÿļ URL ݽ
   ֣ Ǹ˵ĵʼλַд
   
<htmlurl url="mailto:esr@snark.thyrsus.com"
      name="esr@snark.thyrsus.com">

   ڴлáesr@snark.thyrsus.com ظ
   esr@snark.thyrsus.com <mailto:esr@snark.thyrsus.com>  HTML 
   Ȼʵ URL ݣ
   
3.6 

   ϣSGML-Tools ֧Ԯ LaTeX ͬͣ ע⣬Σֵת
   ( groff)й͵Ѷ ԣԾܵʹöͣ
    LaTeX תкô ڴֵİ汾вҪָ͵
   㣮
   
   رǣǰ tt ǩ¿ȹ̶ġֻͣ
   ӦеĵʵλַƣƵȵȣ 磺
   
Here is some <tt>typewriter text</tt> to be included in the document.

   ൱춣
   
Here is some <tt/typewriter text/ to be included in the document.

   ǵֲбʹüʽ
   
     õ bf Լ б õ em ⻹֧Ԯͣ
   ҲʹǣΪǻᱻת HTML ֧Ԯͣ 壬
   ֻ壬ԼбӦҪ
   
3.7 б

   ϵͳ֧Ԯֲͬбǣ
     * itemize ĸʾб
     * enum б
     * descrip б
       
    itemize  enum Ŀ item ǩԱʾ  descrip 
   Ŀ tag ʾ 磬
   
<itemize>
<item>һĿ
<item>ǵڶĿ
</itemize>

   
     * һĿ
     * ǵڶĿ
       
    enum 
   
<enum>
<item>ǵһĿ
<item>ǵڶĿ
</enum>

   Ӧóбǳ״ģϸġļ
   
   descrip бвͬеѿĳЩܻʹ
   
<descrip>
<tag/Gnats./ Annoying little bugs that fly into your cooling fan.
<tag/Gnus./ Annoying little bugs that run on your CPU.
</descrip>

   ῴ
   
   Gnats.
          Annoying little bugs that fly into your cooling fan.
          
   Gnus.
          Annoying little bugs that run on your CPU.
          
3.8 һѶ

    1. QWERTZ ʹָԴȡ
       [17]ftp://ftp.cs.cornell.edu/pub/mdw/SGML. QWERTZ (Լ
       SGML-Tools) ֧Ԯѧʽͼεԣ 
       SGML дһļҽԭ QWERTZ DTD Ҫ޸Ĺ
       linuxdoc DTD Ϊرд Linux HOWTOs ļõ
       
    2. Tom Gordon  QWERTZ tools ڴҵ
       [18]ftp://ftp.gmd.de/GMD/sgml.
    3.  SGML ѶЩҳҵ
          + [19]SGML and the Web
          + [20]SGML Web Page
          + [21]Yahoo's SGML Page
    4. James Clark  sgmls  nsgmls ߿ҵ
        [22]ftp://ftp.jclark.com Լ [23]James Clark's WWW Page.
    5. emacs psgml ڴҵ [24]ftp://ftp.lysator.liu.se/pub/sgml
       ṩ SGML Ĺܣ
    6. Լĵʼ [25]majordomo@via.ecp.fr Բ SGML-Tools
       mailing listд subscribe sgml-tools Mailing list ĵַ
       [26]sgml-tools@via.ecp.fr
    7.  LyX ĸѶڴҵ [27]LyX WWW Page. LyX һ
       LaTeX õĸִ߽ǰˣ ߰ý棬Զ
       LaTeX ʽ֣  LaTeX ѧϰʹӵĸֱ
       ֱӣ

References

   1. http://www.phys.ntu.edu.tw/~cwhuang/pub/
   2. mailto:cwhuang@phys.ntu.edu.tw
   3. mailto:thomas.gordon@gmd.de
   4. mailto:jjc@jclark.com
   5. ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.gz
   6. http://www.xs4all.nl/~cg/sgmltools/
   7. ftp://prep.ai.mit.edu/pub/gnu
   8. ftp://sunsite.unc.edu/pub/Linux/utils/text
   9. ftp://sunsite.unc.edu/
  10. ftp://prep.ai.mit.edu/pub/gnu
  11. ftp://prep.ai.mit.edu/pub/gnu
  12. ftp://sunsite.unc.edu/pub/Linux/utils/text
  13. ftp://sunsite.unc.edu/pub/Linux/system/Manual-pagers
  14. ftp://ftp.via.ecp.fr/
  15. file://localhost/tmp/zh-sgmltools.7880/SGML-Guide.txt.html#cross-ref
  16. ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.gz
  17. ftp://ftp.cs.cornell.edu/pub/mdw/SGML
  18. ftp://ftp.gmd.de/GMD/sgml
  19. http://www.w3.org/hypertext/WWW/MarkUp/SGML/
  20. http://www.sil.org/sgml/sgml.html
  21. http://www.yahoo.com/Computers_and_Internet/Information_and_Documentation/Data_Formats/SGML/
  22. ftp://ftp.jclark.com/
  23. http://www.jclark.com/
  24. ftp://ftp.lysator.liu.se/pub/sgml
  25. mailto:majordomo@via.ecp.fr
  26. mailto:sgml-tools@via.ecp.fr
  27. http://wsiserv.informatik.uni-tuebingen.de/~ettrich/
