我正在尝试将图表列表添加到我的 (ShareLaTeX) 文档中,但它不会出现在我的目录中。这是我的代码:
\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}
\maketitle
\thispagestyle{empty}
\newpage
\section*{Abstract}
\addtocontents{toc}{~\hfill\textbf{Side}\par}
\addcontentsline{toc}{section}{\protect\numberline{}Forord}
\section*{Introduction}
\addcontentsline{toc}{section}{\protect\numberline{}Sammendrag}
\newpage
\tableofcontents
\listoffigures
\addcontentsline{toc}{section}{\protect\numberline{}Figures}
\listoftables
\addcontentsline{toc}{section}{\protect\numberline{}Tables}
\newpage
\pagenumbering{arabic} ´
%Several sections here
\newpage
\appendix
\section{Appendix A}
\subsection{Appendix name}
\end{document}
因此,我的目标是得到这样的东西:
我已经有了图表,但还想获得方程式和附录列表。有什么帮助吗?
答案1
\section
无论您如何创建内容表,以下内容都提供了一种在文档中插入与 s 相关的临时内容的方法。
\documentclass{article}
\usepackage{xparse}
\newcommand{\setsectiontocentry}[1]{\def\sectiontocentry{#1}}
\let\oldsection\section
\makeatletter
\RenewDocumentCommand{\section}{ s o m }{%
\IfBooleanTF{#1}
{% \section*
\oldsection*{#3}%
\IfValueTF{#2}
{\addcontentsline{toc}{section}{\protect\numberline{}#2}}% \section*[.]{..}
{\@ifundefined{sectiontocentry}
{\addcontentsline{toc}{section}{\protect\numberline{} #3}}%
{\addcontentsline{toc}{section}{\protect\numberline{} \sectiontocentry}}%
\let\sectiontocentry\relax
}
%{\addcontentsline\addcontentsline{toc}{section}{\protect\numberline{}%
%\ifcsname sectiontocentry\endcsname
%\sectiontocentry
%\else
%#3%
%\fi
%}%
%\let\sectiontocentry\relax
%}% \section*{..}
}
{% \section
\IfValueTF{#2}
{\oldsection[#2]{#3}}% \section[.]{..}
{\oldsection{#3}}% \section{..}
}%
}
\makeatother
\begin{document}
\addtocontents{toc}{~\hfill\textbf{Side}\par}
\section*{Abstract}
\section*{Introduction}
\clearpage
\setsectiontocentry{ToC}
\tableofcontents
\setsectiontocentry{Figures}
\listoffigures
\listoftables
\clearpage
\pagenumbering{arabic}
\section{First section}
\section{Second section}
\section*[THIRD SECTION]{Third section}
\section{Last section}
\clearpage
\appendix
\section{First appendix}
\section{Second appendix}
\end{document}
从根本上讲,\section*
命令不会出现在目录里,也不允许使用选修的下的参数\section*
。上述序言设置重新定义了\section
函数的方式,以允许带星号的版本\section*
具有可选参数,并将该内容插入到目录中。
如果您有权访问\section
,那么这种方法是可行的,您通常可以这样做。但是,当您调用\tableofcontents
(以及类似操作)时,系统\section
会代表您进行调用。为此,我已定义\setsectiontocentry{<section toc>}
,将抓取并放置相应的<section toc>
条目。希望在上面的示例中可以看到这一点。