Нет ничего умного в бимере?

Нет ничего умного в бимере?

Я пытаюсь заставить работать презентацию math beamer, и, похоже, это cleverefвызывает проблемы. Нижеприведенный MWE выдает ошибку

Paragraph ended before \@ynthm was complete

В документации cleverefможно найти следующее замечание:

Класс документа beamerпереопределяет \labelкоманду особенно изощренным способом, который нарушает cleverefнеобязательный аргумент этой команды.

Какой необязательный аргумент? Означает ли это, что cleverefи beamerпросто несовместимы? Есть ли способ обойти эту проблему?

МВЭ:

\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}

Связанный контент