日本語版 Linuxdoc-SGML に関するQ&A <author> 小野@京大環境地球, <tt>ono@jf.gee.kyoto-u.ac.jp</tt> <date> v0.2, 17 Mar 1996 <abstract> この文書は日本語版 Linuxdoc-SGML(jlinuxdoc-sgml) を使うにあたって 生じる疑問にお答えするものです。この文書自体も SGML で書かれており、 jlinuxdoc-sgml の FAQ タグを使っています。 </abstract> <toc> <sect>入手・インストール・動作環境 <p> <sect1>jlinuxdoc-sgml はどこから入手できるのでしょうか? <p> <faq> <question> jlinuxdoc-sgml はどこから入手できるのでしょうか?<newline> 動作させるためには他にどんなものが必要ですか? </question> <answer> JF と呼ばれる Linux の日本語文書群に含まれるので、その匿名 ftp サイト から入手できます。<htmlurl url="ftp://ftp.kuis.kyoto-u.ac.jp/Linux/JF/misc/" name="ftp://ftp.kuis.kyoto-u.ac.jp/Linux/JF/misc/"> などに置いて あります。<newline> 英語版の linuxdoc-sgml-1.5 からのパッチとなっているので、英語版も必要と なります。その他 groff や LaTeX なども必要となります。詳しくは、附属の README.v1.5j を御覧下さい。 </answer> </faq> <sect1>jlinuxdoc-sgml は Linux でしか動作しないのですか? <p> <faq> <question> jlinuxdoc-sgml は Linux でしか動作しないのですか?<newline> 他の OS にインストールした場合にどのような問題が生じますか? </question> <answer> jlinuxdoc-sgml は HOWTOs などの Linux の文書の整備を目的として作られた ために <it>linux</it> という文字列がその名称の中に含まれていますが、 他の OS で使っても問題ありません。sgmls や roff などを使う都合上、 UNIX 互換の OS でないとインストールできないと思いますが、Linux に依存 した部分はありません。ただし、roff の代わりに groff を lex の代わりに flex を使うなどしているため、若干の変更が必要となるものもあるでしょう。 </answer> </faq> <sect1>数式や図表の入った文書作成に使えますか? <p> <faq> <question> SGMLでは様々な形態の文書を作成できるはずですが、jlinuxdoc-sgml では 数式や図表の入った文書作成に使えますか? </question> <answer> 残念ながら使えません。<newline> 目的が HOWTOs の文書整備なので、将来的にもサポートされるかどうかは なんとも言えません。日本語版の独自拡張機能として画像などを扱えるよう に変更することは可能ですが、あまり拡張すると英語版との互換性が崩れる ので悩むところです。 </answer> </faq> <sect1>インストールに失敗しました <p> <faq> <question> README.v1.5j に書いてある通りにインストールしようとしたの ですが、./install の途中でエラーになってしまいました。 </question> <answer> パッチが正しく当っているか、flex が入っているか、スーパーユーザー になっているか確かめて下さい。<newline> なお、flex でのコンパイルの際にたくさんの警告を発しますが、これは エラーではありません。 </answer> </faq> <sect1>jguide.sgml をプレーンテキストに変換できません <p> <faq> <question> jguide.sgml をプレーンテキストに変換できません。 </question> <answer> 1.09以前の groff を使っている場合は、マクロの指定を <tt> -ms </tt> の代わりに <tt> -mgs </tt> とする必要があります。 また、JE のバージョンによっては、 groff がうまく動かないことがある ようですから、groff を入れ換えてみたらどうでしょうか。 </answer> </faq> <sect1>jguide.sgml を DVI ファイルに変換できません <p> <faq> <question> LaTeX でエラーになってしまい、jguide.sgml を DVI ファイルに変換 できません。 </question> <answer> JE ではなく、自分でコンパイルした JLaTeX を使っている場合は、環境変数 <tt>TEXINPUTS</tt>の定義をし直さないといけないことがあります。sgml2latex の<tt>TEXINPUTS</tt>の定義の記述を変更してみて下さい。 </answer> </faq> <sect1>jguide.sgml を PS ファイルに変換できません <p> <faq> <question> jguide.sgml を変換してみて DVI ファイルまでは作れるのですが、PSファイル への変換で失敗しているようです。 </question> <answer> sgml2latex の中の jdvi2kps か dvi2ps の記述が正しいか確認して下さい。 もちろん jdvi2kps や dvi2ps 自身の設定も正しくなくてはいけません。 </answer> </faq> <sect1>自分で作った SGML ファイルの変換がうまくいきません <p> <faq> <question> jguide.sgml の変換はうまくいくのですが、自分で作った SGML ファイルの 変換がどうしてもうまくいきません。構文は間違っていないと思うのですが。 </question> <answer> jlinuxdoc-sgml で扱うことのできる漢字コードは EUC-J だけです。他の 漢字コードを使っていたり、半角カタカナなどが入っていないかどうか 確かめて下さい。 </answer> </faq> <sect> 用語と SGML <p> <sect1>SGMLって何ですか? <p> <faq> <question> SGMLって何ですか? </question> <answer> SGML とは、Standard Generalized Markup Language の略で全文データベース (DB)を作成・保守するための記述言語です。1986年に ISOの規格 8879になり 欧米で広く使われており、日本でも1992年に JIS規格 X-4151となって最近 注目を浴びています。主に電子出版のための標準書式として使われており、 文書構造とタグを DTD と呼ばれるファイルで定義しておき、それに即した タグ入りの文書を作りそれをフィルタにかけることで、様々な書式に変換 したりデータベースを作成することが可能となります。 </answer> </faq> <sect1>DTDって何ですか? <p> <faq> <question> DTDって何ですか? </question> <answer> DTDは Document Type Definition の略で、SGMLの文書構造とそれを表現 するためのタグに関する定義、あるいは定義をするファイルのことです。 SGML には標準化された DTD があるわけではなく、自分達の都合に合わせ て定義します。jlinuxdoc-sgml では <it>linuxdoc.dtd</it> という ファイルによって定義されています。 </answer> </faq> <sect1> REP って何ですか? <p> <faq> <question> REP って何ですか? </question> <answer> REPとは、SGML の用語ではなく sgmls というソフトウェアで使う各種 ファイル形式への変換につかうタグや特殊文字の変換テーブルの定義 ファイルです。jlinuxdoc-sgml では $LINUXDOCLIB/rep/ 以下 にファイル形式や言語ごとに別れて入れられています。 </answer> </faq> <sect1> sgmls って何ですか? <p> <faq> <question> sgmls って何ですか? </question> <answer> sgmlsは ISO 8879 準拠の フリーの SGML パーサ(構文解析ソフトウェア)で、 James Clark(jjc@jclark.com)によって作成されました。<newline> sgmlsは、SGML文書を解析して構文チェックを行い、ESIS(Element Structure Information Set)形式を出力します。ユーザは、ESIS形式を 自分が使用しているフォーマッタ形式(TeX, Troffなど)に変換して 印刷(最終出力)を行うことができます。この変換のためのプログラムとし て、Cで記述された sgmlsaspが提供されています。<newline> jlinuxdoc-sgml では土屋 哲氏(tsuchiya@sysrap.cs.fujitsu.co.jp) によって日本語化された sgmls を使用しています。 </answer> </faq> <sect1> jlinuxdoc-sgml を使うのに SGML の知識は必要ですか? <p> <faq> <question> jlinuxdoc-sgml を使うためには、SGML について勉強しなければいけないの でしょうか? </question> <answer> その必要はありません。jguide.euc や jguide.sgml を見ながらタグの使い 方と変換方法さえ覚えれば、SGML の詳細については全く知らなくても使い こなすことができます。ただし、jlinuxdoc-sgml を改良するには多少の知識 は必要となります。 </answer> </faq> <sect> SGML 文書の作成 <p> <sect1>jlinuxdoc-sgml 対応の SGML エディタはありますか? <p> <faq> <question> jlinuxdoc-sgml 対応の SGML エディタはありますか? </question> <answer> 今のところありませんが、そのかわり lnxsgml.el という elisp がある ので、mule などをお使いであれば lnxsgml.el を読み込むことにより、 SGML のタグ入力や書式の変換を簡単に行なうことができます。<newline> lnxsgml.el は jlinuxdoc-sgml に附属しますが、./install ではインス トールされないので自分の手で適切な場所にコピーして下さい。 </answer> </faq> <sect1>変換したプレーンテキストが格好悪いのですが <p> <faq> <question> jLinuxdoc-SGML でプレーンテキストに変換すると、空行が減らされてしまい 期待した出力が得られません。 </question> <answer> sgml2txt ではデフォルトで余計な空行を削るようにしています。削る空行の 量は -b オプションで調整できます。<tt>sgml2txt -b 2 *.sgml</tt> とす ると、2行までの連続する空行を認めそれ以上の空行を削るようにします。 </answer> </faq> <sect1>入力した文字や行が変換後に消えてしまいます <p> <faq> <question> SGML のソースで入力したはずの文字が消えたり、ある文字以降の行が 変換後にファイルでは表示されていないのですがバグでしょうか? </question> <answer> 制御文字を使っていないかどうかチェックして下さい。直接使ってはいけない 文字は以下のものです。 <tscreen> [, ], &, <, >, &etago;, $, #, %, \, &dquot; </tscreen> また、行の先頭に . があってもいけません。<newline> これらのチェックをしてもまだうまくいかないのならバグである可能性 があります。 </answer> </faq> <sect1>行のセンタリングや右揃えなどはできないのでしょうか? <p> <faq> <question> 行のセンタリングや右揃えなどはできないのでしょうか? また、フォントの大きさや色の指定はできないのでしょうか? </question> <answer> 現時点ではできませんが将来は対応するかもしれません。 </answer> </faq> <sect1><quote> や <tscreen> の環境の中で空行が使えません <p> <faq> <question> <quote> や <tscreen> の環境の中で空行を入れて改行させよう と思っているのですが、エラーになってしまいます。 </question> <answer> 空行のかわりに <p> を使って下さい。 </answer> </faq> </article>