Hyperref мешает настраиваемому макросу

Aug 21 2020

Рассмотрим следующий MWE:

\documentclass{article}

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

\begin{document}

$\d x$

$\text{d} x$

\end{document}

Если hyperrefзагружается после переопределения \d, то первое выражение отображается как вертикальное xс точкой внизу, как если бы макрос не был переопределен. Кроме того, я получаю предупреждение

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

С другой стороны, если я не загружаю hyperrefили не загружаю его до переопределения \d, все работает, как ожидалось.

Почему так происходит?

Ответы

2 Noname Aug 21 2020 at 19:54

Я не специалист и не знаю полностью причину ошибки. Вам не разрешено использовать (и, вероятно, переопределять) следующие после hyperrefpackage:

  • (обратная косая черта + `)
  • \^
  • \~
  • \"
  • \r
  • \v
  • \.
  • \c
  • \=
  • \b
  • \d

и ошибка из-за этого, возможно, как объяснено в комментариях и другом ответе, лучше использовать другую команду или diffcoefвместо этого вы можете использовать пакет. См., Например, здесь и этот комментарий .