![tex4ht 目录](https://linux22.com/image/385100/tex4ht%20%E7%9B%AE%E5%BD%95.png)
我正在写一本电子书,我想在开头做一个主目录,就像
1. chapter 1
1.1 section
1.2 section
2. chapter 2
...
并且每个章节都有 minitocs,例如
1.1 section
1.1.1 subsection
1.2 section
...
“minitocs” 可以很好地工作
\TocAt{chapter,section,subsection}
并且 maintoc 几乎可以正常工作
\Configure{tableofcontents*}{chapter,section}
但部分内容是 1,2,3,4,而不是 1.1,1.2,1.3,1.4。我在某处找到了 config.cfg
\begin{document}
\ConfigureToc{section}
{\tocNesting{1}\HCode{<li>}}{ }{}{ }
\ConfigureToc{subsection}
{\tocNesting{2}\HCode{<li>}}{ }{}{ }
\ConfigureToc{subsubsection}
{\tocNesting{3}\HCode{<li>}}{ }{}{ }
\Configure{tableofcontents}
{} {\tocNesting{0}} {} {} {}
\newcount\c
\def\tocNesting#1{%
\expandafter\ifx \csname level#1\endcsname\relax
\ifnum #1>0 \HCode{<ul>}\fi
\expandafter\def \csname level#1\endcsname{\HCode{</ul>}}
\fi
\c=#1 \advance\c by 1
\loop
\csname level\the\c\endcsname
\expandafter\let \csname level\the\c\endcsname\relax
\advance\c by 1
\ifnum \c<10 \repeat
}
现在编号正确了,但子部分也打印出来了(我想这应该很容易修复?)并且在某些 epub 查看器中我收到错误消息,如“错误标签,应为 <\li>”。有没有办法配置主目录以实现我想要的效果,而不会影响小目录?
还有一个问题:tex4ht 中每章可以包含图表列表和表格列表吗?(像 minilof 和 minilot 一样)
答案1
看来您生成的电子书是 Epub 3 格式的。它需要特定格式的目录,其中使用编号的 html 列表。它干扰了 tex4ht 明确添加的章节编号,因此我禁用了章节编号,只使用了阅读应用程序添加的编号。可以使用以下配置恢复此行为:
\Preamble{xhtml}
\TocAt{chapter,section,subsection}
\Configure{tableofcontents*}{chapter,section}
\Configure{NavSection}{%
\booltrue{tocnoempty}
\HCode{<li>}}{\HCode{<ol>\Hnewline}}{}{\Tg</ol>\Tg</li>}
\Css{nav\#toc ol{list-style: none;}}
\begin{document}
\EndPreamble
配置NavSection
负责 HTML 列表,在原始版本中它还抑制了章节编号。该\Css
命令禁用目录的 HTML 编号。
结果如下:
关于您的最后一个问题,这应该是可能的,但如果您能发布一个带有完整 MWE 的新问题会更好。