Algorithmen: Ändern Sie den Stil einzelner Zeilennummern

Algorithmen: Ändern Sie den Stil einzelner Zeilennummern

Ich möchte den Stil einzelner Zeilen in einem Algorithmus ändern. Beispielsweise möchte ich wichtige Zeilennummern mit einem Rahmen umgeben, einfärben oder anderweitig hervorheben.

Es ist möglich, den Stil aller Zeilennummern mit algorithm2e zu ändern, wie hier (und im Handbuch) beschrieben:Algorithm2e Zeilennummern ändern

Gibt es eine Möglichkeit, den Stil einer beliebigen Teilmenge der Zeilen zu ändern?

Antwort1

Aufbauend auf dieser Antwortdiese AntwortDies kann durch Aktualisieren des Befehls wie folgt erreicht werden \alglinenumber. Dies ist noch keine optimale Lösung, wie die letzte Zeile zeigt.

\documentclass{article}
\usepackage{algpseudocode}
\usepackage{xcolor}

\newcommand{\StateRed}[1]{\algrenewcommand{\alglinenumber}[1]{\footnotesize\textcolor{red}{##1}:}\State #1}
\newcommand{\StateBlack}[1]{\algrenewcommand{\alglinenumber}[1]{\footnotesize##1:}\State #1}

\begin{document}
\begin{algorithmic}[1]
  \StateRed $x = 1$
  \StateBlack $y = 2$
  \StateRed $ z = 3$
  \State you probably didn't want this to be red!
\end{algorithmic}
\end{document}

Bildbeschreibung hier eingeben

Dies funktioniert auch nicht perfekt, wenn den Zeilennummern Anmerkungen mit einer Breite ungleich Null hinzugefügt werden, da der Abstand beim Wechsel von Zeile 9 zu 10 (und vermutlich von 99 zu 100, obwohl ich das nicht überprüft habe) beeinflusst wird.

verwandte Informationen