ムウェ

ムウェ

3 で割ったときに 1 余りになるすべての項目を自動的に赤くしたいです。特に現在の AI 時代では、3n-2項目を手動でラップする\textcolor{}ことは不合理なアイデアです。

ここに画像の説明を入力してください

ムウェ

\documentclass[12pt]{article}
\usepackage{enumitem}
\usepackage{amsmath}
\usepackage{multicol}
\usepackage{xcolor}

\begin{document}


\begin{multicols}{2}
\begin{enumerate}
\item \textcolor{red}{$3xy^2-5xy$}
\item $-2x^2y^3+14x^2y^2$
\item $-2a^2b-4ab^2+8ab$

\item \textcolor{red}{$2x^2+10xy-3xy-15y^2$}
\item $m^2-mn-mn+n^2$
\item $2\alpha^2+2\alpha\beta-3\alpha\beta-3\beta^2$

\item \textcolor{red}{$-2 x^2+13 x y-15 y^2$}
\item $-5 m^2-7 m n+6 n^2$
\item $-14 p^2+29 p q+15 q^2$


\item $-2 a^2-5 a b+12 b^2$
\item $8 r^2+14 r s-15 s^2$

\item $a^2-b^2$
\item $x^2-y^2$
\item $x^2-5x+6$
\item $x^3-5x^2+6x$
\item $-10x^2+17x-3$
\item $15x^2+23x-28$

\item $-30x^2-52x+42$
\item $30x^2-52x-42$
\item $-20x^2-52x+63$
\item $20x^2-52x-63$

\item $-30x^2+12x+42$
\item $30x^2+12x-42$
\item $-20x^2+12x+63$
\item $20x^2+12x-63$

\item $30x^2-73x+42$
\item $-30x^2-73x-42$
\item $20x^2-73x+63$
\item $-20x^2-73x-63$

\item $30x^2+71x+42$
\item $-30x^2+71x-42$
\item $20x^2+71x+63$
\item $-20x^2+71x-63$
\end{enumerate}
\end{multicols}


\end{document}

答え1

enumitemパッケージにはアイテムフックがないようなので、手動でパッチを適用しました\@item

現在の設定では、 の最初のレベルで使用される項目のみが色付けされますenumerate。つまり、ネストされたリスト環境の項目は色付けされません。

\documentclass[12pt]{article}
\usepackage{enumitem}
\usepackage{amsmath}
\usepackage{multicol}
\usepackage{xcolor}


\usepackage{etoolbox}

\makeatletter
\ExplSyntaxOn

\setlist[enumerate, 1]{
  before*={
    \let\@item@orig\@item
    \pretocmd\@item
      {\normalcolor}
      {}{\fail}
    \ExplSyntaxOn
    \apptocmd\@item
      {
        \int_compare:nNnT { \int_mod:nn{\use:c{c@\@listctr}}{3} } = {1}
          { \color{red} }
      }
      {}{\fail}
    \ExplSyntaxOff
  }
}

\setlist[2]{
  before*=\normalcolor\let\@item\@item@orig
}

\ExplSyntaxOff
\makeatother

\begin{document}


\begin{multicols}{2}
\begin{enumerate}
\item $3xy^2-5xy$
\begin{enumerate}
  \item a
  \item a
  \item a
\end{enumerate}
\item $-2x^2y^3+14x^2y^2$
\begin{itemize}
  \item a
  \item a
  \item a
\end{itemize}
\item $-2a^2b-4ab^2+8ab$

\item $2x^2+10xy-3xy-15y^2$
\item $m^2-mn-mn+n^2$
\item $2\alpha^2+2\alpha\beta-3\alpha\beta-3\beta^2$

\item $-2 x^2+13 x y-15 y^2$
\item $-5 m^2-7 m n+6 n^2$
\item $-14 p^2+29 p q+15 q^2$


\item $-2 a^2-5 a b+12 b^2$
\item $8 r^2+14 r s-15 s^2$

