Sobre el comportamiento del entorno enumerado.

Sobre el comportamiento del entorno enumerado.

He definido un entorno personalizado muy simple para problemas de tarea, que es básicamente simple enumeratepero sin sangrías:

\newcounter{hwprob}
\newenvironment{hwprob}{\refstepcounter{hwprob} \textbf{\thehwprob.} ~ }{}

Si abro un enumerateentorno real dentro hwprob, sucede esto:

\begin{hwprob}
   \begin{enumerate}
      \item Some text.
      \item Some other text.
   \end{enumerate}
\end{hwprob}

No estoy seguro de por qué el primer elemento 1. no comienza en la misma línea que1.Intenté quitar la tilde, pero fue en vano. Lo que me desconcierta es que sé que cuando lo uso enumeratedentro del proofentorno, el primer elemento estará en la misma línea quePrueba., con la sangría correcta y todo.

¿Qué puedo hacer para arreglar esto? ¿Es esto el resultado de cómo lo definí hwprobo es inherente a enumerate?

Respuesta1

Aquí está la parte del "cómo": definirlo hwprobcomo un entorno de lista e insertar automáticamente un \itemal principio de hwprob.

\documentclass{article}
\usepackage{enumitem}

\newlist{hwprob}{enumerate}{1}
\setlist[hwprob]{label=\textbf{\arabic*.}, first*=\item}

\begin{document}
\begin{hwprob}
   \begin{enumerate}
      \item Some text.
      \item Some other text.
   \end{enumerate}
\end{hwprob}
\end{document}

ingrese la descripción de la imagen aquí

Para la parte del "por qué", supongo que tiene algo que ver con \trivlist(quizás con \parshape), que es la base común utilizada por los entornos de listas y teoremas.

Respuesta2

El formato que desea lograr (hacer que el primer elemento de la enumeratelista comience en la línea actual en lugar de comenzar después de un salto de línea) ocurre si el entorno se inicia dentro de uno de los entornos enumerateLaTeX .listtrivlist

Para lograr su objetivo de formato, le sugiero que cargue el paquete enumitem y use sus macros \newlisty \setlistpara crear un entorno de lista similar a una enumeración personalizado llamado hwprob.

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{enumitem}
\newlist{hwprob}{enumerate}{1}
\setlist[hwprob,1]{label=\bfseries\arabic*.,left=0pt}

\begin{document}
\begin{hwprob}
\item
   \begin{enumerate}
      \item Some text.
      \item Some other text.
   \end{enumerate}
\end{hwprob}
\end{document}

información relacionada