Beamerにcleverefがない?

Beamerにcleverefがない?

私は数学のビーマープレゼンテーションを動作させようとしていますが、それがcleveref問題を引き起こしているようです。以下のMWEはエラーを表示します

Paragraph ended before \@ynthm was complete

のドキュメントにはcleveref、次のような記述があります。

ドキュメントbeamerクラスは、そのコマンドに対する のオプション引数を\label壊すような特に悪質な方法でコマンドを再定義します。cleveref

cleverefオプションの引数は何ですか? つまり、 と は単に互換性がないということですかbeamer? この問題を回避する方法はありますか?

MWE:

\documentclass{beamer}

\makeatletter
\let\th@plain\relax
\makeatother

\usepackage{ntheorem}
\usepackage{cleveref}

\theoremstyle{plain}

\newtheorem{MainThm}{Main Theorem}

\crefname{MainThm}{Main Theorem}{Main Theorems}

\mode<presentation>{\usetheme{Frankfurt}}

\begin{document}
\begin{frame}{Test}
    \begin{MainThm}
        blabla
    \end{MainThm}
\end{frame}
\end{document}

答え1

cleveref再定義さ\labelれ、オプションの引数を取るようになりました。cleveref タイプただし、このオプションの引数を使用しない場合は問題ありません。

読み込み順序を切り替えcleverefますntheorem

ここに画像の説明を入力してください

\documentclass{beamer}

\let\Tiny\tiny% http://tex.stackexchange.com/q/58087/5764
\makeatletter
\let\th@plain\relax
\makeatother

\usepackage{cleveref}
\usepackage{ntheorem}

\theoremstyle{plain}
\newtheorem{MainThm}{Main Theorem}
\crefname{MainThm}{Main Theorem}{Main Theorems}

\mode<presentation>{\usetheme{Frankfurt}}

\begin{document}

\begin{frame}{Test}
  See~\cref{thm:mytheorem}.
  \begin{MainThm}\label{thm:mytheorem}
    blabla
  \end{MainThm}
\end{frame}

\end{document}

関連情報