编译文档或演示文稿的一部分的最佳做法是什么(或者如何准备大部分内容)?

编译文档或演示文稿的一部分的最佳做法是什么(或者如何准备大部分内容)?

我看到有很多问题(AC) 的最佳实践,但它们都没有回答我将要讨论的问题。

更新:这个问题也已在更新问题。

我们时不时都需要准备大型文档(或幻灯片)。一旦达到一定页数,您就会发现编译整个文档需要花费大量时间,您需要这样做才能检查您编写的部分是否没有错误,特别是如果它包含许多图像时。

为了避免这种情况,多年来我一直采用以下做法来将编译时间保持在最短。

  • 将文档分成多个章节:各章节放在单独的文件中。只有我正在处理的章节未注释。

     \documentclass{book}
    
     \begin{document}
    
     %\input {chapterone.tex}
     \input {chaptertwo.tex}
     %\input {chapterthree.tex}
     %\input {chapterfour.tex}
    
     \end{document}
    

上述技术也可用于\include

  • 在临时文件中保留主文件的前言副本(构建文件):当我准备包含很多幻灯片(比如说一百张)的演示文稿时,我会使用这种技巧。准备一个主文件,将其复制到另一个构建文件。删除构建文件中 \begin{document}和之间的所有内容。在构建文件中准备一张幻灯片(或一组幻灯片)。仅当对输出满意时(图像位置、满框等),才将构建文件中和\end{document}之间的内容剪切并粘贴到主文件中的相关位置。\begin{document}\end{document}

我们可以听取你对最佳实践的意见实践当您从头开始准备文档或演示文稿时。


现在,我找不到一个好的答案,如果你已经完成了整个文档或演示文稿,现在需要调整一些小东西,可能是在这里编辑文本,在那里添加图像。你的最佳实践是什么?

也许,再次保留一章未注释的内容在这里是有用的。但是对于大型演示文稿怎么办?\end{document}在更改点之后添加可能会有所帮助,但前提是您可以将其放在文件的中间点之前。

对文件的一部分进行注释也可以,但这很容易出错,至少对我来说是这样。

答案1

到目前为止,这个问题还没有得到任何答案。但我们收到了一些非常有用的评论(和链接)。以下是迄今为止收到的回复的汇总版本(必要时会进一步遍历链接)。


以下这些并不相互排斥,也绝对不是分类。一旦你掌握了它们(全部或部分),你就可以自由地运用自己的风格和技巧,让你的工作完成得更快一些。


将文档分成单独的文件:不应准备单个大文件,而应将文档分成多个单独的 .tex 文件

有多种方法可供选择。

  • 如果您使用\input来包含您的文件,您可以简单地注释掉您不想要的文件的相关命令\input
  • 如果您使用的是\include,情况与上述情况几乎相似。但额外的好处是,这允许您使用包含特定文件\includeonly{filename,filename2,...}以节省时间。

关于 LaTeX 模块化文档的精彩讨论可以在这里找到 这里. 相对优势与\input劣势\include已得到进一步阐述 在这个问题中

有效地仅构建演示文件的一部分:这更适用于对演示文稿进行细微更改的情况。这里的好朋友是命令\includeonlyframes,它允许您有选择地包含一些框架。以下是摘录自beamer 类用户指南

\includeonlyframes{⟨frame label list⟩}

此命令的行为与该命令有点相似\includeonly:仅包含列表中提到的框架。所有其他框架都被抑制。不过,section 和 subsection 命令仍会执行,因此您仍拥有正确的导航栏。通过将当前框架标记为 current 然后说 \includeonlyframes{current},您可以快速处理单个框架。⟨frame label list⟩ 是一个以逗号分隔的列表(没有空格),其中包含已标记的框架的名称。要标记框架,您必须将选项传递label=⟨name⟩\frame命令或框架环境。

例子:

\includeonlyframes{example1,example3}
\frame[label=example1]
{This frame will be included. }
\frame[label=example2]
{This frame will not be included. }
\frame{This frame will not be included.}
\againframe{example1} % Will be included

这个答案获得一些非常有用的例子。也不要错过这个有趣的想法 修改\includeonlyframes以使用通配符。你看到这里的前景了吗?你可以用可以表示为的名称标记类似的(一组)幻灯片<string>*。有人甚至建议将此功能添加到下一个 Beamer 版本中。

使用临时/工作文件:此方法最适用于您正在进行演示文稿或类似国际象棋拼图的工作(很可能是第一次构建)时。

对于演示文稿,准备一个主文件,将其复制到另一个构建文件。删除构建文件中\begin{document}和之间的所有\end{document}内容。在构建文件中准备一张幻灯片(或一组幻灯片)。仅当对输出满意时(图像位置、满框等),才将构建文件中\begin{document}和 之间的内容剪切并粘贴\end{document}到主文件中的相关位置。

对于国际象棋谜题,使用工作文件(带有用于剪切和粘贴的模板),然后将每张幻灯片复制到一个文件中,直到它填满一定数量的谜题,然后启动另一个文件。

standalone包裹:此软件包允许将 TeX 图片或子文件中的其他 TeX 代码单独编译或作为主文档的一部分进行编译。它还支持带有 beamer 覆盖的图片。

详细描述此包会使答案非常冗长。阅读以下内容将获得更多帮助文档。 我发现 这个答案促进快速学习。另请参阅关于浮动的有趣讨论 standalone

相关内容