私は数学のビーマープレゼンテーションを動作させようとしていますが、それが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}