文書管理システム

文書管理システム

私は数式/図/グラフ/コードなどを含む技術文書を書いています。それらを 1 つの文書にコンパイルし、それぞれを独立して実行できるようにする必要があります。各トピックに属するこれらの技術文書は、それぞれのフォルダーにあります。これをより適切に管理し、ポータブルにする方法を教えていただけますか? Mac OSX/MS Windows で同じ文書を扱っているのと同じです。

答え1

質問を正しく理解していれば、解決策としてはパッケージ を使用するのがよいでしょうsubfiles

main.texがメイン ファイルで、、、file1.texfile2.tex含めfile3.texたいファイルだとします。メイン ドキュメントは次のようになります。

メイン.txt:

\documentclass[a4paper]{article}
<your preamble>
\usepackage{subfiles}

\begin{document}

\subfile{file1}

\subfile{file2}

\subfile{file3}

\end{document}

ここでは、の代わりに\includeまたは を使用する場合と同様に、好きな場所にテキストを配置できます。 の内容は次のようになります。\input\subfilefile1.tex

ファイル1.tex

\documentclass[main.tex]{subfiles}
\begin{document}

<your document goes here>

\end{document}

同じ構造がファイルとに適用される必要がありfile2.texますfile3.tex

さて、コンパイルするとmain.tex、ファイルの内容、つまり私が<で示したものがここにあなたの文書が入ります> がドキュメントにインクルードされ、たとえば をコンパイルするとfile1.tex、 のコンテンツは のfile2.texドキュメントクラス仕様とプリアンブルがあるかのようにコンパイルされますmain.tex

これで、プロジェクト内のすべてのファイルを個別にコンパイルできるようになりましたが、サブファイルの 1 つをコンパイルするには、main.tex同じディレクトリに配置する必要があります。

パッケージのドキュメントとインストール

標準パッケージとして付属しているかどうかはわかりませんsubfiles。私の場合は付属していなかったので、パッケージのインストール経験に応じて、パッケージは次の場所にあるとお伝えしたいと思います。

http://www.ctan.org/tex-archive/macros/latex/contrib/subfiles/

そこにはパッケージのドキュメント、つまりPDFドキュメントもあります。ファイルのsubfiles.pdf扱い方がわからない場合は、小さなガイドがあります。.ins.dtx

http://en.wikibooks.org/wiki/LaTeX/Packages/Extra_Packages のインストール

また、必要に応じて、パッケージの構築中に生成されるファイルsubfiles.clsとをと同じディレクトリに置くことができます。こうすることで、ファイルをコンパイルする必要がある次のシステムにパッケージがインストールされているかどうかに依存する必要がなくなります。subfiles.stymain.texsubfiels

編集

答える

ディレクトリには 3 つのレベルがあります。1 は rootfile.tex があるトップレベル、2 は各章のメイン ファイルがある章レベル、3 は章の実際の内容があるセクション レベルです。\include{./Sections/part1} を使用して 3 in 2 をインスタンス化しています。サブファイルを使用してこのようなシステムを管理するにはどうすればよいでしょうか? – avlsi

ファイルがあると仮定します

./rootfile.tex
./chapter/chap1.tex
./chapter/chap1/section1.1.tex
./chapter/chap1/section1.2.tex
./chapter/chap2.tex
./chapter/chap2/section2.1.tex
./chapter/chap2/section2.2.tex
./chapter/chap3.tex
./chapter/chap3/section3.1.tex
./chapter/chap3/section3.2.tex

そして、X=1,2 のファイルにファイルsectionX.1.texとを含め、セクション ファイル、チャプター ファイル、ルート ファイルの両方をコンパイルできるようにしたいとします。これは、ファイルを次のようにすることで実現できます。sectionX.2.texchapX.tex

ルートファイル.tex:

\documentclass[a4paper]{article}
<your preamble>
\usepackage{subfiles}

\def\dirlevel{../}

\begin{document}
\def\dirlevel{}

\subfile{./chapter/chap1}
\subfile{./chapter/chap2}
\subfile{./chapter/chap3}

\end{document}

chapX.tex:

\documentclass[./../rootfile.tex]{subfiles}
\begin{document}

\subfile{./\dirlevel chap/chapX/sectionX.1}
\subfile{./\dirlevel chap/chapX/sectionX.2}

\end{document}

セクションX.Y.tex:

\documentclass[./../../rootfile.tex]{subfiles}
\begin{document}

<your section goes here>

\end{document}

秘訣は、 は\def\dirlevel{}コンパイルした場合にのみ読み取られるrootfile.texのに対し、 は\def\dirlevel{../}どのファイルをコンパイルしても読み取られるため、どのファイルをコンパイルしても LaTeX はファイルを見つけることができます。

関連情報