Cambiar \leftmargin en \enumerate según el ancho de la etiqueta más grande

Cambiar \leftmargin en \enumerate según el ancho de la etiqueta más grande

Aquí hay un MWE:

\documentclass{article}
\usepackage{enumitem}
\usepackage{lipsum}

\begin{document}

\begin{enumerate}[leftmargin=1.5cm, font=\bfseries, labelsep=1em]
    \item[1-1.*] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut 
    purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur 
    dictum gravida mauris. 
    \item[1-2.] Nam arcu libero, nonummy eget, consectetuer id, vulputate a,
    magna. Donec vehicula augue eu neque. Pellen- tesque habitant morbi tristique 
    senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras 
    viverra metus rhoncus sem. 
    \begin{enumerate}[leftmargin=1.5cm, label=(\alph*)]
        \item Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu 
    tellus sit amet tortor gravida placerat.
        \item Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. 
    Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. 
    \end{enumerate}
    \item[1-12.*] Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, 
    nulla. Curabitur auc- tor semper nulla. Donec varius orci eget risus.
\end{enumerate}

\end{document}

Me pregunto si hay una manera de hacer que todo esté alineado como está, pero el número más grande (en este caso, 1-12.*) esté alineado a la izquierda con el margen y todo lo demás esté alineado en función de eso. . También quiero poder sangrar la sublista (a), (b), etc. comenzando desde el principio del texto (no los números) en la lista principal.

Respuesta1

Aquí hay una solución, que usa la widest=clave, de enumitem:

\documentclass{article}
\usepackage[showframe]{geometry}
\usepackage{enumitem}
\usepackage{lipsum}

\begin{document}

\begin{enumerate}[widest=\bfseries1-12.*, labelindent =-0.333em, font=\bfseries, labelsep = 1em, leftmargin = *]
  \item[1-1.*] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut
        purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur
        dictum gravida mauris.
  \item[1-2.\hphantom{*}] Nam arcu libero, nonummy eget, consectetuer id, vulputate a,
        magna. Donec vehicula augue eu neque. Pellen- tesque habitant morbi tristique
        senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras
        viverra metus rhoncus sem.
        \begin{enumerate}[wide = 0pt, align = left, label=(\alph*), leftmargin=*]%leftmargin=2em
          \item Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu
                tellus sit amet tortor gravida placerat.
          \item Integer sapien est, iaculis in, pretium quis, viverra ac, nunc.
                Praesent eget sem vel leo ultrices bibendum. Aenean faucibus.
        \end{enumerate}
  \item[1-12.*] Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac,
        nulla. Curabitur auc- tor semper nulla. Donec varius orci eget risus.
\end{enumerate}

\end{document} 

ingrese la descripción de la imagen aquí

Respuesta2

Dado que parece que desea escribir etiquetas arbitrarias para su primer nivel, es mejor que utilice listas de descripción (use el paquete calc e ingrese la etiqueta más larga en las opciones de la lista de descripción).

\documentclass{article}
\usepackage{enumitem}
\usepackage{lipsum}
\usepackage{calc}

\begin{document}
\begin{description}[leftmargin=!,labelwidth=\widthof{\bfseries 1-12.*}]
    \item[1-1.*] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut 
    purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur 
    dictum gravida mauris. 
    \item[1-2.] Nam arcu libero, nonummy eget, consectetuer id, vulputate a,
    magna. Donec vehicula augue eu neque. Pellen- tesque habitant morbi tristique 
    senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras 
    viverra metus rhoncus sem. 
    \begin{enumerate}[label=(\alph*)]
        \item Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu 
    tellus sit amet tortor gravida placerat.
        \item Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. 
    Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. 
    \end{enumerate}
    \item[1-12.*] Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, 
    nulla. Curabitur auc- tor semper nulla. Donec varius orci eget risus.
\end{description}

\end{document}

ingrese la descripción de la imagen aquí

información relacionada