定理环境内的缩进

定理环境内的缩进

我正在尝试获取定理导出的环境来缩进整个文本块。我所拥有的是

\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,只是必须定义标题。

相关内容