I've created a command, \importchapter{<title>}{<folder>}{<file>}{<minitables>}, to import the main <file> of a chapter from a <folder> and automatically generate a \chapter{<title>}.
biblatex is used to manage bibliography. A refsegment is created for each chapter, and \printbibliography[segment=\therefsegment] is done at the end of \importchapter.
titletoc is used to place local tables of contents and/or lists of figures and/or tables in some of the chapters of a report. startcontents/startlists are placed before importing the chapter file and stopcontents/stopslists at the end of \importchapter.
Since \printbibliography is not shown if no citations are done, I don't have to worry about it. However, the titles of the partial tables and lists are shown even if there are no elements to show in that chapter. I decide when to show then manually putting \DOmc, \DOmf and/or \DOmt in the <minitables> parameter of \importchapter. But I'd like them to automatically check if there is something to show, just like \printbibliography.
I suppose I should look into *.ptc, *.plf and *.plt and check if there is any \contentsline between chapter@k and chapter@k+1 for the kth chapter. But I have no idea about how to do it. Is it possible?
In the following example, the List of Figures should be shown only in the first chapter.
\documentclass[a4paper]{report}
\usepackage{import}
\usepackage[backend=biber,style=ieee-alphabetic,natbib=true,sorting=ynt]{biblatex} %added
\addbibresource{IEEEfull.bib} %added
\usepackage{filecontents}
\begin{filecontents}{intro.tex}
\section{First}
\begin{figure}[!h]\caption{First figure}\end{figure}
\section{Second}
\begin{figure}[!h]\caption{Second figure}\end{figure}
\end{filecontents}
\begin{filecontents}{back.tex}
\section{First back}
\subsection{First sub back}
\end{filecontents}
\usepackage{titletoc}
\newcommand\DOminitoc[2]{ \section*{#1} #2 }
\newcommand\DOmc{ \DOminitoc{ \contentsname }{ \printcontents[chapter]{}{1}{} } }
\newcommand\DOmf{ \DOminitoc{ \listfigurename }{ \printlist[chapter]{lof}{1}{} } }
\newcommand\DOmt{ \DOminitoc{ \listtablename }{ \printlist[chapter]{lot}{1}{} } }
\newcommand\importchapter[4]{
\begin{refsegment}
\chapter{#1}
\startcontents[chapter]
\startlist[chapter]{lof}
\startlist[chapter]{lot}
#4
\vspace{1em}\hrule
\subimport{#2}{#3}
\stopcontents[chapter]
\stoplist[chapter]{lof}
\stoplist[chapter]{lot}
\printbibliography[segment=\therefsegment,heading=subbibliography]
\end{refsegment}
}
\begin{document}
\importchapter{Introduction}{}{intro}{\DOmc\DOmf}
\importchapter{Background}{}{back}{\DOmc\DOmf}
\end{document}
minitoc, with some additional features, however. – Sep 20 '14 at 08:05titletocbecause I 'm usingtitlesecand it is not compatible withminitoc. I asked about it here. Do you think it would be better to hookminitoc? – umarcor Sep 20 '14 at 14:57