📄 sgml-guide-2.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
<TITLE>SGML-Tools 使用说明中译版: 安装</TITLE>
<LINK HREF="SGML-Guide-3.html" REL=next>
<LINK HREF="SGML-Guide-1.html" REL=previous>
<LINK HREF="SGML-Guide.html#toc2" REL=contents>
</HEAD>
<BODY>
<A HREF="SGML-Guide-3.html">Next</A>
<A HREF="SGML-Guide-1.html">Previous</A>
<A HREF="SGML-Guide.html#toc2">Contents</A>
<HR>
<H2><A NAME="s2">2. 安装</A></H2>
<P>首先从这个地方
<UL>
<LI><CODE>
<A HREF="ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.gz">ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.gz</A></CODE></LI>
</UL>
取得 <CODE>sgml-tools-0.99.9.tar.gz</CODE>.
<P>你可以从 <CODE>
<A HREF="http://www.xs4all.nl/~cg/sgmltools/">SGML-Tools WWW Page</A></CODE> 取得最新的资讯.
<P>
<P><CODE>sgml-tools-0.99.0.tar.gz</CODE> 包含了所有你需要用来写 SGML 文件并转换为 groff, LaTeX, HTML, GNU info, LyX,
与 RTF 的东西.除此之外,你可能还需要下列的工具---SGML 系统并不需要这些,但我建议你取得这些工具以方便你转换文件,在你公开散布你的文件前将先确定它们看起来没问题.
<P>
<OL>
<LI><CODE>groff</CODE>. 你<EM>必须</EM>使用 1.08 或更新的版本.你可以从
<CODE>
<A HREF="ftp://prep.ai.mit.edu/pub/gnu">ftp://prep.ai.mit.edu/pub/gnu</A></CODE> 取得.在
<CODE>
<A HREF="ftp://sunsite.unc.edu/pub/Linux/utils/text">ftp://sunsite.unc.edu/pub/Linux/utils/text</A></CODE>
可找到 Linux 的执行档.你必需使用 <CODE>groff</CODE> 让你的 SGML 文件产生纯文字档.
<CODE>nroff</CODE> <EM>不行</EM>!
</LI>
<LI><CODE>TeX 与 LaTeX</CODE>. 这几乎在每个地方都有,你应该可以毫无困难地找到并安装
(在 <CODE>
<A HREF="ftp://sunsite.unc.edu">sunsite.unc.edu</A></CODE> 可以找到 Linux 的执行档)
当然,如果你要用 LaTeX 来格式化你的 SGML 文件你才需要 TeX/LaTeX.
</LI>
<LI><CODE>flex</CODE>. <CODE>lex</CODE> 可能不行.你可以从
<CODE>
<A HREF="ftp://prep.ai.mit.edu/pub/gnu">ftp://prep.ai.mit.edu/pub/gnu</A></CODE> 取得.
</LI>
<LI><CODE>gawk</CODE> 与 GNU info tools, 用来格式化与预视 info 档案.
在
<CODE>
<A HREF="ftp://prep.ai.mit.edu/pub/gnu">ftp://prep.ai.mit.edu/pub/gnu</A></CODE>, 或
<CODE>
<A HREF="ftp://sunsite.unc.edu/pub/Linux/utils/text">ftp://sunsite.unc.edu/pub/Linux/utils/text</A></CODE> 可以找到 <CODE>gawk</CODE>,
还有
<CODE>
<A HREF="ftp://sunsite.unc.edu/pub/Linux/system/Manual-pagers">ftp://sunsite.unc.edu/pub/Linux/system/Manual-pagers</A></CODE>
可找到 GNU info tools. <CODE>awk</CODE> 不行.
</LI>
<LI>LyX (一个半所见即所得(quasi-WYSIWYG) 的 LaTeX 界面),可在
<CODE>
<A HREF="ftp://ftp.via.ecp.fr">ftp://ftp.via.ecp.fr</A></CODE> 找到.</LI>
</OL>
<P>
<H2><A NAME="ss2.1">2.1 安装软体</A>
</H2>
<P>安装与设定 SGML-Tools 所需的步骤是:
<OL>
<LI>首先,在某处解开 <CODE>sgml-tools-0.99.0.tar.gz</CODE> 的压缩档.
它将产生 <CODE>sgml-tools-0.99.0</CODE> 的目录.在那里解开都没有关系,只是不要把里面的东西搬离
<CODE>sgml-tools-0.99.0</CODE> 目录就行.
</LI>
<LI>阅读 <CODE>INSTALL</CODE> 档,它包含了安装过程的细节.
</LI>
</OL>
<P>如果一切顺利,你就可以使用它了.
<P>译注: 其实就是执行 <CODE>install</CODE> 这支 shell script,回答它的问题就行了!
<P>
<H2><A NAME="ss2.2">2.2 编排 SGML 文件</A>
</H2>
<P>例如说你想要编排一份 SGML 文件叫 <CODE>foo.sgml</CODE>,这里有一份简短的说明如何输出成不同的格式.完整的选项列表请参考 man pages.
<P>
<H3>产生纯文字输出</H3>
<P>如果你想产生纯文字档,使用这个指令:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2txt foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>请注意我已调整 groff 转换为纯文字输出.也就是说,我将页首,页码,边框等去掉.
经过一些修改你可以从 groff 的输出产生 PostScript 与 DVI 格式,但我建议你用 LaTeX 比较好.
<P>
<P>你可以为 man pages 产生 groff 的原始档,而用 <CODE>groff -man</CODE> 将其编排.
执行这个指令:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2txt -man foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>产生 LaTeX, DVI 或 PostScript 输出</H3>
<P>要从 SGML 原始档产生 LaTeX 文件,就用:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2latex foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>如果你希望产生 PostScript 输出(经由 <CODE>dvips</CODE>),可用 <CODE>-p</CODE> 选项:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2latex -p foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>或者你可以加上 <CODE>-d</CODE> 选项产生 DVI 档:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2latex -d foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>产生 HTML 输出</H3>
<P>如果你希望输出 HTML 档,用这指令:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2html -img foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>这将产生 <CODE>foo.html</CODE>, <CODE>foo-1.html</CODE>, <CODE>foo-2.html</CODE>, 等等 --- 每一章一个档案.<CODE>foo.html</CODE> 是首页,可以用你的 WWW 浏□器观看.
确定你所有的 HTML 档在同一目录下,因为它们是用相对的 URL 彼此参考的.
HTML 档的图示目录指向 <CODE>$SGMLTOOLSLIB/icons</CODE> 所定义的目录.
这些档都应被拷贝到最後的位置上.<CODE>$SGMLTOOLSLIB/</CODE> 定义在 SGML 转换程序的最开头.
<P>
<P>如果你使用 <CODE>sgml2html</CODE> 而没有加上 -img 选项的话,产生的 HTML 文件会加上导读用的 "Previous", "Next", 以及 "Table of Contents" 标签.
你可以藉由在 <CODE>$SGMLTOOLSLIB/rep/html/<filename></CODE> 建立一个档案以盖过这些预设,
并且以你自己的话来取代它们.该档案的格式如下所示:
he following format:
<BLOCKQUOTE><CODE>
<PRE>
PrevPage: newvalue
NextPage: newvalue
TOC: newvalue
</PRE>
</CODE></BLOCKQUOTE>
□例请参阅 <CODE>deutsch</CODE>.
<P>
<H3>产生 GNU Info 格式的输出</H3>
<P>如果你想要将你的档案编排成 GNU Info 浏览程式接受的格式,只要使用下列指令:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2info foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>产生 LyX 格式的输出</H3>
<P>欲产生 LyX 格式的出,使用这个指令:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2lyx foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>产生 RTF 格式的输出</H3>
<P>如果你想产生 RTF 格式的输出,执行这个指令:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2rtf foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>这将会产生 <CODE>foo.rtf</CODE>, 以及 <CODE>foo-1.rtf</CODE>, <CODE>foo-2.rtf</CODE>,
等等档案---文件的每一节自成一个档案.
<P>
<H3>检查 SGML 语法</H3>
<P>如果你只是想从 SGML 转换中抓出你的错误,可以使用 <CODE>sgmlcheck</CODE> 这个指令稿.
例如:
<BLOCKQUOTE><CODE>
<PRE>
% sgmlcheck foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2><A NAME="ss2.3">2.3 ISO 8859-1 字元集</A>
</H2>
<P>ISO 8859-1 (latin1) 字元集可以用在纯文字
LaTeX, HTML, LyX, 以及 RTF 输出的国际字元(GNU Info 未来可能支援 ISO 8859-1).
要使用这项功能的话,可以加上 <CODE>-l</CODE> 选项给编排指令稿,例如:
<BLOCKQUOTE><CODE>
<PRE>
% sgml2txt -l foo.sgml
</PRE>
</CODE></BLOCKQUOTE>
你也可以在 SGML 原始文件中使用 ISO 8859-1 字元,它们会自动被转换成对应文件格式的适当逸出字元(escape codes).
<P>
<HR>
<A HREF="SGML-Guide-3.html">Next</A>
<A HREF="SGML-Guide-1.html">Previous</A>
<A HREF="SGML-Guide.html#toc2">Contents</A>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -