
我正在用數學/圖表/繪圖/程式碼等編寫技術文檔。這些屬於每個主題的技術文件都位於其資料夾中。有人可以指導我如何更好地管理它並使其便攜嗎?就像我在 Mac OSX/MS Windows 上處理相同的文件一樣。
答案1
如果我正確理解問題,那麼解決方案可能是使用 package subfiles
。
假設這main.tex
是您的主文件,並且file1.tex
、file2.tex
、 和file3.tex
是您要包含的文件。那麼你的主文檔將類似於:
主文件.txt:
\documentclass[a4paper]{article}
<your preamble>
\usepackage{subfiles}
\begin{document}
\subfile{file1}
\subfile{file2}
\subfile{file3}
\end{document}
您可以在任何地方放置文本,就像您使用\include
或\input
代替 一樣\subfile
。的內容file1.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
。
因此,現在專案中的所有文件都可以單獨編譯,但要編譯子文件,您需要將其放在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/Installing_Extra_Packages
如果您願意,您可以將建置套件時產生的檔案subfiles.cls
和subfiles.sty
放在與 相同的目錄中main.tex
,這樣您就不會依賴需要編譯檔案的下一個系統已subfiels
安裝該套件的事實。
編輯
回答
我有三層目錄,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
並且您希望將文件sectionX.1.tex
和包含sectionX.2.tex
在 X=1,2 的文件中chapX.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. 節:
\documentclass[./../../rootfile.tex]{subfiles}
\begin{document}
<your section goes here>
\end{document}
訣竅是,\def\dirlevel{}
只有在編譯時才會讀取rootfile.tex
,而\def\dirlevel{../}
無論您編譯哪個文件,都會讀取,因此無論您編譯哪個文件,LaTeX 仍然能夠找到您的文件。