tex4ht 在 TL 2023 中的两列中重复了目录,但在 TL 2022 中却没有问题。发生了什么变化?

tex4ht 在 TL 2023 中的两列中重复了目录,但在 TL 2022 中却没有问题。发生了什么变化?

我在 TL 2023 中的相同文档和相同命令上发现了一个问题,现在 tex4ht 将目录复制到两列中,而不是像以前一样将目录分布在两列上。

相同的文档,相同的命令。所以有些东西变了。问题是如何让它像在 TL 2022 中一样表现?我需要在命令或 latex 中更改某些内容吗?

我有一个仅以 HTML 格式编写的文档,由于目录很长,我想将其分为两列,因此我使用了multicol软件包。多年来,这种方法一直运行良好。

这是 MWE

\documentclass[12pt,titlepage]{article}
\usepackage{multicol}

\begin{document}
\title{my book}
\author{me}
\date{\today}
\maketitle

\ifdefined\HCode 
\Configure{tableofcontents*}{section}
\fi 

\ifdefined\HCode 
\begin{multicols}{2}
{
\tableofcontents
}
\end{multicols}
\else 
\tableofcontents
\fi 

\section{section 1}
text
\section{section 2}
text
\section{section 3}
text
\section{section 4}
text
\section{section 5}
text
\section{section 6}
text

\end{document}

使用编译

make4ht -ulm default -a warning main.tex 'mathjax,htm,fn-in,0,notoc*,p-width,cut-fullname'

这是在运行 TL 2023 的 Linux 上的输出

在此处输入图片描述

这是仍在运行 TL 2022 的 Linux 上的输出

在此处输入图片描述

参考:入口在 tex4ht 追踪

答案1

看来这个错误是在我修复时引入的另一个问题。我会在 TeX4ht 源中修复此问题。同时,请尝试此配置文件:

\Preamble{xhtml}
\catcode`\:=11
\pend:def\tableofcontents{\gdef\:StartSec{\au:StartSec}}
\catcode`\:=12
\begin{document}
\EndPreamble

在此处输入图片描述

相关内容