Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Redefining latex macro using same name

Currently I use a \mytodo macro, which just calls \todo[inline]:

\newcommand{\pbtodo}[1]{\todo[inline]{#1}}

But I'd like to call this macro \todo. The simplest solution:

\renewcommand{\todo}[1][]{\todo{#1}} 

unsurprisingly resulted in what I presume to be a stack overflow:

! TeX capacity exceeded, sorry [input stack size=5000].

Does anyone know a way to use the old \todo macro in a redefinition?

like image 867
Paul Biggar Avatar asked Aug 07 '09 14:08

Paul Biggar


1 Answers

I often see advice on the web along the lines of:

\let\Oldtodo\todo
\renewcommand{\todo}[1]{\Oldtodo[inline]{#1}}

for this situation. I believe that \let is a plain TeX feature.

like image 133
dmckee --- ex-moderator kitten Avatar answered Oct 24 '22 08:10

dmckee --- ex-moderator kitten