Numaralandırma ortamlarını hizalama

Aug 16 2020

İki numaralandırma ortamım var. MWE'de, ikinci ortamdaki sayılar görünüşte birinci ortamdaki sayılarla sağa hizalı, ikinci ortamdaki sayıları birinci ortamdaki sayılarla sola hizalamak istiyorum.

Üçüncü ortam da ilk iki ortamla sola hizalanmalıdır. Dördüncü ortam beklendiği gibi görüntülenmeye devam etmelidir.

MWE

\documentclass{book}
\usepackage[inline,shortlabels]{enumitem}
\setlist[enumerate]{leftmargin=4em, align=left}
\begin{document}
\begin{enumerate}
    \item Item 1
    \item Item 2
    \item Item 3
\end{enumerate}
\begin{enumerate}[label=1.\arabic*.]
        \item Item 1.1
        \item 1.2
    \end{enumerate}
\begin{itemize}
    \item Item 10
    \item Item 20
\end{itemize}
\begin{enumerate*}[label=(\roman*)]
    \item Item 100
    \item item 200
\end{enumerate*}
\end{document}

Yanıtlar

5 Zarko Aug 16 2020 at 08:38

Ekleyip eklemediğine bakın

\setlist[enumerate]{leftmargin=4em, align=left}

belgenizin önsözünde sorununuzu çözün.

Tam MWE:

\documentclass{book}
\usepackage{enumitem}
\setlist[enumerate]{leftmargin=4em, align=left}

\usepackage{lipsum}

\begin{document}
\lipsum[11]
\begin{enumerate}
    \item Item 1
    \item Item 2
    \item Item 3
\end{enumerate}
\begin{enumerate}[label=1.\arabic*.]
        \item Item 1.1
        \item Item 1.2
    \end{enumerate}
\end{document}

Ek:

Soru durumu düzenlemeniz çok değiştikten sonra. Not: enumitemsatır içi listeler için ayrı ayarlara izin vermez (bildiğim kadarıyla), ancak böyle bir durumda istenen özelliklerle yeni liste tanımlamanızı tavsiye ederiz. Örneğin:

\newlist{inlinelist}{enumerate*}{1}
\setlist*[inlinelist,1]{label=(\roman*), 
                        before=\unskip{: }, itemjoin={{, }}, itemjoin*={{, and }}}

Cevabın ilk versiyonunda bunu göz önünde bulundurarak, belge örneğinizi aşağıdaki gibi yazabilirsiniz:

\documentclass{book}
\usepackage[shortlabels]{enumitem}
\setlist[enumerate]{leftmargin=4em, align=left}
\newlist{inlinelist}{enumerate*}{1}
\setlist*[inlinelist,1]{label=(\roman*),
                        before=\unskip{: }, itemjoin={{, }}, itemjoin*={{, and }}}
\usepackage{lipsum}

\begin{document}
\lipsum[11]

\begin{enumerate}
    \item Item 1
    \item Item 2
    \item Item 3: 
\end{enumerate}
\begin{enumerate}[label=1.\arabic*.]
        \item Item 1.1
        \item Item 1.2
    \end{enumerate}

\noindent%   
Some text 
\begin{inlinelist}[label=(\roman*)]
    \item Item 100
    \item item 200
    \item item 300
\end{inlinelist}.
\end{document}

hangi sonuç verir:

1 jsbibra Aug 16 2020 at 08:30

\documentclass{book}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}[
                leftmargin=\parindent,
                align=left,
                labelwidth=\parindent,
                labelsep=10pt]
    \item Item 1
    \item Item 2
    \item Item 3
\end{enumerate}
\begin{enumerate}[
                label=1.\arabic*.,
                leftmargin=\parindent,
                align=left,
                labelwidth=\parindent,
                labelsep=10pt]
        \item Item 1.1
        \item Item 1.2
    \end{enumerate}
\end{document}