\item $a^2-b^2$
\item $x^2-y^2$
\item $x^2-5x+6$
\item $x^3-5x^2+6x$
\item $-10x^2+17x-3$
\item $15x^2+23x-28$

\item $-30x^2-52x+42$
\item $30x^2-52x-42$
\item $-20x^2-52x+63$
\item $20x^2-52x-63$

\item $-30x^2+12x+42$
\item $30x^2+12x-42$
\item $-20x^2+12x+63$
\item $20x^2+12x-63$

\item $30x^2-73x+42$
\item $-30x^2-73x-42$
\item $20x^2-73x+63$
\item $-20x^2-73x-63$

\item $30x^2+71x+42$
\item $-30x^2+71x-42$
\item $20x^2+71x+63$
\item $-20x^2+71x-63$
\end{enumerate}
\end{multicols}


\end{document}

ここに画像の説明を入力してください

アップデート

\int_case:nn(文書化されているLaTeX3 インターフェース、第XI.5節、整数式の条件文)を使用すると、柔軟性が向上します。

\apptocmd\@item
  {
    \int_case:nn { \int_mod:nn{\use:c{c@\@listctr}}{3} }
      {
        {0}{ \color{red} }
        {1}{ \color{blue} }
        {2}{ \color{green} }
      }
  }
  {}{\fail}

ここに画像の説明を入力してください

答え2

以下は必要なことを行いますが、! を使用して列挙内に環境をネストしないでください\autocoloredlist

\autocoloredlistオプションの引数があり、これを使用して必要なモジュロを選択できます (デフォルトでは が使用されます3)。

\documentclass[12pt]{article}
\usepackage{enumitem}
\usepackage{amsmath}
\usepackage{multicol}
\usepackage{xcolor}
\usepackage{xpatch}

\makeatletter
\newif\if@autocoloredlist@group
\newcommand*\autocoloredlist[1][3]
  {%
    \xapptocmd\@item
      {%
        \ifnum\numexpr\value{enumi}-(\value{enumi}/#1)*#1=1
          \begingroup\color{red}\@autocoloredlist@grouptrue
        \fi
        \ignorespaces
      }%
      {}{}%
    \preto\item{\if@autocoloredlist@group\endgroup\fi}{}{}%
    \preto\end{\if@autocoloredlist@group\endgroup\fi}{}{}%
  }
\makeatother

\begin{document}

\begin{multicols}{2}
  \begin{enumerate}[first=\autocoloredlist]
\item $3xy^2-5xy$
\item $-2x^2y^3+14x^2y^2$
\item $-2a^2b-4ab^2+8ab$

\item $2x^2+10xy-3xy-15y^2$
\item $m^2-mn-mn+n^2$
\item $2\alpha^2+2\alpha\beta-3\alpha\beta-3\beta^2$

\item $-2 x^2+13 x y-15 y^2$
\item $-5 m^2-7 m n+6 n^2$
\item $-14 p^2+29 p q+15 q^2$


\item $-2 a^2-5 a b+12 b^2$
\item $8 r^2+14 r s-15 s^2$

\item $a^2-b^2$
\item $x^2-y^2$
\item $x^2-5x+6$
\item $x^3-5x^2+6x$
\item $-10x^2+17x-3$
\item $15x^2+23x-28$

\item $-30x^2-52x+42$
\item $30x^2-52x-42$
\item $-20x^2-52x+63$
\item $20x^2-52x-63$

\item $-30x^2+12x+42$
\item $30x^2+12x-42$
\item $-20x^2+12x+63$
\item $20x^2+12x-63$

\item $30x^2-73x+42$
\item $-30x^2-73x-42$
\item $20x^2-73x+63$
\item $-20x^2-73x-63$

\item $30x^2+71x+42$
\item $-30x^2+71x-42$
\item $20x^2+71x+63$
\item $-20x^2+71x-63$
\end{enumerate}
\end{multicols}


\end{document}

ここに画像の説明を入力してください

関連情報