如何防止 \listofalgorithms 缩进?

如何防止 \listofalgorithms 缩进?

我怎样才能防止\listofalgorithms缩进?我尝试了互联网上能找到的所有方法,但我的算法索引拒绝与标题对齐。

以下是 MWE:

\documentclass{article}
\usepackage{nomencl}
\usepackage{mathtools}
\usepackage{algorithm}
\usepackage{algpseudocode}
\numberwithin{algorithm}{section}
\begin{document}
    \renewcommand{\nomname}{List of Algorithms}
    \listofalgorithms
    \newpage
    \section{Introduction}\noindent
    Text\\
    \begin{algorithm}[H]
        \caption{Caption}
        \label{algo:caption}
        \begin{algorithmic}[1]
            \State hello world
        \end{algorithmic}
    \end{algorithm}
\end{document}

任何帮助都非常感谢。谢谢!

答案1

缩进是由于宏的工作方式决定的;它由 加载的\listof提供。删除缩进的最简单方法是修补该命令:floatalgorithm

\usepackage{etoolbox}
\patchcmd{\listof}{1.5em}{0pt}{}{}

的定义\listofalgorithms

\newcommand{\listofalgorithms}{\listof{algorithm}{\listalgorithmname}}

并且\listof

\newcommand{\listof}[2]{%
  \@ifundefined{ext@#1}
    {\float@error{#1}}
    {\@namedef{l@#1}{\@dottedtocline{1}{1.5em}{2.3em}}%
     \float@listhead{#2}%
     \begingroup\setlength{\parskip}{\z@}%
       \@starttoc{\@nameuse{ext@#1}}%
     \endgroup}%
}

因此,一旦我们知道\@dottedtocline负责行的排版并且1.5em是初始缩进,我们就完成了。

相关内容