本の編集者の指示に従って、「PLA 1」などの文字列でセクションが識別される本をタイプセットする必要があります (出版社はこれらの文字列を「cite-keys」と呼びます)。
特定の本のページにいくつかのセクションがある場合があり、それはいくつかの引用キーを意味します。
- これらの引用キーは、セクションと同じ行の外側の余白に印刷する必要があります。
- また、左ページの最初の現在の引用キーは、偶数ページのランニング ヘッダーに印刷する必要があります。
- 右ページに表示される最後の現在の引用キーは、奇数ページのランニング ヘッダーにある必要があります。
これらの特殊な文字列をランニングヘッダーと余白に印刷するにはどうすればよいでしょうか?
を使うことを考えました\label{SCA 1}
が、\labels
実際にはカウンターであることに気付きました。
\marks
(パッケージで)使用しようとしましたemarks
が、わかりません。
進行中の MWE:
\documentclass{scrbook}
\usepackage{lipsum}
\documentclass{scrbook}
\usepackage{lipsum}
\usepackage{scrpage2}
\pagestyle{scrheadings}
\ihead[]{}
\chead[]{\pagemark}
\ohead[\headmark]{\headmark}
\begin{document}
\section*{Section title}\label{PLA 1}
\lipsum[1]
Label string should be here \nameref{PLA 1}
\end{document}
Koma クラスを使用する必要があります。fancyhdr
または を 使用している人をどこかで見ましたがtitlesec
、Koma のマニュアルでは、 または のどちらも使用しないことを勧めています (たとえば、titlesec
パッケージはオプションの headers=optiontotoc と干渉します)。
いくつかの質問に対する回答を見ましたhttp://tex.stackexchange.comしかし、どれも私が始めるのに十分な指針を持っていません。
答え1
パッケージを使用した提案ですscrlayer-scrpage
\documentclass{scrbook}
\usepackage{lipsum}% dummy text
\usepackage{needspace}
\usepackage[manualmark]{scrlayer-scrpage}
\clearpairofpagestyles
%%% alternatively:
%\usepackage[manualmark]{scrpage2}
%\clearscrheadfoot
%\pagestyle{scrheadings}
\chead{\pagemark}
\lehead*{\rightmark}\rohead*{\leftmark}
\renewcommand\chaptermark[1]{\markboth{}{}}
\newcommand\myaddsec[2]{%
\needspace{3\baselineskip}%
\addsec[#1]{#1\markboth{#2}{#2}\marginpar[\raggedright#2]{\raggedleft#2}}%
}
\begin{document}
\tableofcontents
\chapter{Chapter Title}
\myaddsec{Section title}{PLA1}
\lipsum[1]
\myaddsec{Section title}{PLA2}
\lipsum[1-3]
\myaddsec{Section title}{PLA3}
\lipsum[1]
\myaddsec{Section title}{PLA4}
\lipsum[1-5]
\myaddsec{Section title}{PLA5}
\lipsum[1]
\myaddsec{Section title}{PLA6}
\lipsum[1-2]
Label string should be here
\end{document}
結果