
Estoy trabajando en un book
documento con xelatex
. El documento está dividido en parts
y ocasionalmente tengo la necesidad de cambiar entre dos idiomas.
Descubrí que cuando mi documento contiene más de un idioma, el part
número ya no se muestra:
\documentclass{book}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{french}
\begin{document}
\selectlanguage{french}
\selectlanguage{english}
\part{My Part}
\end{document}
Resultará en:
Si uso solo un idioma, no tengo ningún problema:
\documentclass{book}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{french}
\begin{document}
% \selectlanguage{french}
\selectlanguage{english}
\part{My Part}
\end{document}
Los capítulos y secciones funcionan bien en cualquier caso.
Respuesta1
El french
lenguaje se redefine \thepart
para no emitir nada, porque quiere “Première partie”. Entonces, si cambia al francés, el comando se redefine, pero cambiar al inglés no lo vuelve a definir.
\documentclass{book}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{french}
\makeatletter
\let\latex@thepart\thepart
\appto\noextras@french{\let\thepart\latex@thepart}
\makeatother
\begin{document}
\selectlanguage{french}
\selectlanguage{english}
\part{My Part}
\end{document}
Guarde el comando original \thepart
y restáurelo cuando el idioma cambie del francés a otro.