使用 `\newpairofpagestyles` 的 Komascript 标题问题?

使用 `\newpairofpagestyles` 的 Komascript 标题问题?

我有以下代码:

\documentclass{scrreprt}

\usepackage[automark]{scrlayer-scrpage}
\clearscrheadfoot                                       
%\chead*{\mytitle}
\lehead*{\headmark}                                     
\rohead*{\headmark}                 
\cfoot*{\pagemark}
\pagestyle{scrheadings}

\newpairofpagestyles{myFMstyle}{%
    \clearscrheadfoot%
    \rhead*{\headmark}
    \cfoot*{\pagemark}  
}%
%\renewcommand*{\chapterpagestyle}{myFMstyle} <- Runs fine when this is commented out

\usepackage{nomencl}
\makenomenclature

\begin{document}
\printnomenclature

\nomenclature{c}{speed}
test
\end{document}

假定输出:

在此处输入图片描述

注释掉该\renewcommand行后,程序运行正常。但是当我取消注释并尝试运行它时,出现以下错误:

未定义控制序列。\end{document}

我到底做错了什么?

编辑:错误不是由 -command 的使用引起的,而是由-commandnomencl的使用引起的。\newpairofpagestyles\rhead

答案1

您不能在 中使用\rheadand 。相反,您应该在相等页面上使用 for right head,在奇数页面上使用 for right head。或者,您也可以在外侧和内侧使用and 。这样您的 MWE 应该如下所示:\lhead\newpairofpagestyles\rehead\rohead\ohead\ihead

\documentclass{scrreprt}

\usepackage[automark]{scrlayer-scrpage}
\clearscrheadfoot                                       
%\chead*{\mytitle}
\lehead*{\headmark}% you might use \ohead*{\headmark} instead of \lehead*{}...\rohead*{}
\rohead*{\headmark}% you might use \ohead*{\headmark} instead of \lehead*{}...\rohead*{}
\cfoot*{\pagemark}
\pagestyle{scrheadings}

\newpairofpagestyles{myFMstyle}{%
    \clearscrheadfoot%
    \ohead*{\headmark}% here you should use \ohead{}, \ihead{}, \rohead{} or \rehead{} instead of \rhead{}
    \cfoot*{\pagemark}  
}%
\renewcommand*{\chapterpagestyle}{myFMstyle}

\begin{document}
\chapter{test}

test
\end{document}

在这个例子中,的使用nomencl不应该改变任何东西。

此外,如果您的myFMstyle符合您的scrheadings风格(如本例所示),为什么不直接使用\renewcommand{\chapterpagestyle}{scrheadings}

编辑:请注意,该命令\printnomenclature不会设置\headmark。因此,您应该\markboth{Nomenclature}{Nomenclature}在调用之后调用\printnomenclature

相关内容