我有一些行为如下的代码:
第1章
第 1.1 节
1.1.1 小节
定义1.1.2
定理 1.1.3
公式 1.1.1
我希望它表现如下:
第1章
第 1.1 节
1.1.1 小节
定义 1.1.1.1
定理 1.1.1.2
公式 1.1.1.3
1.1.2 小节
公式 1.1.2.1
定理 1.1.2.2
第 1.2 节
公式 1.2.1
定义1.2.2
这是我的代码
\counterwithin{equation}{subsection}
\newtheoremstyle{break}
{\topsep}{\topsep}%
{\upshape}{}%
{\bfseries}{}%
{\newline}{}%
\theoremstyle{break}
\newtheorem{teor}[subsection]{MyThm}
\newtheorem{cor}[subsection]{MyCor}
\newtheorem{defn}[subsection]{MyDefinition}
总结一下,我想:
- 部分计数器仅依赖于章节计数器
- 子节计数器仅依赖于节计数器
- 方程、定理......共享同一个计数器,该计数器仅取决于节/小节计数器
您对此有何建议?
答案1
与语句共享equation
计数器并进行修改\theequation
以忽略零子节号。
\documentclass{book}
\usepackage{amsmath,amsthm}
\counterwithin*{equation}{section}
\counterwithin*{equation}{subsection}
\renewcommand{\theequation}{%
\thesection.%
\ifnum\value{subsection}>0 \arabic{subsection}.\fi
\arabic{equation}%
}
\newtheoremstyle{break}
{\topsep}{\topsep}%
{\upshape}{}%
{\bfseries}{}%
{\newline}{}%
\theoremstyle{break}
\newtheorem{theorem}[equation]{Theorem}
\newtheorem{corollary}[equation]{Corollary}
\newtheorem{definition}[equation]{Definition}
\begin{document}
\chapter{Chapter 1}
\section{Section 1.1}
\subsection{Subsection 1.1.1}
\begin{definition}
This should be Definition 1.1.1.1
\end{definition}
\begin{theorem}
This should be Theorem 1.1.1.2
\begin{equation}
\text{This should be Equation 1.1.1.3}
\end{equation}
\end{theorem}
\subsection{Subsection 1.1.2}
\begin{equation}
\text{This should be Equation 1.1.2.1}
\end{equation}
\begin{theorem}
This should be Theorem 1.1.2.2
\end{theorem}
\section{Section 1.2}
\begin{equation}
\text{This should be Equation 1.2.1}
\end{equation}
\begin{definition}
This should be Definition 1.2.2
\end{definition}
\end{document}