我正在尝试使用以下命令创建以下简单文档结构(但不仅仅包含两个部分)scrartcl
:
我习惯\counterwithin*{section}{part}
对部分内的章节进行编号。对于附录,我希望该appendix
包是解决方案:
\documentclass{scrartcl}
\usepackage{appendix}
\usepackage{chngcntr}
\usepackage{hyperref}
\counterwithin*{section}{part}
\begin{document}
\part{First Part}
\section{First Section} \label{sec:first-first}
\section{Second Section}
\begin{appendices}
\section{First Appendix} \label{sec:app-first-first}
\section{Second Appendix}
\end{appendices}
\part{Second Part}
\section{First Section} \label{sec:second-first}
\section{Second Section}
\begin{appendices}
\section{First Appendix} \label{sec:app-second-first}
\section{Second Appendix}
\end{appendices}
\end{document}
问题:这似乎忽略了\counterwithin
。第二部分()中的第一个附录sec:app-second-first
编号为“C”,而不是预期的“A”。
我尝试过的方法:
- 明确添加
\AtBeginEnvironment{appendices}{\counterwithin*{section}{part}}
没有效果。 - 我也试图避免使用包,只在每个附录之前和之后
appendix
添加,但这会造成混淆:和都会跳转到。\setcounter{section}{0} \renewcommand{\thesection}{\Alph{section}}
\renewcommand{\thesection}{\arabic{section}}
hyperref
sec:app-first-first
sec:app-second-first
sec:first-first
- [更新] 我发现 (2) 中的解决方法与hypertexnames=false作品(全 MWE),但使用
appendices
环境似乎是“更清洁”的,受到推崇的解决方案,我仍然想知道如何调整其中的编号appendices
。
问题:我怎样才能在每个环境中重置部分计数器appendices
(不破坏超链接)?
答案1
附录包添加了几个新的计数器:@ppsaveapp
和@ppsavesec
。我尝试了\counterwithin
它们两个,但只@ppsaveapp
产生了差异。
\documentclass{scrartcl}
\usepackage{appendix}
\usepackage{chngcntr}
\usepackage{hyperref}
\counterwithin*{section}{part}
\counterwithin*{@ppsaveapp}{part}
\begin{document}
\part{First Part}
\section{First Section} \label{sec:first-first}
\section{Second Section}
\begin{appendices}
\section{First Appendix} \label{sec:app-first-first}
\section{Second Appendix}
\end{appendices}
\part{Second Part}
\section{First Section} \label{sec:second-first}
\section{Second Section}
\begin{appendices}
\section{First Appendix} \label{sec:app-second-first}
\section{Second Appendix}
\end{appendices}
\end{document}
答案2
添加\appendix
而不是\begin{appendices}...\end{appendices}
可能会解决您的问题。
完整工作示例:
\documentclass{scrartcl}
\usepackage{appendix}
\usepackage{chngcntr}
\usepackage{hyperref}
\counterwithin*{section}{part}
\begin{document}
\part{First Part}
\section{First Section} \label{sec:first-first}
\section{Second Section}
\begin{appendices}
\section{First Appendix} \label{sec:app-first-first}
\section{Second Appendix}
\end{appendices}
\part{Second Part}
\section{First Section} \label{sec:second-first}
\section{Second Section}
\appendix
\section{First Appendix} \label{sec:app-second-first}
\section{Second Appendix}
\end{document}