titlesec 中的选项 newlinetospace 不起作用?

titlesec 中的选项 newlinetospace 不起作用?

这是姆韦显示该问题。

% !TeX program = lualatex
\documentclass[9pt, twoside]{extbook}
\usepackage[utf8]{luainputenc}
\usepackage[T1]{fontenc}
\usepackage{lipsum}

% fancyhdr -----------------------------------------------
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead{}% resets head style
\fancyfoot{}% resets foot style

\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\subsectionmark}[1]{\markright{#1}}
%
\fancyfoot[RE]{\fontsize{8}{9}\selectfont\leftmark\relax}
\fancyfoot[LO]{\fontsize{8}{9}\selectfont\rightmark\relax}
\fancyfoot[LE,RO]{\thepage\relax}
%
\renewcommand{\headrulewidth}{0pt}% head rule
\renewcommand{\footrulewidth}{0.4pt}% foot rule

% titlesec styles -----------------------------------------
\usepackage[compact,    % makes whitespace between \par and titles more compact
            newlinetospace, % replaces every \\ or \\* in titles with a space running heads and TOC entries
            clearempty, % clears page numbers in the empty pages
            ]{titlesec}

% title styles here ---------------------------------

\assignpagestyle{\chapter}{empty}

\begin{document}

\tableofcontents

\chapter{Pythagorean beans and\\Everlasting Dumbbells}
\section{For the King}
    \lipsum[2-5]

\subsection{Quasi-Monte Carlo Casino}
    \lipsum[2-9]

\subsubsection{Commentary}
    \lipsum[3]
\end{document}

(参见换行符\chapter以及目录和页脚中的条目)。


我需要将章节标题分成两行。因此我使用\\\chapter{}

为了修复目录和页脚中的换行符—章节标题已标记在页脚上—我已将其设置newlinetospace为选项titlesec

titlesec 包

newlinetospace(包选项)-2.6 将标题中出现的每个\\\\*“ ”替换为运行标题和目录条目中的空格。这样,您不必重复标题即可删除格式化命令。

我遇到的问题是该选项对我不起作用。我尝试使用 fancyhdr 命令处理页脚序言中的 titlesec 行没有成功,认为 fancyhdr 确实覆盖了 titlesec。还尝试将\fancyfoot[...]{...}命令更改为仅对头部\fancyhead[...]{...}起作用newlinetospace。(?)也没有成功。即使我完全禁用 fancyhdr 包,该选项也不起作用。并且也不会像应该的那样影响 toc 条目。

对于为什么会发生这种情况有什么想法吗?

附言:我在当前开发状态​​下加载其他包,但我不认为它们会引起任何冲突。

加载顺序:

\usepackage[utf8]{luainputenc}
\usepackage[T1]{fontenc}
\usepackage{leading}
    \leading{12pt}
\usepackage{fancyhdr}
\usepackage{indentfirst}
    \setlength{\parindent}{12pt}
    \setlength{\parskip}{7pt}
\usepackage{etoolbox}
    %<spacing between equations commands>
\usepackage{mathtools}% loads amsmath as well
\usepackage{amssymb, tabu}
\usepackage{siunitx}% international units
\usepackage{esvect}% format vectors
\usepackage{mathdots}
\usepackage[no-math]{fontspec}
\usepackage[compact, newlinetospace, clearempty]{titlesec}
\usepackage[math-style=ISO, bold-style=ISO, nabla=upright, partial=upright]{unicode-math}
    \setmathfont{xits-math.otf}

答案1

您还应该使用pagestyles选项titlesec。以下是示例。

\documentclass[9pt, twoside]{extbook}

\usepackage{fontspec}

\usepackage[
  compact,
  newlinetospace,
  clearempty,
  pagestyles,
]{titlesec}

\usepackage{lipsum}

\newpagestyle{main}[\small]{
  \settitlemarks{chapter,section,subsection}
  \sethead{}{}{}
  \setfoot[\ifthesubsection{\subsectiontitle}{\sectiontitle}][][\thepage]
          {\thepage}{}{\chaptertitle}
  \footrule
}
\pagestyle{main}

\assignpagestyle{\chapter}{empty}

\begin{document}

\tableofcontents

\chapter{Pythagorean beans and\\Everlasting Dumbbells}
\section{For the King}
    \lipsum[2-12]

\subsection{Quasi-Monte Carlo Casino}
    \lipsum[2-15]

\subsubsection{Commentary}
    \lipsum[3-6]

\end{document}

luainputenc请注意,除用于旧式文档外,不应使用它。

相关内容