定义颜色枚举

定义颜色枚举

下面的代码非常有趣,因为它在枚举旁边添加了一个星号。

\documentclass{article}
\usepackage{enumitem} 
%%%%%%%%%%%%%%%%%%%%%%%%
%% CODE thanks to egreg 
%%%%%%%%%%%%%%%%%%%%%%%
\setlist[enumerate]{before=\setupmodenumerate}

\newif\ifmoditem
\newcommand{\setupmodenumerate}{%
  \global\moditemfalse
  \let\origmakelabel\makelabel
  \def\moditem##1{\global\moditemtrue\def\mesymbol{##1}\item}%
  \def\makelabel##1{%
    \origmakelabel{\ifmoditem\llap{\mesymbol\enspace}\fi##1}%
    \global\moditemfalse}%
}

\begin{document}
\begin{enumerate}
\moditem{*} test
\end{enumerate}
\end{document}

得出:

在此处输入图片描述

我的问题是:

“我怎样才能创建一个类似的经过修改的项目,比如说\citem,给枚举着色?”

类似的代码或使用上述想法会很棒。请注意,颜色(用户希望的颜色)必须是针对选择性项目,而不是整个枚举集。


更新:因此,查看上面的链接我认为我已经找到了代码形式的解决方案;

\newcommand{\myitem}{\refstepcounter{enumi}\item[\color{red}{\theenumi.}]}

提供了一些线索,但它不尊重枚举中的枚举。嗯???

在此处输入图片描述

这是由

\begin{enumerate}
\myitem
\moditem{*} test
\myitem
\myitem Test test test
    \begin{enumerate}
    \item
    \item 
    \item 
    \myitem 
    \end{enumerate}
\end{enumerate}

答案1

只需改变宏即可使用颜色:

\documentclass{article}
\usepackage{enumitem,color} 

\setlist[enumerate]{before=\setupmodenumerate}

\newif\ifcitem
\newcommand{\setupmodenumerate}{%
  \global\citemfalse
  \let\origmakelabel\makelabel
  \def\citem##1{\global\citemtrue\def\cecolor{##1}\item}%
  \def\makelabel##1{%
    \origmakelabel{\ifcitem\color{\cecolor}\fi##1}%
    \global\citemfalse}%
}

\begin{document}
\begin{enumerate}
\item
\citem{red} test
\item
\item Test test test
    \begin{enumerate}
    \item
    \citem{green} 
    \item 
    \item 
    \end{enumerate}
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容