dynnumwidth%20n%C3%A3o%20funciona%20de%20forma%20confi%C3%A1vel%20no%20KOMA-Script.png)
De acordo comDocumentação do script KOMA, a opção dynnumwidth
no tocbasic
-style toclines
(que é o modelo para os estilos usados pelos comandos de seccionamento do KOMA-Script no índice) faz o seguinte:
dynnumwidth=switch
: Se a opção estiver ativa com styletocline
, o atributonumwidth
será ignorado. Em vez disso,numsep
é usada a largura máxima do número detectada na execução anterior do LaTeX aumentada pelo valor de .
No entanto, a detecção da largura máxima do número não parece funcionar de forma confiável. Considere os dois seguintes MWE:
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}
Saída:
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}
Saída:
Portanto, se eu tiver três ou mais entradas com larguras numéricas curtas, dynnumwidth
não detecta a entrada mais longa e escolhe um numwidth
valor muito pequeno (MWE 1). Por outro lado, com duas entradas de largura numérica curta e duas longas, o correto numwidth
é determinado (MWE 2). Isso é um bug ou estou usando dynnumwidth
incorretamente?
Estou usando o TeX Live 2016/KOMA-Script v3.21.
Responder1
Fiz um relatório de bug para o autor do KOMA-Script, Markus Kohm, que confirmou que isso não está funcionando conforme o esperado.
Como mencionado poresdd, o bug foi corrigido empré-lançamento v3.22.2559. Do registro de alterações:
r2559 02/12/2016 09:03:11 +0100 kohm:
- scrkernel-tocstyle.dtx: faltando \relax adicionado para corrigir
o recurso dynnumwidth
portanto, ele desaparecerá na versão 3.22 do KOMA-Script.