我正在尝试使用 babel (匈牙利语) 在文档中使用 minitoc 包。这是一个最小示例:
\documentclass{report}
%\usepackage[hungarian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{minitoc}
\begin{document}
\mtcselectlanguage{hungarian}
\dominitoc
\tableofcontents
\chapter{Introduction}
\minitoc
\section{Sub-introduction 1}
\section{Sub-introduction 2}
\chapter{Conclusion}
\minitoc
\end{document}
这完美地工作了,但是如果我取消注释\usepackage[hungarian]{babel}
,minitocs 就会消失,并且没有任何错误消息。
(注:\mtcselectlanguage{hungarian}
对最终结果没有影响。)
这完全是神秘的,因为甚至没有警告。我不知道从哪里开始调试。如果有人能帮助我,我将不胜感激。
编辑:我已经用 测试过了\usepackage[english]{babel}
,并且成功了,所以看起来问题出在匈牙利 babel 选项上。
编辑2:按照 @schtandard 的建议进行设置classmod=unchanged
,导致章节/部分/等标题格式不正确(如预期)。我可以使用 titlesec 和 tocloft 包修复此问题:
\usepackage{titlesec}
\usepackage{tocloft}
\renewcommand\cftchapaftersnum{.}
\renewcommand\cftsecaftersnum{.}
\titleformat{\chapter}[display]
{\normalfont\huge\bfseries}{\thechapter.\ \chaptertitlename}{20pt}{\Huge}
\titleformat{\section}
{\normalfont\Large\bfseries}{\thesection.}{1em}{}
\titleformat{\subsection}
{\normalfont\large\bfseries}{\thesubsection.}{1em}{}
这恢复了正确的匈牙利格式。
答案1
问题似乎是classmod
和extra
选项的组合。(我还没能确定确切的交互。也许等我有时间了再说。)添加
\PassOptionsToPackage{classmod=unchanged}{hungarian.ldf}
或者
\PassOptionsToPackage{extras=no}{hungarian.ldf}
之前\usepackage[hungarian]{babel}
将导致minitoc
显示 s。如果有疑问,我会选择classmod
。