Eu tenho uma lista enumerada criada com enumitem
a qual interrompo e depois retomo. Entre o último item antes da interrupção e o primeiro após a retomada, insiro um parágrafo de texto. Como posso alinhar horizontalmente esse parágrafo para que:
- A primeira linha desse parágrafo está alinhada horizontalmente com oesquerdaextremidades dos rótulos dos itens (conforme indicado na saída mostrada no final aqui); e ao invés
- Toda a borda esquerda do parágrafo está alinhada com oesquerdaextremidades dos rótulos dos itens.
Aqui está o que eu tentei:
\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}
Acredito que quero alguma combinação aritmética de comprimentos, como em...
\hspace{\the\labelwidth-\the\labelsep}
...e eu esperaria usar algum comando do pacote calc
para fazer isso, mas: (a) não sei como combinar esses comprimentos; e (b) não vejo exatamente quais comprimentos preciso combinar.
Responder1
isso parece funcionar:
\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}
Responder2
Você tem a ideia certa! Porém, em vez de usar o calc
ambiente, enumitem
ele pode lidar com isso sozinho. Para referência, aqui está a figura das dimensões na enumitem
documentação do pacote:
Parece que você deseja que a margem esquerda seja definida como zero e a largura do rótulo igual ao recuo do item.
Isto é conseguido com os seguintes ajustes no enumerate
ambiente:
\begin{enumerate}[
align=left,
leftmargin=0pt,
itemindent=\labelwidth,
labelsep=0pt
]
\end{enumerate}
É o que parece no seu documento. Era isso que você procurava?
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}