
Я использую KOMA-скрипт (например scrartcl
) с полиглоссией и французским языком. Поэтому части нумеруются как "Première partie", "Deuxième partie"..., вместо "Part I", "Part II"...
В английском языке KOMA-Script заменяет "Part I" на просто "I" в оглавлении, поэтому номер части не перекрывает название части. Но во французском языке это почему-то не так, и оглавление выглядит ужасно. Например,
\documentclass{scrartcl}
\usepackage{polyglossia}
\setmainlanguage{french}
\begin{document}
\tableofcontents
\part{AAAAAA}
\part{BBBBBB}
\end{document}
дает такой вывод:
Как это исправить? Я пытался внести изменения, \thepart
но это, похоже, ничего не меняет; я даже пытался вставить туда мусор (неопределенные команды), но документ все равно нормально скомпилировался, так что он, по-видимому, даже не используется... Я также знаю, что есть такая toc=flat
возможность, но, на мой взгляд, это выглядит очень плохо.
Я знаю оэтот вопрос и ответ, но он имеет дело с memoir
классом и здесь не применим. Насколько я могу судить, это, скорее, ошибка в KOMA-Script, но поскольку я не умею читать по-немецки, я понятия не имею, куда на их сайте можно зайти, чтобы сообщить об этом, поэтому я бы согласился на быстрое и грязное исправление.
решение1
KOMA-script поддерживает автоматическое изменение ширины, необходимой для чисел в TOC. Вам понадобится не менее трех запусков LaTeX для получения правильных результатов (один для построения файла .toc
, один для измерения самой широкой записи, один для получения результатов).
Ниже приведены необходимые изменения для part
достижения этой цели.
\documentclass{scrartcl}
\usepackage{polyglossia}
\setmainlanguage{french}
\RedeclareSectionCommand[tocdynnumwidth=true]{part}
\begin{document}
\tableofcontents
\part{AAAAAA}
\part{BBBBBB}
\end{document}