Tornar o sinal de igualdade automaticamente azul
Eu sei que podemos redefinir os sinais de desigualdade \lesimplesmente fazendo \let\oldle\lee \def\le{\mathrel{...}}. Mas não tenho ideia de como redefinir o sinal de igualdade =. Portanto, se eu quiser tornar alguns símbolos azuis automaticamente, posso fazer isso para sinais de desigualdade, mas não para sinais de igualdade. O que posso fazer para obter sinais de igualdade azuis automaticamente no modo matemático? Ou seja, ainda quero apenas digitar =no modo matemático e ele ficará automaticamente azul. Não me importo com códigos complicados, desde que só precise ser inserido uma vez.
Respostas
Você precisa tornar a =matemática ativa.
\documentclass{article}
\usepackage{amsmath}
\usepackage{xcolor}
% set up = to be math active
\begingroup\lccode`~=`=\lowercase{\endgroup\def~}{\mathrel{\textcolor{blue}{\standardequal}}}
\AtBeginDocument{%
\mathchardef\standardequal=\mathcode`= % save the standard =
\mathcode`=="8000 % make = math active
}
\begin{document}
\begin{gather*}
a=b \\
a\standardequal b % for comparison
\end{gather*}
\end{document}
Com LuaLaTeX, você pode fazer isso. Veja o seguinte exemplo. (Agradecimentos especiais à resposta de @Mico .)
%!TeX Program = lualatex
\documentclass{article}
\usepackage{xcolor}
\usepackage{luacode}
\begin{luacode}
function myreplace ( s )
s = unicode.utf8.gsub ( s , '=', '\\textcolor{blue}{=}' )
return s
end
\end{luacode}
\begin{document}
\directlua{luatexbase.add_to_callback("process_input_buffer",
myreplace, "myreplace")}
=
\end{document}