我正在寻找一种方便的方法将独立章节集成到main.tex
( scrbook
) 文件中。更具体地说,它们将是论文框架文本中已发表的论文,并且应该
- 每个都有自己的数字、表格、方程式的计数器
- 每个都有自己的参考文献,但这些参考文献不会出现在
main.tex
(最好natbib
)的参考文献中 - 继承其他所有内容,如格式、页眉、页脚、包
main.tex
- 最好使用
main.tex
我查看了standalone
和subfiles
包,以及chapterbib
或bibunits
和在每篇论文之前重置计数器。虽然我认为我可以以某种方式让它工作,但这似乎是一个丑陋的解决方法,因为其他人可能之前就遇到过这种情况。
答案1
我个人认为这归结于文件和文档的组织。根据我逐渐使用的工作流程,有几点评论:
- 除非准备 MWE,否则我从来没有一个项目的单独文件,甚至文档的一部分。
- 我同意将章节或其他类型的层次结构保存为独立且完全可编译的文档非常有帮助,因为您永远不知道想要检查或共享什么。
- 我将每个独立文档(例如较大报告中的某一章节)分离到一个主文件中,该文件加载我的特定类文件和/或用于
\begin{document} \input{../Files/ActualStandAloneContent} \end{document}
将编译器引导至我的章节内容的序言。 - 我将所有源文件保存在项目的子文件夹中,例如上面提到的 /Files/。
- 我将所有可能的主文件保存在一个公共文件夹中,我已准备好批处理文件来编译此目录中的所有 Tex 文件。请注意,这里至关重要的是不要有不完整的 Tex 文件,因为如果编译器不尝试加载文档类并开始/结束文档,它们将失败。这意味着我可能有一个包含等的文件夹
main.tex
main_Ch1.tex
main_Ch2.tex
...当我运行我的时,xelatexCompile.bat
我将得到main.pdf
main_Ch1.pdf
main_Ch2.pdf
使所有内容保持最新状态。 bibunits
无论您是使用类似语法在主文件中管理参考文献(我喜欢)\begin{bibunit} \input{File} \putbib \end{bibunit}
,还是将此过程包含在独立章节中,都没有太大区别。就我个人而言,我将这些东西保存在主文件中,因为我永远不知道何时要细分独立文件。- 如果您有常见的前言,如目录、图表、方程式、词汇表中的术语等,我建议通过类似的东西加载一个不同的文件,并将
\input{../Files/FrontMatter.tex}
其始终包含在主文件中以节省重复。 - 您的页眉页脚结构将是我在 cls 文件中控制的方面,但如果您需要定制,也可以在主要特定的 tex 文件前言中完成。
答案2
\includeonly
以下是我尝试了一年左右后使用多年的文件夹文件结构。它用于\jobname
实现很多自动化操作。
图形(用于制作 PDF 的可编辑图形的文件夹。)
1 Folder for the graphics for Chapter 1 2 Folder for the graphics for Chapter 2 101 Folder for the graphics for Appendix 1
FIGURES(\includegraphics 中使用的 pdf 文件夹)
1 Folder for the pdfs for Chapter 1 2 Folder for the pdfs for Chapter 2 101 Folder for the pdfs for Appendix 1
STYLESHEETS 文件夹仅包含以下两个文件:
GraphicsPaths.sty contains only the following command: \graphicspath% {% {../Figures/1/} {../Figures/2/} {../Figures/101/} Preamble.sty This file contains the various \usepackage and the definition of the various \definecolor, \newcounter, \newcommand, etc.
文本内容(仅包含章节内容的文件的文件夹)
1.tex Content of Chapter 1 2.tex Content of Chapter 2 101.tex Content of Appendix 1
上述每个文件均包含以下代码,后面是章节内容
%!TEX root = ../Text-controls/\jobname.tex %!TEX TS-program = pdflatexmk \chapter{Name} \ChapterToc BOOK.tex This is the content file for the whole book and contains ONLY the following code: %!TEX root = ../Text-controls/\jobname.tex %!TEX TS-program = pdflatexmk \include{../Text-contents/0}%Preface \mainmatter \include{../Text-contents/1} \include{../Text-contents/2}
TEXT-CONTROLS 文件夹用于存放控制内容文件的文件。(编译后,此文件夹还将包含辅助文件、toc 文件等以及每章的 pdf。)
1.tex Control of Chapter 1 2.tex Control of Chapter 2 101.tex Control of Appendix 1 Each of the above files contains ONLY the following code: % !TEX TS-program = pdflatexmk \documentclass[11pt]{book} \usepackage{../StyleSheets/Preamble} \usepackage{../StyleSheets/GraphicsPaths} \begin{document} \addtocounter{page}{n} (where n+1 will be the number of the first page of the chapter.) \addtocounter{chapter}{\jobname-1} \include{../Text-contents/\jobname} \printindex \end{document} BOOK.tex is the control file for the whole book and contains ONLY the following code: % !TEX TS-program = pdflatexmk \documentclass[11pt]{book} \usepackage{../StyleSheets/Preamble} \usepackage{../StyleSheets/GraphicsPaths} \begin{document} \frontmatter \thispagestyle{empty} \hspace{-12mm}{\Large \textsc{Name of the Book}} \cleartooddpage[\thispagestyle{empty}] etc, etc \tableofcontents \input{../Text-contents/BOOK} \appendix \addtocontents{toc}{\protect\setcounter{tocdepth}{2}} \include{../Text-contents/101} \backmatter \phantomsection \addcontentsline{toc}{chapter}{Index} \printindex \end{document}
辅助设备也可使用相同的结构。参见http://tug.org/pracjourn/2010-2/schremmer.html