【←前頁】【↑目次】【次頁→】


大規模な文書


lionhead文書の分割の方法

100ページ以上に渡る大規模な文書になると、コンパイルやプレビュー表示にも結構な時間がかかるようになってきます。ちょっとした修正の成果を見るために全文書をコンパイルかけなおすのはいかにもマヌケです。また文書の編集も、巨大なテキストファイルをエディタで開いていじるよりは、適当なサイズに小分けして保存(あるいは章、節ごとに独立したファイルに保存)したファイルで行った方がサクサク効率的に行えます。

LaTeXのソース文書を分割・統合するには、¥inputコマンドを使う場合と¥includeコマンドを使う場合の2つの方法があります。いずれの場合も、(1)本文を小分けにして保存した子ファイルと(2)それを一つに纏めるための親ファイルの二種類を用意します(いずれも拡張子は「.tex」)。まず親ファイル(「parent.tex」と名付けるとします)の中身には、本文は何も書かず文書クラスの宣誓とプリアンブルのみを書きます:

¥documentclass[12pt]{jarticle}
¥begin{document}
¥end{document}


一方、分割した本文を記してある子ファイルには、文書クラスコマンドとプリアンブルは書かずに、直接本文のみを入れておきます。この分割した子ファイルを「chapter_1.tex」「chapter_2.tex」「chapter_3.tex」「chapter_4.tex」という名前をつけて保存したとします。これらを親ファイルparent.tex内から呼び出して連結するわけです。子ファイルを呼ぶのには¥inputコマンドまたは¥includeコマンド使います。それぞれ:

¥documentclass[12pt]{jarticle}
¥begin{document}

¥input{chapter_1}
¥input{chapter_2}
¥input{chapter_3}
¥input{chapter_4}

¥end{document}


¥documentclass[12pt]{jarticle}
¥begin{document}

¥include{chapter_1}
¥include{chapter_2}
¥include{chapter_3}
¥include{chapter_4}

¥end{document}


と表記します。{…}内の引数に書く、呼び出すファイルのファイル名には拡張子「.tex」は付けません。それぞれの¥inputなり¥includeなりのコマンドが、その引数で指定されたファイルの中に書かれている文書に入れ替えられます。だから、ファイル名が先に書かれた順に文章が表示されていきます。順番を変えるにはコマンドの位置を入れ替えるだけです。

¥input¥includeの違いは、¥includeが改ページを行った後に子文書を追加していくのに対し、¥inputはそのまま連続して表示していきます。

分割したファイルの1部だけをコンパイルするには、¥inputの場合:

¥documentclass[12pt]{jarticle}

¥begin{document}

¥input{chapter_1}
% ¥input{chapter_2}
% ¥input{chapter_3}
¥input{chapter_4}

¥end{document}


と、要らない部分をコメントアウトします。上の例だとchapter_1chapter_4のみコンパイルされ、後は無視されます。¥includeの場合、プリアンブルで:

¥documentclass[12pt]{jarticle}

¥includeonly{chapter_1,chapter_3}

¥ begin{document}

¥include{chapter_1}
¥include{chapter_2}
¥include{chapter_3}
¥include{chapter_4}

¥end{document}


¥includeonlyコマンドを書き、コンパイルするファイルを指定します。引数内で必要なファイルのルート名(ファイル名から拡張子を抜いたもの)をカンマで区切って列記します。この例ではchapter_1chapter_3のみコンパイルされ、後は無視されます。

【←前頁】【↑目次】【次頁→】