3

I want to insert in the end of a book, written in arabic using the polyglossia package, a chapter written in english. I try to do this, using the \selectlanguage{english} command, provided by this package, but its compilation with xelatex gives the following error:

! Undefined control sequence. <argument> \MakeUppercase {\ifnum \c@secnumdepth >\m@ne \if@mainmatter \@cha...

How can I do my purpose?

I give the .tex file , producing this error message:

\documentclass[12pt]{book}

\usepackage{polyglossia}

\setdefaultlanguage{arabic}
\setotherlanguage{english}

\setmainfont{Times New Roman}   %% Choose any font
\newfontfamily\englishfont{Times New Roman}

\begin{document}

\selectlanguage{english}
\chapter{An english chapter}

\end{document}

1 Answer 1

4

That's obviously a bug in gloss-arabic.ldf. It "reverts" \MakeUppercase to an undefined command.

\documentclass[12pt]{book}
\makeatletter 
 \let\orig@MakeUppercase\MakeUppercase
\makeatother 
\usepackage{polyglossia}

\setdefaultlanguage{arabic}
\setotherlanguage{english}

\setmainfont{Times New Roman}   %% Choose any font
\newfontfamily\englishfont{Times New Roman}

\begin{document}
\selectlanguage{english}
\chapter{An english chapter}

\end{document}
3

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.