Cómo alinear el párrafo con las etiquetas antes de reanudar la lista de elementos enumerados

Cómo alinear el párrafo con las etiquetas antes de reanudar la lista de elementos enumerados

Tengo una lista de enumeración creada con enumitemla que interrumpo y luego la reinicio. Entre el último elemento antes de la interrupción y el primero después de la reanudación, inserto un párrafo de texto. ¿Cómo puedo alinear horizontalmente ese párrafo para que:

  1. La primera línea de ese párrafo está alineada horizontalmente con laizquierdaextremos de las etiquetas de los elementos (como se indica en el resultado que se muestra al final aquí); y en cambio
  2. El borde izquierdo de todo el párrafo está alineado con elizquierdaextremos de las etiquetas de los artículos.

Esto es lo que probé:

\documentclass[12pt]{article}
\usepackage{calc}
\usepackage{enumitem}

\newlist{myenum}{enumerate}{1}
\setlist[myenum,1]{label= \upshape(\arabic*), ref={\arabic*}}

\begin{document}

\noindent Here is a list.

\begin{myenum}
  \item
    One
  \item
    Two
\end{myenum}

\hspace{\the\labelindent}%
Some other text will go here that may or may not fill out more than a single line of text on the page.

\begin{myenum}[resume*]
  \item 
    Three
  \item
    Four
\end{myenum}

\end{document}

Alineación deseada del párrafo intermedio.

Creo que quiero alguna combinación aritmética de longitudes, como en...

\hspace{\the\labelwidth-\the\labelsep}

...y esperaría usar algún comando del paquete calcpara hacer esto, pero: (a) No sé cómo combinar dichas longitudes; y (b) no veo exactamente qué longitudes necesito combinar.

Respuesta1

esto parece hacer el trabajo:

\documentclass[12pt]{article}
\usepackage{calc}
\usepackage{enumitem}

\newlist{myenum}{enumerate}{1}
\setlist[myenum,1]{label= \upshape(\arabic*), ref={\arabic*}}

\newdimen\midlistindent
\settowidth{\midlistindent}{(1)\kern-\labelindent\kern-\labelsep}
\newcommand{\midlist}[1]{%
  \begingroup
  \leftskip\midlistindent
  \noindent #1\unskip\par
  \endgroup}

\begin{document}

\noindent Here is a list.

\begin{myenum}
  \item
    One
  \item
    Two
\end{myenum}

\midlist{%
Some other text will go here that may or may not fill out more than a single line of text on the page.
}

\begin{myenum}[resume*]
  \item 
    Three
  \item
    Four
\end{myenum}

\end{document}

salida del código de ejemplo

Respuesta2

¡Tienes la idea correcta! Sin embargo, en lugar de utilizar el calcentorno, enumitempuede manejarlo por sí solo. Como referencia, aquí está la figura de dimensiones en la enumitemdocumentación del paquete:

ingrese la descripción de la imagen aquí

Parece que desea que el margen izquierdo se establezca en cero y que el ancho de la etiqueta sea igual a la sangría del elemento.

Esto se logra con los siguientes ajustes al enumeratemedio ambiente:

\begin{enumerate}[
    align=left, 
    leftmargin=0pt, 
    itemindent=\labelwidth, 
    labelsep=0pt
]
\end{enumerate}

Esto se ve así en su documento. ¿Es esto lo que buscabas?

ingrese la descripción de la imagen aquí

MWE:

\documentclass[12pt]{article}
\usepackage{enumitem}

\newlist{myenum}{enumerate}{1}
\setlist[myenum,1]{label= \upshape(\arabic*), ref={\arabic*},
    align=left, 
    leftmargin=0pt, 
    itemindent=\labelwidth, 
    labelsep=0pt}

\begin{document}

    \noindent Here is a list.
    
    \begin{myenum}
      \item One
      \item Two
    \end{myenum}
    
    \noindent Some other text will go here that may or may not fill out more than a single line of text on the page.
    
    \begin{myenum}[resume*]
      \item Three
      \item Four
    \end{myenum}

\end{document}

información relacionada