図表一覧に章間の区切りがない

図表一覧に章間の区切りがない

私は tufte-book を使用して、(9 つの)個別の章と付録を含めています。付録は、(星印付きの)\chapter*{Appendix} としてタイプセットしています(章として番号を付けたくないため)。

以下は MWE ではありませんが、私のドキュメントのコア構造を示しています。

\documentclass[twoside,symmetric]{tufte-book}
\begin{document}
.
.
.

\include{PaPCh1}  
.
.
.
\include{PaPCh9} 
\include{PaPApp}
.
.
.
\listoffigures
.
.
.

付録のソース PaPApp.tex はここから始まり、

\chapter*{Appendix} \addcontentsline{toc}{chapter}{Appendix} 

\renewcommand{\thesection}{\Alph{section}}

\renewcommand{\thesubsection}{\thesection.\arabic{subsection}}

\renewcommand{\thefigure}{A\arabic{figure}}

タイプセットされた文書の大部分は問題なく、図は第 1 章では 1.1、1.2、第 2 章では 2.1、2.2 など、付録では A.1、A.2 などと適切に番号が付けられています。

\listoffiguresの組版では、各章の図表リストの間、つまり第1章と第2章の間には(適切に)スペースが入っています。問題は、図表一覧最後の章(「星印なし」)の図と付録の図の間にスペースを挿入できません。

図表リストの第9章と付録の間にスペースがない

図のリストで、最後の章の図のリストと付録の図のリストの間にスペースを確保するにはどうすればよいでしょうか?

答え1

付録の冒頭に次の行を挿入します。

\addtocontents{lof}{\vspace{\baselineskip}}

(または必要に応じて他の寸法)。

エントリ間のスペースの追加、改ページ、ページの長さの変更( )などの変更は\enlargethispage、コマンドで挿入できます\addtocontents。最初の引数は、どれのリスト: toc、、loflot2 番目の引数は挿入するコマンドを指定します。

挿入を適用する場合前に章、章は\included、\addtocontents しなければならないコマンドを使用してファイルに配置することはできません\chapter。 は、\includeインクルードされたファイルが完全に処理されるまでこのようなコマンドを延期するため、追加された内容は意図したよりも遅れて表示されます。

順序は常に重要です。今回の場合、\addtocontents付録の最初の図の前のどの位置にでも挿入できますが、後で変更が必要になった場合に簡単に見つけられるように、付録 (章) の先頭近くに配置するのが最適です。

答え2

\chapter定義からわかるように、 を呼び出すと垂直方向のスペースが自動的に追加されます。book.clsそしてreport.cls:

\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
                        \thispagestyle{plain}%
                        \global\@topnum\z@
                        \@afterindentfalse
                        \secdef\@chapter\@schapter}
    \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
                           \if@mainmatter
                             \refstepcounter{chapter}%
                             \typeout{\@chapapp\space\thechapter.}%
                             \addcontentsline{toc}{chapter}%
                                       {\protect\numberline{\thechapter}#1}%
                           \else
                             \addcontentsline{toc}{chapter}{#1}%
                           \fi
                        \else
                          \addcontentsline{toc}{chapter}{#1}%
                        \fi
                        \chaptermark{#1}%
                        \addtocontents{lof}{\protect\addvspace{10\p@}}% <-- Gap in LoF
                        \addtocontents{lot}{\protect\addvspace{10\p@}}% <-- Gap in LoT
                        \if@twocolumn
                          \@topnewpage[\@makechapterhead{#2}]%
                        \else
                          \@makechapterhead{#2}%
                          \@afterheading
                        \fi}

そこで、付録の冒頭に次のコードを挿入します。

\makeatletter
\addtocontents{lof}{\protect\addvspace{10\p@}}% <-- Gap in LoF
\addtocontents{lot}{\protect\addvspace{10\p@}}% <-- Gap in LoT
\makeatother

10\p@は と同等なので10pt、コードは次のように簡略化できます。

\addtocontents{lof}{\protect\addvspace{10pt}}% <-- Gap in LoF
\addtocontents{lot}{\protect\addvspace{10pt}}% <-- Gap in LoT

この方法では、図表一覧に他の章の図を一覧表示する前に追加したスペースと同じ高さのスペースを追加することができ、ページの上部または他の場所にスペースを追加するかどうかをアトミックにチェックします。

関連情報