La lista de listados de KOMA-script y LOF tienen espacios desiguales debajo del encabezado

La lista de listados de KOMA-script y LOF tienen espacios desiguales debajo del encabezado

Observé un comportamiento inesperado con la clase scrbook (xelatex) y la lista de listados del listingspaquete. El espacio entre los títulos de los capítulos de la LOF y la lista de listados y las primeras entradas de cada lista no es el mismo. El paquete de listados produce una brecha mucho mayor incluso sin personalizar la apariencia de los títulos de los capítulos como en el MWE. ¿Alguien tiene una idea de cuál podría ser el problema y cómo solucionarlo? ¡Gracias!

MWE:

\documentclass[
    10pt,
    oneside,
    listof=totoc,
    bibliography=totoc,
]{scrbook}

\usepackage{calc}
\usepackage{graphicx}
\usepackage{listings}

\setkomafont{chapter}{\Large\bfseries\MakeUppercase}
\renewcommand*{\chapterheadstartvskip}{\vspace*{-\topskip+2pt}}

\begin{document}
\listoffigures
\listoftables
\lstlistoflistings
\chapter{A Chapter}
\begin{figure}
    \centering\includegraphics[width=0.5\linewidth]{example-image}
    \caption{First figure}
\end{figure}
\begin{table}
    \caption{First table}
    \centering
    \begin{tabular}[width=0.5\linewidth]{ccc}
        Cell 1 & Cell 2 & Cell 3
    \end{tabular}
\end{table}
\begin{lstlisting}[caption={First listing}]
    Some code
\end{lstlisting}
\end{document}

Respuesta1

Hay dos advertencias en el archivo de registro de su código:

Advertencia del libro de escritura de clase: ¡ \float@listheaddetectado! La implementación de \float@listheadquedó obsoleta en KOMA-Script v3.01 2008/11/14 y ha sido reemplazada por varias características más flexibles del paquete tocbasic. Quizás la implementación de \float@listheadKOMA-Script se elimine pronto. La carga del paquete scrhackpuede ayudar a evitar esta advertencia, si está utilizando un paquete que todavía implementa la \float@listheadinterfaz obsoleta en la línea de entrada 18.

y

Advertencia del libro de escritura de clase: ¡ \float@addtolistsdetectado! La implementación de \float@addtolistquedó obsoleta en KOMA-Script v3.01 2008/11/14 y ha sido reemplazada por varias características más flexibles del paquete tocbasic. Desde la versión 3.12, el soporte para \float@addtolistinterfaces obsoletas se ha restringido solo a algunas de las funciones de KOMA-Script y se ha eliminado de otras. La carga del paquete scrhackpuede ayudar a evitar esta advertencia, si está utilizando un paquete que todavía implementa la \float@addtolistinterfaz obsoleta.

Cargue el paquete scrhackcomo se sugiere en las advertencias.

\documentclass[
    10pt,
    oneside,
    listof=totoc,
    bibliography=totoc,
]{scrbook}
\usepackage{scrhack}% <- added

\usepackage{calc}
\usepackage{graphicx}
\usepackage{listings}

\setkomafont{chapter}{\Large}
\RedeclareSectionCommand[
  beforeskip=\dimexpr-\topskip+2pt\relax,
  afterindent=false
]{chapter}

\makeatletter
\renewcommand\chapterlinesformat[3]{%
  \@hangfrom{#2}{\MakeUppercase{#3}}%
}
\makeatother

\begin{document}
\listoffigures
\listoftables
\lstlistoflistings
\chapter{A Chapter}
\begin{figure}
    \centering\includegraphics[width=0.5\linewidth]{example-image}
    \caption{First figure}
\end{figure}
\begin{table}
    \caption{First table}
    \centering
    \begin{tabular}[width=0.5\linewidth]{ccc}
        Cell 1 & Cell 2 & Cell 3
    \end{tabular}
\end{table}
\begin{lstlisting}[caption={First listing}]
    Some code
\end{lstlisting}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada