如何从算法列表 (ToA) 中删除选项卡

如何从算法列表 (ToA) 中删除选项卡

我怎样才能删除标签,\listofalgorithms以便它总是以不缩进的方式开始?

\documentclass[12pt,a4paper,twoside]{book}
\usepackage{algorithm}
\usepackage{algorithmic}

\begin{document}
\frontmatter
\pagestyle{plain}\listofalgorithms         % print LOA

\mainmatter
\chapter{Chapter}

\section{Algorithm section}

\begin{algorithm*}[t!]
\caption{Name of Algorithm}
\begin{algorithmic}[1]
\item{test}
\end{algorithmic}
\end{algorithm*}

\end{document}

答案1

您必须通过强制缩进来覆盖 ToC 条目的设置方式0pt。默认值为1.5em,它被设置为宏的一部分\listofalgorithms(因为algorithm使用float包裹):

在此处输入图片描述

\documentclass{book}

\usepackage{algorithm,algorithmic}

\begin{document}

\frontmatter
\pagestyle{plain}
\begingroup
\makeatletter
\let\old@dottedtocline\@dottedtocline
\renewcommand{\@dottedtocline}[5]{\old@dottedtocline{#1}{0pt}{#3}{#4}{#5}}
\listofalgorithms
\endgroup

\mainmatter
\chapter{Chapter}

\section{Algorithm section}

\begin{algorithm}[ht]
  \caption{Name of Algorithm}
  \begin{algorithmic}[1]
    \STATE test
  \end{algorithmic}
\end{algorithm}

\end{document}

原则上,每个algorithm条目均在 ToC 中设置\l@algorithm,基于float.sty,定义为

\@dottedtocline{1}{1.5em}{2.3em}

虽然\@dottedtocline实际上需要 5 个参数,但前三个参数默认设置为上述选项。第二个参数 -1.5em设置每个条目的缩进,我已0pt在上面的代码中强制将其放在一个组内。

相关内容