自动打印章节号

自动打印章节号

在里面\documentclass{tufte-book}

Chapter 的正常标题是

\chapter{6}

等等。但是我怎样才能让章节号显示为自动计数器,而不必填写实际数字。我知道该章节已经有一个与之关联的计数器,但如果您只是将括号留空,它显然不会打印章节号。

(我正在移动章节,因此希望显示计数器,而不必在每次章节拆分时更改整个章节编号字符串。据我所知,我不能将命令放在括号内,例如

\chapter{\counter}

答案1

根据@DavidCarlisle 关于 refstepcounter 的评论进行编辑:

\newcounter{mychapter}

\newcommand{\aasc}{\refstepcounter{mychapter}\let\newtitle\themychapter}
\newcommand{\mychapter}[1]
{%
\aasc%
\ifnum\pdfstrcmp{#1}{}=0
\chapter{\newtitle.}%
\else
\chapter{\newtitle.\space #1}%
\fi
}

它现在可以与标签和参考一起使用...感谢@DavidCarlisle...

旧答案

在你的序言中尝试这样做:

\newcommand{\aasc}{\addtocounter{chapter}{1}\let\newtitle\thechapter}
\newcommand{\mychapter}[1]
{
\aasc
\ifnum\pdfstrcmp{#1}{}=0
\chapter{\newtitle.}
\else
\chapter{\newtitle.\space #1}
\fi
}

它适用于空或非空章节...但空的章节甚至不能包含空格......

答案2

论点\chapter标题不是数字。与大多数课程一样,章节会自动编号。

然而,tufte 类默认将章节编号设置为关闭,这是其样式的一部分,您可以通过设置来允许章节和章节进行编号

\setcounter{secnumdepth}{2}

然而,设计实际上是基于无编号标题的,因此另一种选择是使用为编号标题设计的类。然而,使用上面这行,你得到

在此处输入图片描述

\documentclass{tufte-book}

\setcounter{secnumdepth}{2}
\begin{document}

\mainmatter
\chapter{Intro}
\section{zzzz}
zzzz
\chapter{Something}
\section{zzzz}
zzzz

\end{document}

答案3

在此处输入图片描述

在此处输入图片描述

使用该包cleveref,您可以在序言中根据需要自定义引用。对我来说,我对章节使用以下自定义:

\crefname{chapter}{Chapter}{Chapters}
\Crefname{chapter}{Chapter}{Chapters}
\crefformat{chapter}{Chapter #1}
\crefrangeformat{chapter}{#1}

请注意,你可以用缩写形式(例如)替换Chapter和。你还可以通过添加点(例如)或括号(例如)来进一步自定义编号,这将自动为章节编号添加括号。以下是示例代码:ChaptersCh\crefformat{chapter}{Chapter. #1}\crefformat{chapter}{Chapter. (#1)}

\documentclass[]{report}


\usepackage{cleveref}

% Define formats
\crefname{chapter}{Chapter}{Chapters}
\Crefname{chapter}{Chapter}{Chapters}
\crefformat{chapter}{Chapter #1}
\crefrangeformat{chapter}{#1}



\begin{document}



\chapter{First Chapter}
\label{ch:first}
For more information about this topic please refer to \cref{ch:fifth,,ch:third,,ch:fourth}


\chapter{Second Chapter}
\label{ch:second}
In \cref{ch:first}, we introduced (topic name). Here, we address the problem in more detail.


\chapter{Third Chapter}
\label{ch:third}


\chapter{Fourth Chapter}
\label{ch:fourth}


\chapter{Fifth Chapter}
\label{ch:fifth}



\end{document}

命令的妙处\cref在于它会自动处理引用的章节、节或浮动的顺序。例如,我故意\cref{ch:fifth,,ch:third,,ch:fourth}在引用中写下第五章放在第一位,但\cref在编译文档后仍按其出现的顺序显示它们。

相关内容