titletoc:子文件中的部分目录

titletoc:子文件中的部分目录

我的主文件无法调用 包含打印部分目录代码的子文件(使用input) 。

我使用该包运行子文件standalone
子文件在独立运行时运行良好。

以下代码行生成了一条不具描述性的错误消息:

\printcontents[Scripts]{}{1}{ \subsection*{List of Contents} } \clearpage

我知道如果子文件在没有该命令的情况 下至少没有独立运行过一次,那么该\printcontents命令会给我带来麻烦。

\printcontents

(实际上,\startcontents可选地\stopcontents
必须已经生成部分 toc 文件以免\printcontents
产生错误。)

我想知道该\printcontents命令是否会生成错误,
因为从主文件运行时找不到部分 toc 文件。

(主文件位于更高级别的父目录中。)

如果这是问题所在:
是否可以在命令
中包含相对目录以及部分 toc 文件名\printcontents

平均能量损失

主文件.tex

%! arara: lmkclean
%! arara: pdflatex: {   draft: yes }
%! arara: bibtex
%  arara: pdflatex: {   draft: yes }
%  arara: pdflatex: { synctex: yes }
%  arara: lmkclean
\documentclass[crop=false,float=true,class=scrartcl]{standalone}

\providecommand{\main}{.}
\input{\main/Subfiles/Preamble.tex}                     % Preamble [document configuration]

\begin{document}

\addcontentsline{toc}{section}{List of Contents}      \tableofcontents   \clearpage



\input{\main/Subfiles/2-Main/child1.tex}




\textbf{\LARGE{Appendices}}
\addappheadtotoc
\begin{appendices} \clearpage


\input{\main/Subfiles/3-Append/childA.tex}


\end{appendices}


\end{document}

子文件/序言.tex

% meta tools
\usepackage{standalone}                 % allows for independent runs of subfiles.

% layout: page/spacing/headings
\usepackage{scrlayer-scrpage}           % improved header commands. [supercedes `fancyhdr' package].
\usepackage{appendix}                   % appendices.

% references
\usepackage{titletoc}                   % allows sub-[tables of contents]. [breaks \section* commands. use \setcounter{secnumdepth}{0} instead.]

子文件/2-Main/child1.tex

%! arara: lmkclean
%! arara: pdflatex: {   draft: yes }
%! arara: bibtex
%  arara: pdflatex: {   draft: yes }
%  arara: pdflatex: { synctex: yes }
%  arara: lmkclean
\documentclass[crop=false,float=true,class=scrartcl]{standalone}

\providecommand{\main}{../..}
\input{\main/Subfiles/Preamble.tex}                     % Preamble [document configuration]

\begin{document}



\section{Section 1} \clearpage

\subsection{Subsection 1.1} \clearpage

\subsection{Subsection 1.2} \clearpage

\section{Section 2} \clearpage

\subsection{Subsection 2.1} \clearpage

\subsection{Subsection 2.2} \clearpage

\end{document}

子文件/3-Append/childA.tex

%! arara: lmkclean
%! arara: pdflatex: {   draft: yes }
%! arara: bibtex
%  arara: pdflatex: {   draft: yes }
%  arara: pdflatex: { synctex: yes }
%  arara: lmkclean
\documentclass[crop=false,float=true,class=scrartcl]{standalone}

\providecommand{\main}{../..}
\input{\main/Subfiles/Preamble.tex}                     % Preamble [document configuration]

\begin{document}

\startcontents[appendices]


\IfFileExists{\main/Subfiles/3-Append/childA.ptc}{ 
\printcontents[appendices]{}{1}{ \subsection*{List of Contents} } \clearpage
                                                         }{}



\section{Section A} \clearpage

\subsection{Subsection A.1} \clearpage

\subsection{Subsection A.2} \clearpage

\section{Section B} \clearpage

\subsection{Subsection B.1} \clearpage

\subsection{Subsection B.2} \clearpage




\stopcontents[appendices]

\end{document}



题外话:

\printcontents
如果所寻找的 .toc 文件printcontents不存在,是否有人知道不运行的方法?

[回答]:(来自@ChristianHupfer。在评论中给他+1。)

\IfFileExists{yourlocaltocfilename}{\printcontents....}{}  

答案1

hyperref提前加载titletoc将会导致问题。

总是hyperref最后加载。

相关内容