回忆录标题中的 MakeUpperCase 问题

回忆录标题中的 MakeUpperCase 问题

我不得不编造一个伪小型大写命令来处理超出常规的字符(例如 h-breve),到目前为止,无论是在正文还是标题中,都没有遇到任何问题。

然而,就在今天,我发现它在memoir标题中的使用非常不稳定。例如,在下面的代码序列中,

\chapter{Text Editions} % follows \appendix
<snip>
\subsubsection{The interpretation of \lgm{an} as \smn{dingir}}\label{B.3.4.1}
\subsubsection{The interpretation of similar Sumerian elements}\label{B.3.4.4}
\subsection{The name element \lgm{an-na}}\label{B.3.5}

...

使用它的命令\lgm{}(有关扩展,请参阅下面的 MWE)第一次运行良好,但第二次出现错误(取决于其他变化,hyperref是否出现错误):

在此处输入图片描述 更改文件的各个部分(例如删除更改\settocdepth{}或其他可能影响标题编号的命令)可能会导致错误消失。

下面是一个说明该问题的 MWE,其中有两种类型的变化隐藏了该问题。

% !TEX TS-program = xelatexmk
\documentclass{memoir}

% Removing the next line avoids the error
\settocdepth{subsection}

\usepackage{libertine}

\usepackage{polyglossia}
    \setdefaultlanguage[variant=british]{english}
    \setotherlanguage[]{french}
    \setotherlanguage[spelling=old]{german}
\usepackage[%
    xetex,bookmarks,
    colorlinks=true,linkcolor=blue,citecolor=blue,filecolor=black,urlcolor=blue,breaklinks=true,
    pdftitle={Karljürgen G. Feuerherm---Abum--waqar and His Circle},
    pdfauthor={Karljürgen G. Feuerherm},
    unicode
    ]{hyperref}

\newcommand{\fakesc}[1]{{\addfontfeatures{FakeStretch=1.1092,FakeBold=1.0,Scale=0.71}\MakeUppercase{#1}}}
\newcommand{\lgm}[1]{{\sffamily\fakesc{#1}}}
\newcommand{\smn}[1]{{\sffamily{\addfontfeature{LetterSpace=10.0}#1}}}

\begin{document}
\tableofcontents

\chapter{Text Editions}
% Removing the next group of lines, or changing their level, avoids the error
\section{Preliminary remarks}\label{B.1}
\section{Principles of transliteration and transcription}\label{B.2}
\subsection{Typographic representation of cuneiform signs}\label{B.2.1}
\subsection{Consonantal ‘i’}\label{B.2.2}
\subsection{\smn{sa₁₀} and \smn{šám}}\label{B.2.3}
\subsection{Superscripted sigla}\label{B.2.4}
\subsection{Damage mark-up}\label{B.2.5}
\section{Principles of translation}\label{B.3}
\subsection{General}\label{B.3.1}
\subsection{Names with exclusively Sumerian elements}\label{B.3.2}
\subsection{Names with exclusively Akkadian elements}\label{B.3.3}
\subsection{Names with both Sumerian and Akkadian elements}\label{B.3.4}
\subsubsection{The interpretation of \lgm{an} as \smn{dingir}}\label{B.3.4.1}
\subsubsection{The interpretation of similar Sumerian elements}\label{B.3.4.4}
\subsection{The name element \lgm{an-na}}\label{B.3.5}

\end{document}

我依稀记得几年前可能经历过类似的事情,但我记不清了。非常感谢您的帮助。

相关内容