我正在尝试使用回忆录类在 LaTeX 中创建标题。
如果第 3 章名为“非线性动力学”,则偶数页的左上角应标有页码,右上角应标有“第 3 章”。奇数页的左上角应标有“非线性动力学”,右上角应标有页码。
到目前为止,我已尝试创建章节标记作为自定义页面样式的一部分:
\nouppercaseheads
\makeatletter
\makepsmarks{yip}{%
\createmark{chapter}{left}{notitle}{\@chapapp\ }{\ }
\createmark{chapter}{right}{nonumber}{\chaptername\ }{.\ }
}
但我能够实现任何一个适当的左标题或右标题,每个单独的 \createmark 声明都会覆盖前一个声明。
我肯定误解了标记的工作原理——这是我第一次使用这些命令。我认为这个问题之前已经得到解答了,但我找不到任何先例。
答案1
如果您只需要标记这些,这就是我的解决方案。抱歉,我不太了解memoir
。然后我修改了我的答案,它在我的电脑上工作。
\documentclass{memoir}
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter}{#1}}
\begin{document}
\chapter{Nonlinear Dynamics}
\newpage
page 2
\newpage
page 3
\end{document}
答案2
以下是 Parks 回答的补充:
\makeatletter
\renewcommand{\chaptermark}[1]{%
\markboth{
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\@chapapp\ \thechapter%
\fi
\else
#1
\fi
}{#1}
}
\makeatother
现在遵循此版本secnumdepth
,并且如果secnumdepth
说章节不应该编号(例如在前言中),那么我们只需#1
在两个标记上都写上标题()。