Teile funktionieren nicht bei der Verwendung mehrerer Sprachen mit Polyglossie

Teile funktionieren nicht bei der Verwendung mehrerer Sprachen mit Polyglossie

Ich arbeite an einem bookDokument mit xelatex. Das Dokument ist in unterteilt partsund ich muss gelegentlich zwischen zwei Sprachen wechseln.

Ich habe festgestellt, dass die partNummer nicht mehr angezeigt wird, wenn mein Dokument mehr als eine Sprache enthält:

\documentclass{book}

\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{french}

\begin{document}
  \selectlanguage{french}
  \selectlanguage{english}

  \part{My Part}
\end{document}

Wird darin enden, dass:

Teilenummer wird nicht angezeigt

Wenn ich nur eine Sprache verwende, habe ich keine Probleme:

\documentclass{book}

\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{french}

\begin{document}
  % \selectlanguage{french}
  \selectlanguage{english}

  \part{My Part}
\end{document}

Teilenummer anzeigen

Kapitel und Abschnitte funktionieren in jedem Fall gut.

Antwort1

Die frenchSprache wird neu definiert \thepart, sodass nichts ausgegeben wird, da „Première partie“ gewünscht wird. Wenn Sie also auf Französisch umschalten, wird der Befehl neu definiert, aber wenn Sie auf Englisch umschalten, wird er nicht zurückdefiniert.

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

Speichern Sie den ursprünglichen \thepartBefehl und stellen Sie ihn wieder her, wenn die Sprache von Französisch auf eine andere umgeschaltet wird.

verwandte Informationen