Ich möchte eine nummerierte Liste erstellen, aber nach der Nummer möchte ich ein Symbol hinzufügen können. Im Moment kann ich das mit Folgendem machen:
\documentclass{article}
\begin{document}
\begin{enumerate}
\item[1.$\diamondsuit$] First item
\item[2.$\clubsuit$] Second item
\item[3.$\spadesuit$] Third item
\item[4.$\heartsuit$] Fourth item
\end{enumerate}
\end{document
was folgendes ergibt
In diesem Beispiel habe ich die Zahlen jedoch von Hand eingegeben. Wie kann ich nach der Zahl ein Symbol hinzufügen, ohne die Zahl manuell eingeben zu müssen?
Das Einfügen des Symbols nach dem Element \item $\diamondsuit$
ist nicht das, was ich möchte, da die zweite Zeile in Bezug auf die Nummer eingerückt wird und nicht in Bezug auf das Aufzählungszeichen, das „1.diamond“ lautet.
KlärungIch möchte nicht genau dieses Schema. Ich möchte das Symbol für jedes Element auswählen können, zum Beispiel \itemsymbol{$\diamondsuit$}
würde ich den Karo nach der entsprechenden Zahl hinzufügen. (Es kann zum Beispiel der Fall sein, dass 1 und 2 Karo sind, 3 ein Pik usw. oder irgendein anderes Symbol!)
Antwort1
Mit enumitem
und \itemsymbol
:
\documentclass{article}
\usepackage{enumitem}
\newenvironment{symenum}
{\enumerate[label=\arabic*.\noexpand\thisenumsymbol,align=left]}
{\endenumerate}
\newcommand\thisenumsymbol{}
\newcommand\itemsymbol[1]{%
\renewcommand{\thisenumsymbol}{#1}%
\item
}
\begin{document}
\begin{symenum}
\itemsymbol{$\diamondsuit$}\label{first} First item
\itemsymbol{$\clubsuit$} Second item
\itemsymbol{$\spadesuit$} Third item
\itemsymbol{$\heartsuit$} Fourth item
\itemsymbol{} Fourth item
\end{symenum}
Here's the reference: \ref{first}
\end{document}
Antwort2
\documentclass{article}
\def\zz#1{%
\ifcase#1\relax\or$\diamondsuit$\or$\clubsuit$\or$\spadesuit$\or$\heartsuit$\else?\fi}
\begin{document}
\renewcommand\labelenumi{\theenumi.\zz{\value{enumi}}}
\begin{enumerate}
\item First item
\item Second item
\item Third item
\item Fourth item
\end{enumerate}
\end{document}
Antwort3
Eine Alternative mit enumitem.sty
:
\documentclass{article}
\usepackage{enumitem}
\makeatletter
\def\ctext#1{\expandafter\@ctext\csname c@#1\endcsname}
\def\@ctext#1{\ifcase#1\or $\diamondsuit$\or
$\clubsuit$\or $\spadesuit$\or$\heartsuit$\or ?\fi}
\makeatother
\AddEnumerateCounter{\ctext}{\@ctext}{MyWidth}
\begin{document}
\begin{enumerate}[label=\arabic*.\ctext{enumi}]
\item foo
\item bar
\item baz
\item foobar
\end{enumerate}
\end{document}
EDIT 1: Nach Klärung des OP
Ein dynamischer Ansatz basierend auf Davids Lösung:
\documentclass{article}
\usepackage{enumitem}
\def\switchenum#1{%
\renewcommand\labelenumi{\theenumi.#1}%
}
\begin{document}
\begin{enumerate}[align=left]
\switchenum{$\heartsuit$}
\item First item \switchenum{$\diamondsuit$}
\item Second item
\item Third item \switchenum{$\clubsuit$}
\item Fourth item \switchenum{}
\item Fifth item
\end{enumerate}
\end{document}