일방적인 회고록이 있는 헤더의 동일한 표시

일방적인 회고록이 있는 헤더의 동일한 표시

일방적인 문서로 회고록을 사용하고 있는데 머리글에 장과 절의 번호와 이름을 모두 넣고 싶었습니다.

나는 이것을 달성하기 위해 이것을 사용하고 있습니다 (from회고록을 사용하여 헤더에 장 이름과 섹션 이름을 모두 포함)

\pagestyle{ruled}
\makeoddhead{ruled}{\sffamily\leftmark}{}{\sffamily\rightmark}

이것은 대부분의 경우 훌륭하게 작동하지만 둘 다 2페이지 길이의 ToC와 참고문헌의 경우 헤더에 동일한 레이블이 두 번 있어서 끔찍해 보입니다.

\rightmark와 다른 경우에만 을 표시하고 싶습니다 \leftmark. 아니면 어떻게든 그 두 가지의 라벨을 변경하세요. 예를 들어, 소개에서는 이고 \unnumberedchapter가 없습니다 \section. 나는 변경을 시도했지만 \bibsection도움 \unnumberedchapter이되지 않았습니다.

감사해요.

답변1

어떤 질문이든 항상 egreg에서 영감을 받은 답변이 있다고 생각하기 시작했습니다.두 개의 완전히 확장된 문자열이 동일한지 테스트하는 경우):

\documentclass[oneside]{memoir}

\usepackage{pdftexcmds} % https://tex.stackexchange.com/questions/59565/on-testing-two-fully-expanded-character-strings-for-equality
\makeatletter
\newcommand*{\test}[2]{%
  \ifnum\pdf@strcmp{#1}{#2}=\z@ \relax \else #2 \fi
}
\makeatother

\pagestyle{ruled}
\makeoddhead{ruled}{\sffamily\leftmark}{}{\sffamily\test{\leftmark}{\rightmark}}

\usepackage{lipsum}

\newcommand{\makechapter}{
\chapter{foo}
\section{foobar}
\lipsum[1-12]
}

\begin{document}

\tableofcontents

\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter
\makechapter

\end{document}

여기에 이미지 설명을 입력하세요

여기에 이미지 설명을 입력하세요

관련 정보