为什么 Tufte 课程没有子课程?

为什么 Tufte 课程没有子课程?

为什么 Tufte 课程(讲义和书籍)没有子小节?我该如何添加它们?一般来说,我该如何在小节下添加其他子级?

答案1

为什么 Tufte 课程(讲义和书籍)没有子部分?

塔夫特课程是为了符合 Edward Tufte 的排版和设计理念而创建的,其中许多理念在样本与 Tufte-LaTeX 包一起分发,其中一些你可以在此论坛讨论。Tufte 的一个关键设计理念是,您不应使用超过两级的章节标题,因此不应使用子章节。

我怎样才能添加它们?

Tufte-LaTeX 内部使用titlesec来定义其样式。章节标题定义在tufte-通用.def(参见文件第 1620 行左右)。它通过重新定义\subsubsection\subparagraph级别来关闭它们,从而抛出错误:

\renewcommand\subsubsection{%
  \@tufte@error{\string\subsubsection is undefined by this class.
    See Robert Bringhurst's _The Elements of 
    Typographic Style_, section 4.2.2.
    \string\subsubsection was used}
    {From Bringhurst's _The Elements of Typographic Style_, section 4.2.2: Use as 
    many levels of headings as you need, no more and no fewer.  Also see the many 
    related threads on Ask E.T. at http://www.edwardtufte.com/.}
}

因此,要恢复\subsubsection,您应该制作 tufte 类文件的个人副本,编辑该tufte-common.def文件并注释掉该重新定义,然后使用它为titlesec符合一般美学的子部分创建格式/样式。

作为参考,您可以查阅titlesec手动的以及tufte-common.def文件中包含的章节和部分的样式定义。

一般来说,如何在小节下添加其他子级别?

由于 Tufte 课程基于标准 LaTeX 课程,并使用titlesec和进行自定义titletoc,因此您可以利用 的titlesec功能添加其他章节级别标题。请参阅文档中的“3.9. 创建新级别并更改课程”一节titlesec


最后,Tufte-LaTeX 软件包做出了很多非常慎重的设计选择,设置方式使得作者很难偏离 Tufte 的设计理念(例如,明确关闭对 的支持)。如果您希望具有灵活性,我建议您使用和(参见 中的代码了解规范)\subsubsection自己复制样式到基础类上,或者,如果您喜欢冒险,请使用titlesecgeometrytufte-common.defmemoir班级而是。memoir该类非常可定制,并且内置了对边距表格和图形的支持,这是 Tufte 设计的标志。

相关内容