[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3. Texinfoファイルを始める

情報の部品は,Texinfoファイルの最初に提供する必要があり,それは,出力ファ イルの名前,ドキュメントタイトル,そしてTopノードです.

この章では,以前に見せた(see section Texinfoファイルの六つの部品)最小限の完全なTexinfoソースファ イルを拡張していきます.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.1 Texinfoファイルの始まりのサンプル

以下のサンプルは,必要なものを表示しています.以下で与えられている要素は, それ以降のセクションで詳細に説明します.それ以外のコマンドで,Texinfoファ イルの最初に含められることが多いものもありますが,ここにあるものが最も重 要です.

GNUマニュアルで使用されている完全なテキストは,See section GNUの見本のテキスト.

 
\input texinfo   @c -*-texinfo-*-
@c %**start of header
@setfilename infoname.info
@settitle name-of-manual version
@c %**end of header

@copying
This manual is for program, version version.

Copyright @copyright{} years copyright-owner.

@quotation
Permission is granted to …
@end quotation
@end copying
@titlepage
@title name-of-manual-when-printed
@subtitle subtitle-if-any
@subtitle second-subtitle
@author author
@c  The following two commands
@c  start the copyright page.
@page
@vskip 0pt plus 1filll
@insertcopying
Published by …
@end titlepage

@c So the toc is printed in the right place.
@contents

@ifnottex
@node Top
@top title

@insertcopying
@end ifnottex

@menu
* First Chapter::    Getting started …
* Second Chapter::          …
 …
* Copying::          Your rights and freedoms.
@end menu
@node First Chapter
@chapter First Chapter

@cindex first chapter
@cindex chapter, first
…

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.2 Texinfoファイルのヘッダ

Texinfoファイルは,InfoとTeXに必要な情報を提供する少なくとも三行から始 めます.これらは,\input texinfo行,@settitle行,そして @setfilename行です.

また,Texinfoファイルの一部でTeXを実行したい場合,@settitle@setfilename行を,start-of-headerとend-of-header行の間に書く必要 があります.start-of-headerとend-of-headerの行はオプションですが無害なの で,常に含めた方が良いでしょう.

ドキュメント全体のの書式化に影響のあるコマンドは,ヘッダに含める価値があ ります.例えば,@synindex (see section @synindex)はヘッダに含められる ことが多いもう一つのコマンドです.見本のテキストの完全なものは, See section GNUの見本のテキスト.

このため,Texinfoファイルの始まりは以下のようになります.

 
\input texinfo   @c -*-texinfo-*-
@c %**start of header
@setfilename sample.info
@settitle Sample Manual 1.0
@c %**end of header

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.2.1 Texinfoファイルの最初の行

TeXに入力する,最上位となるすべてのTexinfoファイルは,以下の行で始め る必要があります.

 
\input texinfo   @c -*-texinfo-*-

この行は,二つの機能を提供します.

  1. ファイルがTeXで処理されるとき,‘\input texinfo’コマンドは, Texinfoファイルを処理するため必要なマクロを,TeXにロードするよう伝え ます.これらは‘texinfo.tex’と呼ばれるファイルにあり,TeXまたは Texinfo ソフトウェアのいずれかでシステムにインストールされているはずです. TeXはバックスラッシュ‘\’をコマンドの始めの印として使用し,それは ちょうどTexinfoが使用する‘@’のようなものです.‘texinfo.tex’ファ イルは,‘\’を‘@’に切替えます.切替える前にTeXは‘\’を 要求し,それがファイルの最初に現れる理由です.
  2. ファイルをGNU Emacsで編集するとき,‘-*-texinfo-*-’モード指定は, EmacsにTexinfoモードを使用するように伝えます.

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.2.2 ヘッダの始まり

start-of-header行は以下のようなTexinfoのコメントです.

 
@c %**start of header

Texinfoファイルの二行目に,start-of-header行を書いてください. start-of-header行に続けて,@setfilename@settitle行と, オプションで@smallbook@footnotestyleのようなドキュメン ト全体に影響を与えるその他のコマンド行を書いてください.そして end-of-header行が続きます(see section ヘッダの終り).

start-of-headerとend-of-headerの行で,Texinfoファイルの一部だけをInfoや 印刷物に書式化することが可能になります.See section texinfo-format…コマンド.

%**’という奇妙な文字列は,他のコメントが偶然start-of-header行だと 思われないことを保証します.Emacs変数tex-start-of-headerと/や tex-end-of-headerを設定することで,希望のものに変更することが可能 です.See section Texinfoモードでの書式化と印刷.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.2.3 @setfilename:出力ファイル名を設定する

makeinfoやTeXのための主要な入力ファイルとして供給するため, Texinfoファイルには以下の行を含める必要があります.

 
@setfilename info-file-name

@setfilenameコマンドを行の最初に書き,同じ行にInfoファイル名を続 けてください.その行に他のものは書かないでください,その行のコマンド後は, コメントであっても,全てファイル名の一部と考えられます.

Info書式化コマンドは,@setfilename行の前に書かれている全てのもの を無視し,それはファイルの最初の行(\input行)を出力に表示しません.

@setfilename行で生成する出力ファイルの名前を指定します.この名前 はTexinfoファイルの名前とは異なるものにする必要があります.名前を選ぶ慣 習が二つあります.入力ファイル名から(‘.texi’のような)拡張子を削除す る,またはより望ましい‘.info’拡張子で置換するいずれかを行なうことが 可能です.

明示的な‘.info’拡張子が好まれますが,オペレーティングシステムには, 長いファイル名を処理できないものもあります.指定したファイル名が十分短い ときでも問題となるはずです.これは,Infoフォーマッタが長いInfoファイルを 短い間接的なサブファイルに分割し,‘-1’,‘-2’, …, ‘-10’,‘-11’等を,元のファイルの名前に加えるためです (see section Tag Files and Split Files).例えば,サブ ファイル名‘texinfo.info-10’は,ファイル名に14文字の制限のある古いシ ステムでは長過ぎます.そのため,このドキュメントのInfoファイル名は, ‘texinfo.info’ではなく‘texinfo’としています.makeinfo を,MSーDOSのようなファイル名に重大な制限を加えるオペレーティングシステ ムで実行するとき,それは元のファイル名から数文字削除し,サブファイルのサ フィックスに十分なものだけ残し,そしてファイル名は,‘texin-10’, ‘gcc.i12’等になります.

HTML出力を生成しているとき,makeinfoは拡張子を‘html’に置換す る,または,拡張子が無い場合は‘.html’を追加します.

@setfilename行は,TeXでマニュアルを植字するとき出力を作成しま せんが,それにも関わらず不可欠です.それは,索引,相互参照,そしてその他 のTexinfoファイルで使用される追加ファイルを開き,システムに ‘texinfo.cnf’ファイルがあれば,それも読み込みます(see section Preparing for TeX).


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.2.4 @settitle:ドキュメントのタイトルを設定する

印刷されたマニュアルにするため,Texinfoファイルは,以下のような行を含め る必要があります.

 
@settitle title

@settitleコマンドを行の最初に書き,同じ行にタイトルを続けてくだ さい.これは,TeXにヘッダやフッタで使用するタイトルを伝えます.その行 には他に何も書かないでください.コマンド以降のその行は,タイトルの一部と 考えられ,それには他の場所ではコメントになるもの含まれます.

@settitleコマンドは,TeXで実際に出力を生成するすべてのものに 前置すべきです.

makeinfoで生成されるHTMLファイルには,titleがドキュメン トの‘<title>’として提供され,‘<head>’部分にあるデフォルトのド キュメントの説明になります.それを変更する方法は, @documentdescription:概要のテキストを参照してください.

@settitleコマンドのタイトルは,通常タイトルページのタイトルと同 じですが,タイトルページに現れるタイトルに影響しません.このため,二つは 正確に一致する必要はありません.このため,@settitleコマンドのタ イトルは,タイトルページに現れるタイトルの,短い,あるいは展開されたバー ジョンにすることが可能です(see section @titlepage).

慣習では,TeXでTexinfoファイルを両面出力物のための書式化するとき,タ イトルは左側(偶数)のページの見出しに印刷され,現在の章のタイトルは右側 (奇数)のページの見出しに印刷されます.(TeXは,それぞれの @chapterコマンドからの,それぞれの章のタイトルを記憶します.)デ フォルトで,ページフッタは印刷されません.

片面スタイルの場合でさえ,TeXは@settitleコマンド行を探し,マ ニュアルタイトルを見出しに含める場合に備えます.

TeXは,Texinfoファイルの@end titlepage以降や,見出しを付ける @headingsコマンド以降のテキストに対してのみ,ページ見出しを印刷 します(詳細は,see section The @headings Command).

希望があれば,独自のカスタム見出しとフッタを作成することが可能です.この 処理の詳細な記述は,See section Page Headings.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.2.5 ヘッダの終り

ヘッダ行に,以下のようなTexinfoコメントになっているend-of-headerを続 けてください.

 
@c %**end of header

See section ヘッダの始まり.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.3 ドキュメントの許可

ドキュメントに対する著作権の注意とコピーの許可は,様々なTexinfo出力形式 で複数の場所に表す必要があります.このため,Texinfoはこのテキストを一度 宣言するコマンド(@copying)と,適切な場所にテキストを挿入するため のもう一つのコマンド(@insertcopying)を提供しています.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.3.1 @copying:コピーの許可を宣言する

@copyingコマンドは,ドキュメントのなるべく最初の部分で提供すべき です.推奨される場所はヘッダの材料の(see section Texinfoファイルのヘッダ)直後で す.それは慣習的に,プログラムが何かという一つか二つの文,ドキュメント自 身の証明,そしてコピーの許可から成り立っています.骨組みの例は以下のよう になります.

 
@copying
This manual is for program (version version, updated
date), which …

Copyright @copyright{} years copyright-owner.

@quotation
Permission is granted to …
@end quotation
@end copying

@quotationは法的には重要性ではありません.前後関係の読み易さを改 善するために存在します.

GNUのマニュアルで使用されている完全なテキストは,See section GNUの見本のテキスト. GNUやそれ以外のフリーなマニュアル自身を配布するライセンスは, See section GNU Free Documentation License. ドキュメントの付録としてライセン スを含める必要があります.

@copyingのテキストは,Info,HTML,そしてXMLの出力ファイルの最初 に,コメントとして出力されます.プレーンテキストやTeXでは,暗黙的に出 力されません.コピーの情報を発行するための@insertcopying の使用はお任せします.詳細は次のセクションを参照してください.

@copyright{}は,丸の中の‘c’の出力をサポートしている(印刷 とHTML)の出力形式ではそれを生成します.それ以外のフォーマット(Infoとプレー ンテキスト)では,‘(C)’を生成します.著作権の注意には,以下の法的に 定義された順番があります.

 
Copyright © years copyright-owner.

単語‘Copyright’は,たとえ他の言語でマニュアルが書かれている場合でも,常 に英語で書く必要があります.これは国際的な法律のためです.

年のリストは,バージョンが完了したすべての年を(たとえ連続した年にリリー スされていたとしても)含めるべきです.範囲指定は許可されていません.それ ぞれの年を,個別にカンマで分けながらすべて書き出す必要があります.

著作権の所有者(達)は,その作業に対して法的な著作権を保持するものです.作 業をFSFに上としている状況では,所有者は‘Free Software Foundation, Inc.’ になります.

著作権の‘行’は,ソースドキュメントと出力の両方で,実際に複数の行に跨って 分離されていてもかまいません.これは,ドキュメントに長い歴史があり,異な る出版年が多いときよくあります.

追加情報は,See (maintain)Copyright Notices section ‘Copyright Notices’ in GNU Maintenance Instructions.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.3.2 @insertcopying:許可のテキストを含める

@insertcopyingコマンドは,単純に単独行に以下のように書きます.

 
@insertcopying

これは,@copyingで前もって定義されているテキストを挿入します.法 的な要求に対処するため,印刷されたマニュアルの著作権のページで使用する必 要があります.

マニュアルのTopノード(see section ‘Top’ノードとマスターメニュー)で@insertcopyingを使 用することを強く推奨しますが,それは法的には要求されていません.以下はそ の理由です.

@copyingコマンド自身で,許可のテキストをInfoファイルの最初のノー ドの前に現します.そのテキストは,それぞれのInfo出力ファイルの先 頭にも,法的な必要性からそのままコピーされます.この場所では,Infoを使用 してマニュアルを読んでいる人がこのテキストを見ることはありません (例外は,高度なInfoコマンドg *を使用しているときです).そのため, 明示的に@insertcopyingをTopノードに書くことで,マニュアルがフリー だということが読者に対して明らかになります.

同様に,@copyingのテキストは,それぞれのHTML出力ファイルの先頭に, コメントとして,自動的に含められます.また,このテキストは,(読者がHTML のソースを見ない限り)見ることができません.そしてまたそのために,コピー の許可を見えるようにし,フリーを押し進めていくために, @insertcopyingをTopノードに書くことが重要です.

@copyingで定義される許可のテキストは,XML出力ファイルの最初にも, 自動的に表示されます.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4 タイトルと著作権ページ

ハードコピーの出力では,マニュアルの名前と著作者は,通常はタイトルページ に印刷されます.著作権情報は通常,タイトルページの裏に印刷されます.

タイトルと著作権ページは印刷されたマニュアルには現れますが,Infoファイル には現れません.このため,Infoファイルで使用不可能な,分かりにくいTeX 植字コマンドを,いくつか使用することが可能です.さらに,Texinfoファイル の始めのこの部分は,印刷されたマニュアルに現れる著作権の許可のテキストを 含んでいます.

プレーンテキスト出力に対し,タイトルページのような情報を含めたい場合もあ るでしょう.単純に,@ifplaintext@end ifplaintextの間に, そのような導入素材を配置してください.makeinfoは,これをプレー ンテキスト(‘--no-headers’)に書くときに,@insertcopyingと一 緒に含めます.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4.1 @titlepage

タイトルページと,それに続く著作権ページのための材料は, @titlepageの単独行で開始し,@end titlepageの単独行で終了 します.

@end titlepageコマンドは,新しいページから始め,ページの番号付け を開始します.(ページ見出し生成の詳細は,See section Page Headings.)番号付けされないページにしたいものは,@titlepage@end titlepageコマンドの間に書きます. @setcontentsaftertitlepageコマンドで,目次をその場所に表示するこ とが可能です(see section 目次の生成).

@pageコマンドを使用することで,@titlepage@end titlepageコマンドで線引きをした領域での改ページが可能となり,一ページ以 上のページ付けされないものが作成可能となります.これは,著作権ページを作 成する方法です.(@titlepageコマンドは,おそらく @titleandadditionalpagesと名付けた方がいいのですが,それは長すぎ ます!)

コンピュータプログラムのマニュアルを書くとき,マニュアルが適合するプログ ラムのバージョンをタイトルページに書くべきです.マニュアルがプログラムよ り変更頻度が高い,または,プログラムに依存しない場合,マニュアルのエディ ション番号(6)を含める べきです.これは,マニュアルがどのプログラムのバージョンに対するものかを, 読者が追跡する助けとなります(‘Top’ノードは,この情報も含みます. see section @top).

Texinfoでは,タイトルページの作成に対して二つの主な方法を提供しています. 一つの方法は,@titlefont@sp,そして@centerコマ ンドを,ページの単語を中央揃えしたタイトルページを生成するために使います.

二番目の方法は,@title@subtitle,そして@author コマンドを,タイトルの下に黒い罫線をつけてタイトルページを作成し,著作者 の行とサブタイトルテキストをページで右寄せするために使用します.この方法 では,タイトルページの実際の書式化を何も指定しません.テキストを望み通り に指定し,Texinfoは書式化を行います.

どちらか一方の方法を使用する,または,両方を組み合わせてもかまいません. 以下のセクションでサンプルを参照してください.

非常に簡単なアプリケーションのためと,伝統的な本の前部の規格外のタイトル ページのため,Texinfoはタイトルとしてその行の残りの部分を引数とする @shorttitlepageコマンドも提供しています.引数は,ページにそれ自 身を植字し,次は空白のページになります.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4.2 @titlefont@center,そして@sp

印刷されたドキュメントに対してタイトルページを作成するため, @titlefont@sp,そして@centerコマンドを使用する ことが可能です.(これは,Texinfoのタイトルページを作成する,二つの方法の 最初のものです.)

タイトル自身に適した大きなフォントを選択するため,@titlefontコマ ンドを使用してください.特に長いタイトルがある場合,一度以上 @titlefontを使用することが可能です.

例えば,以下のようにします.

 
@titlefont{Texinfo}

残りのテキストを中央揃えにするため,行の最初に@centerコマンドを 使用してください.このため以下のようにします.

 
@center @titlefont{Texinfo}

例では,タイトル“Texinfo”は中央揃えされ,タイトルフォントで印刷されま す.

縦の空白を挿入するため,@spコマンドを使用してください.例えば, 以下のようにします.

 
@sp 2

これで印刷されたページに二行の空白行が挿入されます(@spコマンドの 詳細は,see section @sp).

この手法のテンプレートは,以下のようになります.

 
@titlepage
@sp 10
@center @titlefont{name-of-manual-when-printed}
@sp 2
@center subtitle-if-any
@sp 2
@center author
…
@end titlepage

例の空白は,8.5x11インチのマニュアルに適しています.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4.3 @title@subtitle,そして@author

垂直と水平方向に自動的な配置を行なうタイトルページを作成するため, @title@subtitle,そして@authorコマンドを使用す ることが可能です.これは前のセクションの記述とは異なり,@spコマ ンドは垂直方向の空白調整に必要です.

@title@subtitle,そして@authorコマンドを行の最 初に,タイトル,サブタイトル,または著作者を続けて書いてください.

@titleコマンドは,ページの左揃えで通常より大きいフォントでタイト ルの行を生成します.タイトルには黒い罫線の下線があります.一行のみ可能で す.@*コマンドを,タイトルを二行に分けるために使用してはいけませ ん.非常に長いタイトルを扱うため,@title@titlefontの両 方を使用した方が便利だと分かるかもしれません.このセクションの最後の例を 参照してください.

@subtitleコマンドは,通常の大きさのフォントでページの右側にサブ タイトルを設定します.

@authorコマンドは,著作者達の名前を中間の大きさのフォントで,ペー ジのその行の左揃えでタイトルページの下の近くに配置します.名前は,タイト ルの下線より細い黒い罫線の下線があります.(黒い罫線は,@authorコ マンド行に,@pageコマンド行が続く場合に表示されます.)

@authorコマンドを使用するための二つの方法があります. @authorコマンドで始まった行の残りの部分に,名前を書くことが可能 です.

 
@author by Jane Smith and John Doe

または,二つ(またはそれ以上)のそれぞれの前に@authorを使用して,名 前を書くことも可能です.

 
@author Jane Smith
@author John Doe

(下の名前のみ,黒い罫線の下線がつきます.)

この方法のテンプレートは,以下のようになります.

 
@titlepage
@title name-of-manual-when-printed
@subtitle subtitle-if-any
@subtitle second-subtitle
@author author
@page
…
@end titlepage

前のセクションで記述された@titlefontの方法と,ここで記述されてい る@titleの方法を組み合わせてもかまいません.これは,長いタイトル の場合に便利です.現実的な例は以下のようになります.

 
@titlepage
@titlefont{GNU Software}
@sp 1
@title for MS-Windows and MS-DOS
@subtitle Edition @value{e} for Release @value{cde}
@author by Daniel Hagerty, Melissa Weisshaus
@author and Eli Zaretskii

(ここでの@valueの使用は,@valueの例で述べられています.)


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4.4 著作権のページ

国際的な条約で,本の著作権の注意は,タイトルページかタイトルページの裏に 書く必要があります.著作権の注意がタイトルページの裏にあるとき,そのペー ジは慣習で番号が付きません.そのため,Texinfoでは,著作権のページの情報 を@titlepage@end titlepageコマンドの間に書くべきです.

@pageコマンドを改ページに使用してください.著作権の注意と著作権 ページの他のテキストがページの下になるように,@pageコマンドの後 に,以下のような魔法の呪文を使用してください.

 
@vskip 0pt plus 1filll

これは,Info書式化コマンドがサポートしていないTeXコマンドです. @vskipコマンドは空白を挿入します.‘0pt plus 1filll’は,0ポ イントの必須の空白を書き,以下のテキストをページの下に書くことに必要な追 加の空白を配置することを意味します.‘filll’の三つの‘l’を使用し ていることに注意してください.これは正しい使い方です.

著作権のテキスト自身を挿入するために,次に@insertcopyingを書いて ください(see section ドキュメントの許可).

 
@insertcopying

発行者のコピーについてのテキスト,ISBN番号,カバーアートのクレジット,そ してそれ以外のそのような情報を続けてください.

以下はこれらをすべてまとめて書き込んだ例です.

 
@titlepage
…
@page
@vskip 0pt plus 1filll
@insertcopying

Published by …

Cover art by …
@end titlepage

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4.5 見出しの生成

@end titlepageコマンドは,単独行に書く必要があります.タイトルと 著作権のページの終りの印付けをするだけでなく,TeXにページ見出しとペー ジ番号の生成も開始させます.

他で述べた繰り返しですが,Texinfoには二つの標準ページ見出しの書式があり, 一つは紙のそれぞれの片側に印刷されたドキュメント(片面印刷)のためで,もう一 つはそれぞれの用紙の両側に印刷されたドキュメント(両面印刷)のためです.こ れらの書式化を,異なる方法で指定することが可能です.

ほとんどのドキュメントは標準的な片面または両面の書式で書式化され,両面印 刷のため@setchapternewpage oddを使用し,片面印刷のため @setchapternewpageコマンドは使用しません.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.4.6 @headingsコマンド

@headingsコマンドは滅多に使用されません.それは,それぞれのペー ジに印刷するページ見出しとフッタの種類を指定します.通常これは, @setchapternewpageコマンドで制御されます. @setchapternewpageコマンドが望まないことをしたり,独自の定義の前 に前もって定義されているページ見出しを止める場合のみ,@headings コマンドが必要です.@headingsコマンドを@end titlepage コ マンドの直後に書いてください.

以下のように,@headingsを使用することが可能です.

@headings off

ページ見出しの印刷を停止します.

@headings single

片面印刷に適したページ見出しを開始します.

@headings double
@headings on

両面印刷に適したページ見出しを開始します.二つのコマンド, @headings on@headings doubleは同意語です.

@headings singleafter
@headings doubleafter

現在のページを出力した後,それぞれ,singleまたはdouble見出 しを開始します.

@headings on

ページ見出しを開始します.‘@setchapternewpage on’の場合は singleで,それ以外ではdoubleです.

例えば,前の章の終りに続けて同じページで新しい章を開始するようTeXに伝 えるための@titlepageコマンドの前に,@setchapternewpage offを書く場合を考えます.またこのコマンドは,片面印刷のページヘッダを TeXに植字させます.両面印刷でTeXに植字させるため,@end titlepageコマンドの後に@headings doubleを書いてください.

@end titlepageコマンドを含む行の直後に単独行の@headings offを書くことで,TeXのページ見出しの生成を停止できます.

 
@end titlepage
@headings off

@headings offコマンドは,@end titlepageコマンドに優先し, それ以外の場合はTeXにページ見出しを印刷させます.

ページ見出しとフッタの独自のスタイルを指定することも可能です.詳細は, See section Page Headings.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.5 ‘Top’ノードとマスターメニュー

‘Top’ノードは,Infoマニュアルへの読者の入口です.そのため,マニュアルの (バージョンナンバーを含めた)短い記述とコピーの許可を提供するため, @insertcopyingコマンド(see section ドキュメントの許可)で開始し,マ ニュアル全体のマスターメニューで終えるべきです.もちろん,読者が役に立つ と思われるその他の一般的な情報を含めるべきです.

また,@node Top行(see section The @top Sectioning Command)の直後に,ドキュメントのタイトルを含む @topセクションコマンド行を書くのも通常の方法です.

‘Top’ノードの内容は,オンラインの出力だけに現れます.印刷されたマニュア ルに現れるものが無いので,@ifnottex@end ifnottexコマン ドで囲まれています.(TeXは@node行もメニューも印刷しません. Infoだけに現れます.厳密には,@ifnottex@end ifnottext でこれらの部分を囲む必要はありませんが,そうするのが最も簡単です. See section Conditionally Visible Text.)


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.5.1 Topノードの例

以下はTopノードの例です.

 
@ifnottex
@node Top
@top Sample Title

@insertcopying
Additional general information.

@menu
* First Chapter::
* Second Chapter::
…
* Index::
@end menu

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.5.2 マスターメニューの部分

マスターメニュー(master menu)は,ファイル全体のノードをリストアッ プする詳細なメインメニューです.

マスターメニューは,@menu@end menuコマンドで囲まれてい て,印刷されたドキュメントには現れません.

一般に,マスターメニューはいくつかの部分に分かれています.

メニューのそれぞれのセクションは記述行で紹介されています.アスタリスクで 始まらない行は,メニュー項目として扱われません.(詳細は,See section メニューを書く.)

例えば,このマニュアルのマスターメニューは,以下のようになっています(もっ と多くの項目がありますが.)

 
@menu
* Copying Conditions::  Your rights.
* Overview::            Texinfo in brief.
…
* Command and Variable Index::
* Concept Index::       
@detailmenu
--- The Detailed Node Listing ---

Overview of Texinfo

* Reporting Bugs:: …
…
Beginning a Texinfo File

* Sample Beginning:: …
…
@end detailmenu
@end menu

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.6 大域的なドキュメントコマンド

前のセクションで記述した基本的なコマンド以外に,以下のようなドキュメント 全体に影響のある,追加のコマンドがあります.それらが与えられる場合は,通 常はすべてTopノードの前で与えられます.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.6.1 @documentdescription:概要のテキスト

ドキュメントのHTML出力を生成しているとき,makeinfoはドキュメン トの内容を与えるため,‘<meta>’エレメントを‘<head>’に書き出しま す.デフォルトで,この説明(description)は,@settitleコマン ド(see section @settitle:ドキュメントのタイトルを設定する)で与えられるドキュメントのタイトルです.これを変更す るため,@documentdescription環境変数を以下のように使用してくださ い.

 
@documentdescription
descriptive text.
@end documentdescription

これで,HTMLの‘<head>’に以下のような出力を生成します.

 
<meta name=description content="descriptive text.">

@documentdescriptionは,ドキュメントの最初のノードの前に指定する 必要があります.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.6.2 @setchapternewpage:

公式に製本された本では,通常テキストは紙の両面に印刷され,章は右側のペー ジから始まり,そして右のページは偶数番号です.しかし,短いレポートではテ キストが紙の片面だけに印刷されることもよくあります.また短いレポートでは, 章で改ページしないときもありますが,小量の縦方向の空白の後,前の章の終り と同じページで印刷されます.

@setchapternewpageコマンドを,TeXが章を開始する方法と,紙の片 面や両面への印刷(一面や二面印刷)に対するヘッダの書式化の方法を指定するた め,様々な引数で使用することが可能です.

@setchapternewpageコマンドを,行の最初に引数を続けて書いてくださ い.

例えば,それぞれの章を新しい偶数ページから始めるため,以下のように書きま す.

 
@setchapternewpage odd

@setchapternewpageコマンドで,三つの選択肢の一つを指定することが可 能です.

@setchapternewpage off

TeXは,直前の章と同じページで,いくつかの縦方向の空白を挟み,新しい章 を植字します.また,TeXは片面印刷に対するページヘッダの書式化も行ない ます.

@setchapternewpage on

TeXは,新しいページで章を開始させ,片面印刷に対するページヘッダで書式 化します.これは,短いレポートや個人的な印刷で最もよく使用されている形式 です.これはデフォルトです.

@setchapternewpage odd

TeXは,新しい章を新しい偶数ページ(右側のページ)で開始させ,両面印刷に 対する植字をします.これは,本やマニュアルで最もよく使用されている形式で す.

奇数番号のページで新しい章や本を開始する印刷の伝統はないので,Texinfoに は@setchapternewpage evenコマンドはありません.

@setchapternewpageが設定するデフォルトのヘッダが好みではない場合, @headingsコマンドを用いて明示的に制御することが可能です. See section The @headings Command.

マニュアルや本の最初では,ページの番号付けはされません — 例えば,本の タイトルと著作権のページは番号付けされていません.慣習で,目次のページと 序章のページはローマ数字で番号付けされ,それはドキュメントの残りの部分と 連番にはなっていません.

Infoファイルにはページが無いので,@setchapternewpageはそれに対し 効果はありません.

要求される出力物がドキュメントの本質ではないため, @setchapternewpageコマンドをマニュアルのソースに入れることを推奨 する気はありません.特定のハードコピーを実行する際,デフォルトオプション (空白ページがない,全てのページで同じヘッダ)が不要な場合,お望みの出力を 指定するためにtexi2dviに‘--texinfo’オプション使用してく ださい.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.6.3 段落の字下げ

Texinfoプロセッサは,それぞれの段落の最初の行の始めに空白を挿入し,それ により段落を字下げします.この字下げを指定するために, @paragraphindentコマンドを使用することが可能です.行の最初に @paragraphindentコマンドを書き,‘asis’や数字を続けてくださ い.

 
@paragraphindent indent

字下げは,indentの値に従います.

asis

既存の字下げを変更しません(TeXでは実装されていません).

none
0

すべての字下げを取り消します.

n

Info出力ではn個のスペース文字,TeXではn字下げします.

indentのデフォルト値は三です.@paragraphindentは,HTML出力 では無視されます.

@paragraphindentコマンドは,領域の書式化コマンドで指定されたよう に段落を字下げするので,Texinfoファイルの最初に,end-of-header行の直前に 書くのが最善です.See section ヘッダの始まり.

texinfo-format-buffertexinfo-format-regionの特別なところ は,@w@*コマンドを含む段落を字下げしない(または補充し ない)ことです.詳細は,See section 段落の補充.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.6.4 @exampleindent:環境に応じた字下げ

Texinfoプロセッサは,@exampleとそれに似たもので囲まれている部分 でそれぞれの行を字下げします.@exampleindentコマンドで字下げを指 定することが可能です.@exampleindentコマンドを行の始めに書き, ‘asis’または数字のいずれかを続けてください.

 
@exampleindent indent

字下げは,indentの値に従います.

asis

既存の字下げを変更しません(TeXでは実装されていません).

0

すべての字下げを取り消します.

n

Info出力では,n個のスペース文字,TeXではn文字,囲まれた部 分を字下げします.

indentのデフォルト値は5です.@exampleindentはHTML出力では 無視されます.

@exampleindentコマンドは,領域の書式化コマンドで指定されたように 段落を字下げするので,Texinfoファイルの最初に,end-of-header行の前に書く のが最善です.See section ヘッダの始まり.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

3.7 ソフトウェアのコピーの許可

Texinfoファイルに,文章化された“General Public License”と,配布情報と ソフトウェアに対する免責を含むセクションがある場合,‘Top’ノードの直後に 配置することを推奨します.General Public Licenseは,Project GNUのソフト ウェアにとって非常に重要です.それは,万人に対するソフトウェアの使用と共 有の維持を保証します.

コピーと配布の情報と免責には,導入部分やマニュアルの最初の章が続きます.

導入部分はTexinfoの必須部分ではありませんが大変役に立ちます.理想的には, ファイルが何に関係するするのかと,誰が興味を持って読むのかを,そこで明白 に簡潔に述べるべきです.ドキュメントの最初の方に書く人もいますが,一般に, 導入部分にはライセンスと情報の記述が続きます.通常の導入部分は, @unnumberedセクションに書きます.(See section The @unnumbered and @appendix Commands.)


[ << ] [ >> ]           [冒頭] [目次] [見出し] [ ? ]

この文書は新堂 安孝によって2009年9月22日texi2html 1.82を用いて生成されました。