我想要一些类似的东西1.1.1. Theorem
而不是Theorem 1.1.1.
所以我曾经\swapnumbers
这样做过,但它给了我1.1.1 Theorem
。
我只是想在定理/定义编号后面添加一个点。
\documentclass[11pt]{article}
\usepackage{setspace}
\setstretch{1.05}
\usepackage{graphicx}
\usepackage{amsthm}
\usepackage[svgnames]{xcolor}
\usepackage{xspace}
\usepackage{verbatim}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[frenchb]{babel}
\setcounter{section}{1}
\setcounter{subsection}{1}
\swapnumbers
\theoremstyle{plain}
\newtheorem{thm}{Théorème}[subsection]
\newtheorem{prop}{Proposition}[subsection]
\newtheorem{coro}{Corollaire}[subsection]
\theoremstyle{definition}
\newtheorem{mydef}{Définition}[subsection]
\begin{document}
\begin{thm}
Il y avais une fois \dots
\end{thm}
\begin{mydef}
Il y avais une autre fois \dots
\end{mydef}
\end{document}
答案1
似乎没有比修补负责排版该部分定理的宏更好的解决方案。
\usepackage{amsthm}
\usepackage{xpatch}
\xpatchcmd\swappedhead{~}{.~}{}{}
\documentclass[11pt]{article}
\usepackage{amsthm}
\usepackage{xpatch}
\xpatchcmd\swappedhead{~}{.~}{}{}
\swapnumbers
\theoremstyle{plain}
\newtheorem{thm}{Theorem}[subsection]
\begin{document}
\section{Some section}
\subsection{Some subsection}
\begin{thm}
Sometimes 2 plus 2 does not add up to 4.
\end{thm}
\end{document}
在了解如何获得所需内容之后,也许可以重新考虑这是否是一个好的设计决策。根据我几十年的写作定理等经验,我给出了以下建议:
尽量缩短数字,以便于记忆。记住它是定理 1.2.1 还是引理 1.1.2 是一种不必要的负担。对于一篇文章,不需要在章节、小节等内进行编号。
为了帮助找到定理、引理、例子等,使用相同的计数器全部定理类环境。这样,您将拥有一个连续的编号环境流,并且不难在引理 3 和定理 5 之间找到示例 4。
按照您当前的编号方案,您将拥有
1.1.1. 定理
和
1.1.1 部分子节
并排显示,字体大小大致相同。这可能会造成混淆。
答案2
使用 可以很容易地做到这一点,它与 以及thmtools
配合使用。这里有两个例子,一个在左边距有定理编号,另一个在左边距有编号:amsthm
ntheorem
\documentclass[11pt]{article}
\usepackage[showframe]{ geometry}%
\usepackage{amsthm}
\usepackage{thmtools}%
\declaretheoremstyle[
spaceabove=6pt, % spacebelow=6pt,
headfont=\normalfont\bfseries,
notefont=\mdseries, notebraces={(}{)},
bodyfont=\normalfont\itshape,
postheadspace=.5em, %
headformat=\NUMBER.~\NAME\NOTE%
]{plainswap}
\declaretheoremstyle[
spaceabove=6pt, % spacebelow=6pt,
headfont=\normalfont\bfseries,
notefont=\mdseries, notebraces={(}{)},
bodyfont=\normalfont\itshape,
postheadspace=.5em, %
headformat={\llap{\NUMBER.~}\NAME\NOTE}
]{plainmarginno}
\declaretheorem[style=plainswap, numberwithin=subsection, name=Theorem]{thm}
\declaretheorem[style=plainmarginno, sibling=thm, name=Theorem]{marginthm}
\begin{document}
\section{Some section}
\subsection{Some subsection}
\begin{thm}
Sometimes 2 plus 2 does not add up to 4.
\end{thm}
\begin{marginthm}
Sometimes 1 plus 1 does not add up to 2.
\end{marginthm}
\end{document}