![Cómo sangrar el elemento en el entorno del teorema del paquete ams-gsm](https://rvso.com/image/281599/C%C3%B3mo%20sangrar%20el%20elemento%20en%20el%20entorno%20del%20teorema%20del%20paquete%20ams-gsm.png)
Utilizo el paquete gsm para escribir mi archivo de látex. Normalmente, en el entorno del teorema, los elementos tienen una sangría en un pequeño espacio desde el margen izquierdo. Quiero sangrar todo en el margen izquierdo como en la siguiente imagen:
Aquí hay un ejemplo de trabajo mínimo:
\documentclass{gsm-l}
\usepackage{amsmath}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem} This is the theorem.
\begin{enumerate}
\item The first item
\item The second item
\item Are they indented as my purpose?
\end{enumerate}
\end{theorem}
\end{document}
Por favor, ayúdame.
Respuesta1
Esto realmente no tiene nada que ver con el theorem
entorno proporcionado por la clase de documento a través de \newtheorem
. En cambio, es el comportamiento predeterminado de una lista (incluidos enumerate
y itemize
). Puede modificar la sangría utilizando algunos deenumitem
Las interfaces. A continuación configuré que leftmargin
se calcule automáticamente usando *
, lo que da como resultado una configuración al ras a la izquierda:
\documentclass{gsm-l}
\usepackage{amsmath,enumitem}% http://ctan.org/pkg/{amsmath,enumitem}
\setlist[enumerate]{leftmargin=*}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem} This is the theorem.
\begin{enumerate}
\item The first item
\item The second item
\item The third item that is a tad longer and should span more than
a single line, and naturally flow to a second line.
\end{enumerate}
\end{theorem}
\end{document}
\setlist[enumerate]
cambia el comportamiento predeterminado enumerate
a nivel de documento, en todos los niveles de anidamiento. Si desea tener un cambio más localizado, puede proporcionar un argumento opcional al entorno utilizando la siguiente interfaz:
\begin{enumerate}[leftmargin=*]
...
\end{enumerate}
Respuesta2
Las clases de documentos basadas en amsbook
(incluido gsm-l
) configuran la sangría para que sea demasiado grande, como se observa aquí.
El mecanismo utilizado en ams para disminuirlo es anular la configuración de márgenes predeterminada, lo cual debe hacerse \AtBeginDocument
, ya que así es como se definen inicialmente:
\AtBeginDocument{%
\labelsep=5pt\relax
\setcounter{enumi}{13}\setcounter{enumii}{13}%
\setcounter{enumiii}{13}\setcounter{enumiv}{13}%
\settowidth\leftmargini{\labelenumi\hskip\labelsep}%
%% \advance\leftmargini by \normalparindent % this is the culprit
\settowidth\leftmarginii{\labelenumii\hskip\labelsep}%
\settowidth\leftmarginiii{\labelenumiii\hskip\labelsep}%
\settowidth\leftmarginiv{\labelenumiv\hskip\labelsep}%
\setcounter{enumi}{0}\setcounter{enumii}{0}%
\setcounter{enumiii}{0}\setcounter{enumiv}{0}%
\leftmarginv=10pt \leftmarginvi=\leftmarginv
\leftmargin=\leftmargini
\labelwidth=\leftmargini \advance\labelwidth-\labelsep
\@listi}
Dado que esto no está configurado como una definición de comando, no se puede parchear fácilmente mediante técnicas definidas según etoolbox
tengo entendido.