我们有一个基于回忆录的内部文档类。对于一些较小的文档,我们不需要章节,因此我们有效地将章节提升为章节,就像在我的 MWE 中一样。我的问题是,在这种情况下我如何创建附录?\appendix 命令格式化后续章节作为附录,但我没有章节,我想要后续的部分成为附录。
我的 MWE 已经达到了某种程度(为简单起见,使用回忆录本身,而不是基于它的课程):
\documentclass{memoir}
\usepackage{hyperref}
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Change the section commands because we don't have chapters %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewcommand{\thesection}{\arabic{section}}
\renewcommand{\thesubsection}{\arabic{section}.\arabic{subsection}}
\renewcommand{\thesubsubsection}{\arabic{section}.\arabic{subsection}.\arabic{subsubsection}.}
\renewcommand{\thechapter}{\thesection}
\mainmatter
\section{Helium}
\section{Alpha particles}
See \autoref{app:numden}
\appendix
\renewcommand{\thesection}{\Alph{section}}
\section{Number densities}
\label{app:numden}
\end{document}
\appendix 命令会从 1 重新开始章节编号,我可以使用 将其更改为“A” \renewcommand{\thesection}{\Alph{section}}
。但是,当我引用附录时(就像我使用 一样)\autoref{app:numden}
,它显示“章节 A”,而我希望它显示“附录 A”。当然,我可以随意排版交叉引用,但是如何让章节正确地被视为附录,就像在文章类中一样?
答案1
我不确定回答我自己的问题是否是一种不好的形式,但在将附录引用为“附录 A”的具体点上,解决方案是定义一个新命令:
\newcommand{\appref}[1]{\hyperref[#1]{Appendix~\ref{#1}}}
并用它代替 \autoref。但是,如果有人有更优雅的解决方案来解决让 \appendix 将 \section 视为回忆录(或者我猜是任何有章节的类)中的附录的问题,我仍然会感兴趣。
答案2
为了将某个部分视为附录并在交叉引用时显示为“附录 A”,您可以使用该cleveref
包自定义交叉引用格式。
这是你的修改版本平均能量损失。我添加了cleveref
包并使用了\cref
命令而不是\autoref
。我还使用了命令来自定义附录中的章节标题格式。此外,我还使用包中的和命令\setsecheadstyle
定义了章节的自定义参考格式。\crefname
\Crefname
cleveref
\documentclass{memoir}
\usepackage{hyperref}
\usepackage{cleveref}
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Change the section commands because we don't have chapters %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewcommand{\thesection}{\arabic{section}}
\renewcommand{\thesubsection}{\arabic{section}.\arabic{subsection}}
\renewcommand{\thesubsubsection}{\arabic{section}.\arabic{subsection}.\arabic{subsubsection}.}
\renewcommand{\thechapter}{\thesection}
\mainmatter
\section{Helium}
\section{Alpha particles}
See \cref{app:numden}
\appendix
\renewcommand{\thesection}{\Alph{section}}
% Custom section format
\setsecheadstyle{\Large\bfseries Appendix\space}
% Custom reference format for sections
\crefname{section}{Appendix}{Appendices}
\Crefname{section}{Appendix}{Appendices}
\section{Number densities}
\label{app:numden}
\end{document}