
Recibí este error al compilar la receta "pdflatex->bibtex->pdflatex x2" en el código de Visual Studio de Windows10.
LaTeX Error: Command \todo already defined.
Or name \end... illegal, see p.192 of the manual.
El código es el mismo que compilé en el código de Visual Studio de ubuntu18. Me pregunto cómo sobrescribir el comando "\todo" que no sé dónde más se definió. (¡Nunca fue un problema en ubuntu!)
PD. Parte de mi código fuente:
%% -------------------------------
%% | My packages /commands |
%% -------------------------------
% track changes
%\usepackage{changes} % highlight changes
\usepackage[final]{changes} % don't highlight changes
% tables
\usepackage{array,multirow,graphicx}
% pseudocode
\usepackage[ruled,vlined]{algorithm2e}
% for forcing positions of tables, figures, ...
\usepackage{float}
% units
\usepackage{siunitx}
\usepackage{dcolumn}
%% ---------------------------------
%% | ToDo Marker - only for draft! |
%% ---------------------------------
% Remove this section for final version!
\setlength{\marginparwidth}{20mm}
\newcommand{\todo}[1]
{{\textbf{\textcolor{red}{(\margmajortodo{}#1)}}}{}}
\newcommand{\margmajortodo}
{\marginpar{\textbf{\textcolor{red}{ToDo}}}{}}
ACTUALIZACIÓN: encontré un método de omisión en Windows cambiando \newcommand{\todo}[1]
a \renewcommand{\todo}[1]
. Sin embargo, el código modificado da el error "\todo undefinido" en mi sistema Ubuntu.
Indica que el ambiente difiere, aunque los códigos son los mismos. Lo que necesito hacer es averiguar qué paquete se agrega/actualiza de alguna manera en Windows.
Respuesta1
Es del changes
paquete (como puede ver agregando \show\todo
en varios puntos y viendo dónde queda definido). Si no necesita el comando de ese paquete, simplemente utilícelo \renewcommand
en su definición para anular la definición existente.
Respuesta2
¿Es esta la versión final? Si es así, comenta al menos las 2 líneas que definen tu comando:
%\newcommand{\todo}[1]
%{{\textbf{\textcolor{red}{(\margmajortodo{}#1)}}}{}}