Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

For the background to this, see my previous question

I've been trying to make changes in my LaTeX document so that math displays in black and text in red. Thanks to Stefan Kottwitz and Torbjørn T. I've been able to go some way towards doing this. At the moment I have

\usepackage{amsmath}
\usepackage{color}
\usepackage{everysel}
\EverySelectfont{\color{red}}
\everymath{\color{black}}

\let\originaldisplaystyle\displaystyle
\renewcommand\displaystyle{\color{black}\originaldisplaystyle}

\let\oldeq\equation
\def\equation{\oldeq\color{black}}

This changes the text color to red, and then changes the colors for inline math, align environment and equation environment to black. This all works fine. However, when I try to make similar changes to the equation* environment:

\let\oldeq*\equation*
\def\equation*{\oldeq*\color{black}}

I get errors. My guess is that the compiler is reading \equation* as \equation followed by a text asterisk: if I type

\newenvironment{oldeq*}{\equation*}{\endequation*}
\renewenvironment{equation*}{\begin{oldeq*}}{\end{oldeq*}}

then the document compiles, but the \equation* environment now renders as the \equation environment (i.e. with numbering) but with an asterisk placed before the equation. This is the only thing that I have managed to get to compile so far. What am I doing wrong?

share|improve this question
add comment

1 Answer 1

up vote 1 down vote accepted

Here's a redefinition based on the original amsmath definition together with the color command:

\makeatletter
\renewenvironment{equation*}{%
  \mathdisplay@push
  \st@rredtrue \global\@eqnswfalse
  \color{black}
  \mathdisplay{equation*}%
}{%
  \endmathdisplay{equation*}%
  \mathdisplay@pop
  \ignorespacesafterend
}
\makeatother

A simpler solution, which also doesn't need to know amsmath's internals, is possible with the etoolbox package:

\usepackage{etoolbox}
\AtBeginEnvironment{equation*}{\color{black}}
share|improve this answer
    
Thanks SO much: everything's running really well now. I had tried copying in the amsmath definition, but I missed out the \makeatletter and \makeatother so it didn't work. –  Donkey_2009 Dec 8 '11 at 12:22
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.