Beamer newtheorem translation

As it has been already explained, Beamer uses translator (its particular babel system). If the dictionary exists, you can active the system introducing the language name in beamer options: \documentclass[spanish]{beamer}. This way spanish is applied to beamer-translator system and babel. If spanish is passed only as babel option, you need to apply it for beamer with \uselanguage{spanish}\languagepath{spanish}.

So with an example like:

\documentclass[spanish]{beamer}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}

\newtheorem{proposition}[theorem]{Proposition}

\begin{document}
\begin{frame}
  \begin{proposition}
    Foo
  \end{proposition}

  \begin{theorem}
   Foo2
   \end{theorem}
\end{frame}
\end{document} 

you'll get

enter image description here

As you can see, theorem is translated but proposition is not. Why? Because theorem, corollary, fact, lemma, problem, solution, definition and example environments are already provided by beamer but not proposition. And how are all these environments declared? Take a look at beamerbasetheorems.sty

\newtheorem{corollary}[theorem]{\translate{Corollary}}
\newtheorem{fact}[theorem]{\translate{Fact}}
\newtheorem{lemma}[theorem]{\translate{Lemma}}
\newtheorem{problem}[theorem]{\translate{Problem}}
\newtheorem{solution}[theorem]{\translate{Solution}}

All of them make explicit use of translate command as cfr suggested in his answer. You can do the same:

\newtheorem{proposition}[theorem]{\translate{Proposition}}

There's no need for \deftranslation because propositionis already defined in translatordictionarys.


The following likely won't work in the real world so you'll have to try it and see. However, it does at least produce the right result for the MWE.

\documentclass{beamer}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\uselanguage{Spanish}
\languagepath{Spanish}

\newtheorem{proposition}[theorem]{\translate{Proposition}}

\begin{document}
\begin{frame}
  \begin{proposition}
    Foo
  \end{proposition}
\end{frame}
\end{document}

A Spanish proposition