Hyperref interférant avec une macro personnalisée

Aug 21 2020

Considérez le MWE suivant:

\documentclass{article}

\usepackage{amsmath}
\renewcommand{\d}{\text{d}}
\usepackage{hyperref}

\begin{document}

$\d x$

$\text{d} x$

\end{document}

Si hyperrefest chargé après la redéfinition de \d, alors la première expression est rendue sous la forme d'un montant xavec un point en dessous, comme si la macro n'avait pas été redéfinie. De plus, je reçois l'avertissement

LaTeX Warning: Command \d invalid in math mode on input line 12.

Par contre, si je ne le charge pas hyperrefou ne le charge pas avant la redéfinition de \d, tout fonctionne comme prévu.

Pourquoi cela arrive-t-il?

Réponses

2 Noname Aug 21 2020 at 19:54

Je ne suis pas un expert et je ne connais pas complètement la raison de l'erreur. Vous n'êtes pas autorisé à utiliser (et probablement à redéfinir) les éléments suivants après le hyperrefpackage:

  • (barre oblique inverse + `)
  • \^
  • \~
  • \"
  • \r
  • \v
  • \.
  • \c
  • \=
  • \b
  • \d

et l'erreur est peut-être à cause de cela, comme expliqué dans les commentaires et autres réponses, il est préférable d'utiliser une autre commande ou vous pouvez utiliser diffcoefpackage à la place. Voir par exemple ici et ce commentaire .