(toc)dynnumwidth no funciona de manera confiable en KOMA-Script

(toc)dynnumwidth no funciona de manera confiable en KOMA-Script

De acuerdo con laDocumentación de KOMA-Script, la opción dynnumwidthen tocbasic-style toclines(que es la plantilla para los estilos utilizados por los comandos de sección de KOMA-Script en la tabla de contenido) hace lo siguiente:

dynnumwidth=switch: Si el interruptor está activo con estilo tocline, el atributo numwidthse ignora. En lugar de eso, numsepse utiliza el ancho máximo del número detectado en la ejecución anterior de LaTeX aumentado en el valor de.

Sin embargo, la detección del ancho máximo del número no parece funcionar de manera confiable. Considere los dos MWE siguientes:

test_1.tex:

\documentclass[american]{scrartcl}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\RedeclareSectionCommands[tocdynnumwidth]{section,subsection,subsubsection}

\begin{document}
    \tableofcontents

    \addsectiontocentry{Nr.~1}{Test1}
    \addsectiontocentry{Nr.~2}{Test2}
    \addsectiontocentry{Nr.~3}{Test3}
    \addsectiontocentry{Number~4}{Test4 (long)}
\end{document}

Producción:

Primer MWE: <code>dynnumwidth</code> roto

test_2.tex:

\documentclass[american]{scrartcl}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\RedeclareSectionCommands[tocdynnumwidth]{section,subsection,subsubsection}

\begin{document}
    \tableofcontents

    \addsectiontocentry{Nr.~1}{Test1}
    \addsectiontocentry{Nr.~2}{Test2}
    \addsectiontocentry{Number~3}{Test3 (long)}
    \addsectiontocentry{Number~4}{Test4 (long)}
\end{document}

Producción:

Segundo MWE: <code>dynnumwidth</code> funcionando

Entonces, si tengo tres o más entradas con números de ancho corto, dynnumwidthno detecta la entrada más larga y elige un numwidthvalor que es demasiado pequeño (MWE 1). Por el contrario, con dos entradas de ancho de número cortas y dos largas numwidthse determina la correcta (MWE 2). ¿Es esto un error o lo estoy usando dynnumwidthincorrectamente?

Estoy usando TeX Live 2016/KOMA-Script v3.21.

Respuesta1

Le informé de error al autor de KOMA-Script, Markus Kohm, quien confirmó que esto no funciona según lo previsto.

Como lo mencionaesdd, el error se ha solucionado enversión preliminar v3.22.2559. Del registro de cambios:

r2559 2016-12-02 09:03:11 +0100 kohmios:

  • scrkernel-tocstyle.dtx: falta \relax agregado para corregir
    la característica dynnumwidth

por lo que desaparecerá en la versión KOMA-Script v3.22.

información relacionada