2

I use titlesec and titletoc to create my own style of chapter that contains a minitoc after the chapter title. And I use epigraph when I want to have one before the chapter title.

I am currently writing a chapter that contains multiple sections, so the minitoc have to continue on the next page. This leads to a wrong printing of the epigraph plus the lasts sections are not printed in the following example:

\documentclass[11pt]{book}
\usepackage[utf8]{inputenc}     
\usepackage[T1]{fontenc}        


\usepackage{titletoc}
\usepackage{titlesec}
    \newlength{\HeightBeforeChap}
    \setlength{\HeightBeforeChap}{0pt}

    % redefine chapter style
    \titleformat{\chapter}[hang]{\filright}{}{0pt} 
        {\vspace*{\HeightBeforeChap} \\! \Huge \bfseries\raggedleft}
        [\vspace*{4pc}%
            \startcontents
            {\raggedright\bfseries \large Mini ToC \endgraf}
            \titlerule
            \vspace{6pt}
            \printcontents{p}{1}{\setcounter{tocdepth}{3}}
            \vspace{6pt}
            \titlerule
        ]

\usepackage{epigraph}
        \renewcommand{\textflush}{flushepinormal}
        \setlength\epigraphwidth{.55\textwidth}
        \makeatletter
            \@ifundefined{HeightBeforeChap}
            {% \HeightBeforeChap not defined
                }
            {% \HeightBeforeChap defined
                \renewcommand{\dropchapter}[1]{\setlength{\HeightBeforeChap}{#1} }
            }%
        \makeatother


\begin{document}

    \dropchapter{11pt}
    \chapter{title 1}

    \epigraphhead[40]{
            \epigraph{\itshape Computer programming is an art, because it applies 
                accumulated knowledge to the world, because it requires skill and ingenuity, 
                and especially because it produces objects of beauty.
            }{Donald Knuth, \textit{"Computer Programming as an Art". Communications of the ACM, Volume 17, Issue 12, dl.acm.org., December 1974}}
        }
    \dropchapter{0cm}

    \section{section 1}
    \subsection{title}
    \subsubsection{title}
    \section{section 2}
    \section{section 3}
    \section{section 4}
        \subsection{title}
        \subsubsection{title}
    \section{section 5}
    \section{section 6}
    \section{section 7}
        \subsection{title}
        \subsubsection{title}
    \section{section 8}
        \subsection{title}
        \subsubsection{title}
    \section{section 9}
        \subsection{title}
        \subsubsection{title}
    \section{section 10}
    \section{section 11}
    \section{section 12}
    \section{section 13}
        \subsection{title}
        \subsubsection{title}
    \section{section 14}
        \subsection{title}
        \subsubsection{title}
    \section{section 15}
        \subsection{title}
        \subsubsection{title}
    \section{section 16}
    \section{section 17}
    \section{section 18}
    \section{section 19}
        \subsection{title}
        \subsubsection{title}
    \section{section 20}
        \subsection{title}
        \subsubsection{title}
    \section{section 21}
        \subsection{title}
        \subsubsection{title}
    \section{section}

    \chapter{title 2}
    \section{title}

\end{document}

Here is the results that I get:enter image description hereenter image description here

Thanks to the answer of egreg, I think that is related to termination of the page needed to print the epigraph, but I no idea about how to solve it.

Thank you for your help.

0

Since their is not a single comments even after the bounty I put, I come up with an ugly solution, waiting for better solutions from SE.

The ugly one:

\documentclass[11pt]{book}
\usepackage[utf8]{inputenc}     
\usepackage[T1]{fontenc}        

\usepackage{titletoc}
\usepackage{titlesec}
    \newlength{\HeightBeforeChap}
    \setlength{\HeightBeforeChap}{0pt}
    \newcommand{\BeforeChapCmd}{}
    \newcommand{\BeforeChap}[1]{\gdef\BeforeChapCmd{#1}}

    % redefine chapter style
    \titleformat{\chapter}[hang]{\filright}{}{0pt} 
        {\BeforeChapCmd\leavevmode\vspace*{\HeightBeforeChap}\BeforeChap{}\\ \Huge \bfseries\raggedleft}
        [\vspace*{4pc}%
            \startcontents
            {\raggedright\bfseries \large Mini ToC \endgraf}
            \titlerule
            \vspace{6pt}
            \printcontents{p}{1}{\setcounter{tocdepth}{3}}
            \vspace{6pt}
            \titlerule
            \leavevmode
        ]

\usepackage{epigraph}
    \renewcommand{\epigraphhead}[2][]{\BeforeChap{#2}   

\begin{document}

%   \dropchapter{11pt}
    \epigraphhead[40]{
                 \epigraph{\itshape Computer programming is an art, because it applies 
                     accumulated knowledge to the world, because it requires skill and ingenuity, 
                     and especially because it produces objects of beauty.
                 }{Donald Knuth, \textit{"Computer Programming as an Art". Communications of the ACM, Volume 17, Issue 12, dl.acm.org., December 1974}}
             }
    \chapter{title 1}
%    \dropchapter{0cm}

     \section{section 1}
     \subsection{title}
     \subsubsection{title}
     \section{section 2}
     \section{section 3}
     \section{section 4}
         \subsection{title}
         \subsubsection{title}
     \section{section 5}
     \section{section 6}
     \section{section 7}
         \subsection{title}
         \subsubsection{title}
     \section{section 8}
         \subsection{title}
         \subsubsection{title}
     \section{section 9}
         \subsection{title}
         \subsubsection{title}
     \section{section 10}
     \section{section 11}
     \section{section 12}
     \section{section 13}
         \subsection{title}
         \subsubsection{title}
         blabla blabla blabla blabla blabla blabla blabla blabla blabla blabla.
     \section{section 14}
         \subsection{title}
         \subsubsection{title}
     \section{section 15}
         \subsection{title}
         \subsubsection{title}
     \section{section 16}
     \section{section 17}
     \section{section 18}
     \section{section 19}
         \subsection{title}
         \subsubsection{title}
     \section{section 20}
         \subsection{title}
         \subsubsection{title}
     \section{section 21}
         \subsection{title}
         \subsubsection{title}
     \section{section}

     \chapter{title 2}
     \section{title}

\end{document}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.