我想給我的桌子編號,以便我有,例如
Theorem 1.3
Table 1.4
Lemma 1.5
我怎樣才能達到這個結果?我也在使用 smartef,所以理想情況下,\cref{ThatTable}
當我完成後會產生一個連結的「表 1.4」。
答案1
你不需要做任何特別的事情:\newtheorem{theorem}[table]{Theorem}
會做的事。
\documentclass{book}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{cleveref}
\newtheorem{theorem}[table]{Theorem}
\begin{document}
\chapter{My content}
\begin{theorem}\label{A}
\end{theorem}
\begin{table}
\caption{A dummy table}\label{B}
\end{table}
\begin{theorem}\label{C}
\end{theorem}
\begin{theorem}
\end{theorem}
See \cref{A}, \cref{B}, \cref{C}.
\begin{table}
\caption{Another dummy table}
\end{table}
\end{document}
但請注意, 的浮動性質table
可能會使輸出看起來「不同步」。
答案2
assoccnt
這可以透過關聯計數器(套件或xassoccnt
)的相互分配來實現
每次Theorem
增加,表計數器也應該增加,反之亦然,lemma
環境使用Theorem
計數器,所以這也會增加。
使用這種連續計數應該可以防止浮動表,因為它們可能會「中斷」計數
\documentclass{book}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{assoccnt}
\newtheorem{Theorem}{Theorem}
\newtheorem{lemma}[Theorem]{lemma}
\DeclareAssociatedCounters{Theorem}{table}%
\DeclareAssociatedCounters{table}{Theorem}%
\begin{document}
\chapter{My content}
\begin{Theorem}
\end{Theorem}
\begin{table}
\caption{A dummy table}
\end{table}
\begin{Theorem}
\end{Theorem}
\begin{Theorem}
\end{Theorem}
\begin{table}
\caption{Another dummy table}
\end{table}
\begin{lemma}
First lemma
\end{lemma}
\begin{table}
\caption{Another dummy table}
\end{table}
\begin{Theorem}
\end{Theorem}
\end{document}