[Tex/LaTex] How to rename theorem (or lemma) in Beamer to another language

beamernamingtheorems

I'm Malay user. I want to rename the theorem tag in Beamer. Does anyone know how to do it? When the document class is article or book, I can simply modify the preamble as follows:

\newtheorem{theorem}{Teorem}
\newtheorem{lemma}[theorem]{Lema}
\newtheorem{corollary}[theorem]{Korolari}
\newenvironment{proof}[1][Bukti]{\noindent\textbf{#1.} }{\ \rule{0.5em}{0.5em}}

However, the above things does not work in Beamer. So, does anyone know how to do it?

Best Answer

beamer uses translator to translate environment names and some other words. It uses some .dict files which you can translate to your language and start to use. Look at manual's section Translating strings. Here you have a little example.

\documentclass{beamer}

\uselanguage{spanish}
\languagepath{spanish}
\deftranslation[to=spanish]{Theorem}{Teorema}
\deftranslation[to=spanish]{theorem}{teorema}

\begin{document}
\begin{frame}
\begin{theorem}
I will translate \structure{\translate[to=spanish]{theorem}} but not theorem
\end{theorem}
\end{frame}
\end{document}

enter image description here

Another option would be to use \begin{block}{Korolari} ... \end{block}.

Update: A better and more detailed explanation can be found in Beamer newtheorem translation