[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
TeXやInfo書式化コマンドが,Texinfoファイルの@include
コマンド
を見つけたとき,それはコマンドで名指しされたファイルの内容を処理し,作成
されているDVIやInfoファイルに組み入れます.インクルードファイルからの索
引項目は,出力ファイルの索引に組み入れられます.
インクルードファイルでは,便利な小さい部分の収集物として,単一な大きなド キュメントを保持します.
D.1 インクルードファイルの使用方法 | How to use the @include command. | |
D.2 texinfo-multiple-files-update | How to create and update nodes and menus when using included files. | |
D.3 インクルードファイルの必要条件 | What texinfo-multiple-files-update expects. | |
D.4 @include を用いたファイルの見本 | A sample outer file with included files within it; and a sample included file. | |
D.5 インクルードファイルの進化 | How use of the @include command
has changed over time. |
他のファイルをTexinfoファイルにインクルードするため,@include
コ
マンドを行の最初に書き,同じ行にインクルードするファイル名を続けてくださ
い.例えば以下のようにします.
@include buffers.texi |
インクルードファイルは,単に,全体をインクルードするのを期待する,または,
外部の(outer)Texinfoファイルにあるテキストの一部にすべきです。それ
は,Texinfoファイルの標準的な始めと終りを含めるべきではありません.特に,
インクルードファイルを,`\input texinfo'と述べている行から始めるべ
きではありません.そうする場合,その文節は出力ファイルにそのまま挿入され
ます.同様に,インクルードファイルを@bye
コマンドで終えるべきでは
ありません.@bye
以降は全く書式化されません.
過去に,インクルードファイルの最初に@setfilename
行を書くことが要
求されていましたが,もはやそうでははありません.今では,そのような行を書
くかどうかは重要ではありません.@setfilename
行がインクルードファ
イルに存在する場合,それは無視されます.
慣習的に,インクルードファイルは,@chapter
行が続く@node
行で始めます.それぞれのインクルードファイルは一つの章です.これで,通常
のノードとメニューを作成更新する,ノードポインタとメニューをインクルード
ファイルに作成するコマンドの使用が容易になります.しかし,単純なEmacsの
ノードとメニューを作成更新するコマンドは,複数のTexnfoファイルでは動作し
ません.このためそれらのコマンドを,インクルードファイルで始まる
@node
行の`Next',`Previous',そして`Up'ポインタを補充するために
使用することは不可能です.また,ファイル全体のマスターメニューを作成する
通常のコマンドも使用不可能です.メニューと`Next',`Previous',そして`Up'
ポインタを手で挿入するか,GNU Emacs Texinfoモードのコマンド,
texinfo-multiple-files-update
を使用する必要があり,それは
@include
ファイルに対し設計されています.
texinfo-multiple-files-update
GNU Emacs Texinfoモードは,texinfo-multiple-files-update
コマンド
を提供しています.このコマンドは,インクルードファイルの`Next',
`Previous',そして`Up'ポインタを,外部や全体的なTexinfoファイルに対する
ものと同様に作成更新し,それは外部ファイルのメインメニューを作成更新しま
す.オプションの引数での呼び出しに依存して,コマンドはインクルードファイ
ルやそれら全ての最初の@node
行のポインタのみを更新します.
@node
行の,`Next',`Previous',そして`Up'ポインタの作成と更
新.
@node
行のポインタの作成
と更新.
texinfo-master-menu
の呼び出しに似ています.
対話的な使用での前置引数の使用時の注意:通常の前置引数C-uを用い
ると,texinfo-multiple-files-update
コマンドはマスターメニューを挿
入します.C-u 8のような数字の前置引数を用いると,コマンドは
全てのファイルの全てのポインタとメニューを更新し,マス
ターメニューを更新します.
texinfo-multiple-files-update
コマンドの使用を計画している場合,そ
の中でインクルードファイルをリストアップしている外部のTexinfoファイルは,
Texinfoファイルの最初と最後の部分と,インクルードファイルをリストアップ
している@include
コマンド以外,何も含めるべきではありません.それ
には索引さえ含めるべきではなく,それはインクルードファイル自身にリストアッ
プすべきです.
さらに,それぞれのインクルードファイルは,正確に一つの最上位のノード(慣
習的に,@chapter
またはそれと同等のもの)を含む必要があり,このノー
ドはインクルードファイルの最初のノードにする必要があります.さらに,それ
ぞれのインクルードファイルの中の,それぞれのこれらの最上位レベルのノード
は,ファイル構造で同じ階層レベルにする必要があります.通常,それぞれ
@chapter
,@appendix
,または@unnumbered
にします.
このため,それぞれのインクルードファイルは,一つのかつ唯一の,章や同等の
レベルのノードを含みます.
外部ファイルは一つのノード,`Top'ノードのみを含みます.それは,単
一の`Top'ノードの他の,あらゆるノードを含むべきではありません.
texinfo-multiple-files-update
コマンドは,それらを処理しません.
@include
を用いたファイルの見本
メインまたはマスターメニューを挿入する
texinfo-multiple-files-update
を実行する前の,その中に
@include
ファイルを用いた外部のTexinfoファイルの完全な例は以下の
ようになります.
\input texinfo @c -*-texinfo-*- @setfilename include-example.info @settitle Include Example @setchapternewpage odd @titlepage @sp 12 @center @titlefont{Include Example} @sp 2 @center by Whom Ever @page @vskip 0pt plus 1filll Copyright @copyright{} 2002 Free Software Foundation, Inc. @end titlepage @ifinfo @node Top, First, , (dir) @top Master Menu @end ifinfo @include foo.texinfo @include bar.texinfo @include concept-index.texinfo @summarycontents @contents @bye |
`foo.texinfo'のようなインクルードファイルは,以下のようになります.
@node First, Second, , Top @chapter First Chapter Contents of first chapter ... |
完全な内容の`concept-index.texinfo'は,このように簡単になります.
@node Concept Index @unnumbered Concept Index @printindex cp |
The GNU Emacs Lisp Reference Manualの外部のTexinfoソースファイル
は,`elisp.texi'という名前です.外部ファイルは,417項目の外部ファイ
ルと,41の@include
リストを含んでいます.
Infoが最初に作成されたとき,それは一つのサブジェクトに多くの小さなInfoファ イルを作成することが慣習的でした.それぞれのInfoファイルは,その独自の Texinfoファイルから書式化されました.この慣習は,情報が欲しいとき,大き なInfoファイル全体を保つためにEmacsが大きなバッファを作成する必要がない ことを意味します.その代わり,探している特定の情報を含む小さなInfoファイ ルに対して,Emacsはちょうど十分なメモリを確保していました.
一つのファイルから他への参照は,ノード名同様,ファイル名で参照されていま
した.(See section Referring to Other Info Files. また,
@xref
with Four and Five Argumentsを参照してください.)
インクルードファイルは主に,単一の大きな印刷されたマニュアルを,複数のよ
り小さなInfoファイルから作成する方法として設計されました.印刷されたマニュ
アルでは,全ての参照は同じドキュメントにあり,それでTeXは自動的に参照
ページ数を決定可能でした.Info書式化コマンドは,つながった索引を作成する
ためのみにインクルードファイルを使用していました.それぞれの個別の
Texinfoファイルは,個別のInfoに書式化する必要がありました.(それゆえ,そ
れぞれ独自の@setfilename
行が必要でした.)
しかし,現在大きなファイルは自動的に分割されるので,それはもはや小さいま まにする必要がありません.
最近,複数のTexinfoファイルは,The GNU Emacs Lisp Reference Manualのような大きなドキュメントのためと,複数の異なる人々がドキュメン トの異なるセクションを同時に書くプロジェクトのための使用がほとんどです.
さらにInfo書式化コマンドは,必要な場合より小さく分割される単一の大きな
Infoファイルを作成するため,@include
コマンドで動作するように拡張
されています.これは,異なるTexinfoファイルを名指しせずにメニューや相互
参照を書くことが可能だということを意味します.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |