mdframed+pdflatex の Hyperref の問題

mdframed+pdflatex の Hyperref の問題

mdframed および pdflatex で hyperref を使用すると問題が発生します。以下は、次のエラーが発生する MWE です。

! Missing \endcsname inserted.
<to be read again>
                   \bx@A
l.29    \end{defini}

ハイパーリファレンスを使用しない場合は、問題は発生しません。ただし、100 ページを超えるドキュメントの場合、ハイパーリンクされた目次は基本的に必須です。MWE は次のとおりです。

\documentclass[11pt]{memoir}

\usepackage{lipsum}

\usepackage{mdframed}
\RequirePackage{ltxkeys}   %%% Different error if not there
\usepackage{xcolor}

\mdfdefinestyle{DefinitionStyle}{innertopmargin=5pt,linewidth=4pt,linecolor=red,backgroundcolor=blue!3}
\newcounter{definitioncount}[section]

\newenvironment{defini}{\refstepcounter{definitioncount} \begin{mdframed}[style=DefinitionStyle]%
\raisebox{4pt}[0pt][-5pt]{\hspace{-14pt}\fcolorbox{red}{red}%
{\bfseries \large\textcolor{white}{$\quad$Definition \thedefinitioncount $\quad$}}}\\}%
{\end{mdframed}}

\usepackage{hyperref}

\begin{document}

\chapter{Introduction}
\lipsum[2]
\lipsum[1]

\begin{defini}
\lipsum[1]
\end{defini}

\end{document}

答え1

これはおそらく 2012/08/03 v6.82y で導入されたバグです:

* 6.82y
* Unique destination names: Lookup for parent counters added
  for counters that are defined before hyperref is loaded and
  \theH<counter> is not provided.

2012/08/11 v6.82z で修正されました:

* 6.82z
* Fix in parent counter lookup, meaning of \@elt is restored after usage.

関連情報