我和班上的学生一起写了一些简短的报告article
,我想制作一个极简的目录,以itemized
列表的形式呈现。更具体地说,我想制作一个类似于这个的目录(但带有可点击的标题),用于包含三个部分的文章的目录。
\subsection*{Agenda}
\begin{itemize}
\item First section
\item Second section
\item etc
\end{itemize}
是否可以轻松获得这样的结果?提前谢谢您!
编辑:谢谢您的回答!这是我使用的代码。
\makeatletter
\renewcommand{\numberline}[1]{} % Removes the section numbers in the ToC
\renewcommand{\l@section}[2]{#1} % #1 = section number + title; #2 = page number
\pretocmd{\contentsline}{\item\gdef\contentslineused{}}{}{}
\renewcommand{\tableofcontents}{
\subsection*{Agenda}
\begin{itemize}
\@starttoc{toc}
\ifcsname contentslineused\endcsname\else
\item Agenda
\fi
\end{itemize}
}
\makeatother
答案1
以下代码将打印\tableofcontents
为列表。我通过不对其参数(节号)执行任何操作来itemize
删除 s 的编号。请注意,如果您使用(请参阅\section
\numberline
\section*
向目录中添加未编号的部分)。当然,您可以\section
根据您的设置更新方式函数以自动执行此操作。
\documentclass{article}
\usepackage{hyperref,etoolbox}
\makeatletter
%\renewcommand{\numberline}[1]{#1\quad}% Keeps the section numbers in the ToC
\renewcommand{\numberline}[1]{}% Removes the section numbers in the ToC
\renewcommand{\l@section}[2]{% #1 = section number + title; #2 = page number
#1\dotfill #2
}
\pretocmd{\contentsline}{\item\gdef\contentslineused{}}{}{}
\renewcommand{\tableofcontents}{%
\begin{itemize}
\@starttoc{toc}
\ifcsname contentslineused\endcsname\else
\item Table of Contents
\fi
\end{itemize}
}
\makeatother
\begin{document}
\subsection*{Agenda}
\tableofcontents
\section{First section}
\section{Second section}
\section{Third section}
\section{Final section}
\end{document}
新定义中的条件语法\tableofcontents
是为了避免在尚无 ToC 时进行首次编译。Table of Contents
当没有 ToC 时,它将打印一个包含单个项目的列表,并在另一次编译后打印实际的 ToC。
答案2
这是一个利用托克洛夫特包裹。
我将您的写作理解为不想显示页码;如果这种解释不正确,只需省略(或注释掉)该指令\renewcommand\cftsecpagefont{\@gobble}
。
\documentclass{article}
\usepackage{tocloft}
\setcounter{tocdepth}{1} % optional
\renewcommand\contentsname{Agenda}
\renewcommand\cfttoctitlefont{\normalsize\bfseries} % default: \Large\bfseries
\renewcommand\cftsecfont{\mdseries} % default is \bfseries
\setlength\cftsecnumwidth{1em}
\makeatletter
\renewcommand\cftsecpresnum{\textbullet\@gobble} % don't show section numbers
\renewcommand\cftsecpagefont{\@gobble} % don't show page numbers
\makeatother
\usepackage[colorlinks,allcolors=blue]{hyperref} % choose a suitable color
\begin{document}
\tableofcontents
\section{First}
\section{Second}
\section{Third}
\end{document}