有一个很好的方法可以解决titlesec
/nameref
冲突这里但我发现它不适用于回忆录课程。以下是我为该book
课程编写的 MWE。
\documentclass{book}
% \documentclass{memoir}
\usepackage{titlesec}
\usepackage{hyperref}
\makeatletter
\newcommand\setcurrentname[1]{\def\@currentlabelname{#1}}
\newcommand{\labelledsection}[2]{\section*{#1}\setcurrentname{#1}\label{#2}}
\makeatother
\begin{document}
\chapter*{Unnumbered Chapter}\setcurrentname{Unnumbered Chapter}\label{chap:unnumbered}
\labelledsection{Unnumbered Section}{sec:unnumbered}
Check \nameref{sec:numbered}.
\chapter{Numbered Chapter} \label{chap:numbered}
\section{Numbered Section} \label{sec:numbered}
Check \nameref{sec:unnumbered}.
\end{document}
MWE 生成正确引用该部分的文本:
但如果我切换到该memoir
课程,它会引用该章节吗?: