我正在尝试获取定理导出的环境来缩进整个文本块。我所拥有的是
\theoremstyle{aside}
\newtheorem{asides}{Aside}[chapter]
\NewDocumentEnvironment{aside}{m o}
{\begin{adjustwidth}{1in}{0em}
\IfNoValueTF{#2}
{\asides \label{#1} \addtheocontentsline[]{#1}{Aside}}
{\asides[#2] \label{#1} \addtheocontentsline[#2]{#1}{Aside}}
\ignorespaces
\end{adjustwidth}
}
{\endasides}
你输入的位置\begin{aside}{label}[Title]
会根据此处的讨论放入目录中:目录中的 AMS 定理
整个 {aside} 块应该缩进。但是,实际发生的情况是只有标题缩进,其他部分则不缩进。(当我尝试在 {aside} 环境样式中调整缩进时,也发生了同样的事情}。
答案1
您放错了\end{adjustwidth}
。
\documentclass{report}
\usepackage{xparse}
\usepackage{chngpage}
\usepackage{amsthm}
\usepackage{lipsum}
% guess
\NewDocumentCommand{\addtheocontentsline}{omm}{%
\addcontentsline{toc}{subsection}{%
#3 \protect\ref{#2}%
\IfValueT{#1}{ (#1)}%
}%
}
%\theoremstyle{aside} % no idea what this should be
\newtheorem{asides}{Aside}[chapter]
\NewDocumentEnvironment{aside}{mo}
{%
\adjustwidth{1in}{0pt}
\IfNoValueTF{#2}
{\asides\addtheocontentsline{#1}{Aside}}
{\asides[#2]\addtheocontentsline[#2]{#1}{Aside}}%
\label{#1}%
}
{%
\endasides
\endadjustwidth
\addvspace{\topsep}
}
\begin{document}
\tableofcontents
\chapter{First}
\lipsum[2]
\begin{aside}{foo}[Whatever]
\lipsum[3]
\end{aside}
\lipsum[4]
\end{document}
我必须猜测 的定义\addtheocontentsline
。
答案2
使用该软件包可以轻松完成以下操作ntheorem
:
\theoremstyle{plain}
\theoremheaderfont{\bfseries}
\theorembodyfont{\itshape}
\theoremindent=1in
\newtheorem{asides}{Aside}[chapter]
该包定义了一个可定制的\listtheorems
命令,类似于\listoffigures
,只是必须定义标题。