TeX: Fix infinite recursion in citation coloring macros
% is redefined both as this macro is loading, and whenever \hypersetup is called
% in the middle of a TeX file (which redefines \@citecolor by default).
\def\scholar@wrap@citecolor{%
+% Only define inner citecolor macro once. Because this \scholar@wrap@citecolor setup
+% macro can (and will) be called multiple times, defining the inner citecolor command
+% to be the citecolor command that wraps it would cause a recursive loop.
+\scholarifundefined{scholar@inner@citecolor}{%
\let\scholar@inner@citecolor\@citecolor
+}%
\def\@citecolor{%
\scholarifdefinedelse{scholarcolor@\scholar@current@citation@key}{%
scholarcolor@\scholar@current@citation@key%
