私は、11 章とそれに続く付録、そして最後にもう 1 つの章 (つまり、オランダ語の要約) で構成される論文を準備しています。最後の章 (オランダ語の要約) には図がいくつかあり、図の番号付けを再開したいと考えています (たとえば、オランダ語の要約の章の最初の図には 12.1 という番号を付ける必要があります)。問題を説明するためのコードを以下に示します。
\documentclass[11pt,twoside,openright]{memoir}
\begin{document}
\begin{KeepFromToc}
\tableofcontents \cleardoublepage
\end{KeepFromToc}
\chapter{Introduction}
This is chapter 1.
\begin{figure}
\caption{Body figure.}
\label{bodyfigure1}
\end{figure}
\appendix
\addcontentsline{toc}{part}{Appendices}
\part*{Appendices}
\chapter{Appendix A1}
This is A1.
\begin{figure}
\caption{Body figure.}
\label{bodyfigure2}
\end{figure}
\backmatter
\chapter{Dutch Summary}
This is chapter 2.
\begin{figure}
\caption{Body figure.}
\label{bodyfigure3}
\end{figure}
\end{document}
これをコンパイルすると、第 1 章の最初の図は正しく「図 1.1」と番号が付けられていますが、オランダ語の概要章の図は「図 1」と番号が付けられていますが、「図 2.1」と読む必要があります。この問題を修正する方法についてのアイデアがあれば、ぜひ教えてください。
答え1
これは、指定された数のカウンターのカウンター値を保存し、後で再注入する、 とその 機能を備えxassoccnt
たバージョンです。\BackupCountersGroup
\RestoreBackupCounterGroup
\documentclass[11pt,twoside,openright]{memoir}
\usepackage{xassoccnt}
\DeclareBackupCountersGroupName{dutchchapter}
\AssignBackupCounters[name=dutchchapter,cascading=true]{chapter}
\makeatletter
\newcommand{\StoreCounterFormats}{%
\let\latex@@thechapter\thechapter
\let\latex@@thefigure\thefigure
\let\latex@@thetable\thetable
}
\newcommand{\ContinueOldCounting}[2]{%
\RestoreBackupCounterGroup[backup-id=#1]{#2}%
\refstepcounter{chapter}%
\let\thechapter\latex@@thechapter
\let\thefigure\latex@@thefigure
\let\thetable\latex@@thetable
}
\makeatother
\AtBeginDocument{%
\StoreCounterFormats%
}
\begin{document}
\begin{KeepFromToc}
\tableofcontents \cleardoublepage
\end{KeepFromToc}
\chapter{Introduction}
This is chapter 1.
\begin{figure}
\caption{Body figure.}
\label{bodyfigure1}
\end{figure}
%Code to produce some dummy chapters
\makeatletter
\newcount\foocnt
\foocnt\c@chapter
\loop\unless\ifnum\foocnt=11
\advance\foocnt by 1
\chapter{Dummy chapter \the\foocnt}
\repeat
\makeatother
%End of dummy chapters production
% Make a backup of the state!
\BackupCounterGroup[backup-id=beforeappendices]{dutchchapter}
\appendix
\addcontentsline{toc}{part}{Appendices}
\part*{Appendices}
\chapter{Appendix A1}
This is A1.
\begin{figure}
\caption{Body figure.}
\label{bodyfigure2}
\end{figure}
\backmatter
% Restore the old state
\ContinueOldCounting{beforeappendices}{dutchchapter}
\chapter{Dutch Summary}
This is chapter \thechapter
\begin{figure}
\caption{Body figure.}
\label{bodyfigure3}
\end{figure}
\end{document}
今後のリリースのいずれかで\the....
マクロを保存する可能性を追加することを考えています。xassoccnt
答え2
簡単な修正方法をご紹介します。
\chapter{Dutch Summary}
\setcounter{chapter}{11}
\refstepcounter{chapter}
\renewcommand\thechapter{\arabic{chapter}}
\renewcommand\thefigure{\thechapter.\arabic{figure}} % for figures
\renewcommand\thetable{\thechapter.\arabic{table}} % for tables