![跨部分和部分内更改计数器](https://linux22.com/image/288133/%E8%B7%A8%E9%83%A8%E5%88%86%E5%92%8C%E9%83%A8%E5%88%86%E5%86%85%E6%9B%B4%E6%94%B9%E8%AE%A1%E6%95%B0%E5%99%A8.png)
我正在制作一份包含注释(使用包gb4e
)和章节的文档。注释对应于某些章节中的某些编号,但这些章节与我使用的章节不对应;那些取决于某个日期。请参阅 MWE。
我怎样才能在自己喜欢的地方重置注释计数器。到目前为止,我使用chngcntr
带有命令的包\counterwithin{exx}{section}
,但是当部分和“章节”(必须重置计数器时)不对应时,我就会遇到麻烦。
使用\section*
不起作用,因为计数器会继续。
\documentclass{article}
\usepackage{gb4e}
\usepackage{chngcntr}
\counterwithin{exx}{section}
\begin{document}
\section{Yesterday}
\begin{center}{\scshape\large Chapter 1}\end{center}
\begin{exe}
\ex \gll This is a sentence we read yesterday\\
Este es una frase [nos] leer ayer\\
\section{Today}
\ex \gll This way the counter continues, but it isn't preferable either\\
Este manera el contador continuar, pero lo no.es preferible tampoco\\
\end{exe}
\begin{center}{\scshape\large Chapter 2}\end{center}
\begin{exe}
\ex \gll This.one should.be number 1 again\\
Este ser\'{i}a numero 1 de.nuevo\\
\end{exe}
\section{Tomorrow}
\begin{exe}
\ex \gll I want this to be number 2.\\
[yo] quere este a ser numero 2\\
\begin{center}{\scshape\large Chapter 3}\end{center}
\ex \gll And this is a 1.\\
Eta hau da bat 1\\
\end{exe}
\end{document}
正如您所看到的,\counterwithin{exx}{section}
这里根本不方便,但第一次章节和日期或多或少是对应的。
答案1
奇怪的是,各章节之间会有伪造的章节,这并没有简化整个程序。
我认为,\section
命令应该不是在环境中启动。执行此操作时,如果使用具有自动标题和计数的exe
宏,则该宏将完成该工作。\centredchapter
\counterwithin{exx}{chapter}
无论如何,都可以通过适当的方式进行重置\setcounter{exx}{0}
。
\documentclass{article}
\usepackage{gb4e}
\usepackage{chngcntr}
\newcounter{chapter}
\counterwithin{exx}{chapter}
\newcommand{\centredchapter}{%
\refstepcounter{chapter}%
\begin{center}\scshape\large Chapter~\thechapter\end{center}
}%
\begin{document}
\section{Yesterday}
\centredchapter
%\begin{center}{\scshape\large Chapter 1}\end{center}
\begin{exe}
\ex \gll This is a sentence we read yesterday\\
Este es una frase [nos] leer ayer\\
\end{exe}
\section{Today}
\begin{exe}
\ex \gll This way the counter continues, but it isn't preferable either\\
Este manera el contador continuar, pero lo no.es preferible tampoco\\
\end{exe}
\centredchapter
%\begin{center}{\scshape\large Chapter 2}\end{center}
\begin{exe}
\ex \gll This.one should.be number 1 again\\
Este ser\'{i}a numero 1 de.nuevo\\
\end{exe}
\section{Tomorrow}
\begin{exe}
\ex \gll I want this to be number 2.\\
[yo] quere este a ser numero 2\\
\end{exe}
\centredchapter
\begin{exe}
\ex \gll And this is a 1.\\
Eta hau da bat 1\\
\end{exe}
\end{document}