【问题标题】:My TOC links in a pandoc generated epub are not working我在 pandoc 生成的 epub 中的目录链接不起作用
【发布时间】:2023-03-03 15:48:01
【问题描述】:

标题为“# Project Info”会创建一个 ID 为“project-info”的元素。然后我可以使用“#project-info”链接到它。当我只有一个文件时,这可以按预期工作。这是发生了什么:我有很多文件,project-a.md、project-b.md 等。

所有这些文件都具有相同的结构:

# Title

TOC: [Info](#project-info) | [Build](#project-build) | ...

## Project Info

## Project Build

...

我正在创建一个这样的 epub:

pandoc -S -o projects.epub title.txt project-a.md project-b.md project-c.md

问题在于,在生成的 epub 中,每个项目的目录链接都指向项目 a 的部分,而不是相应的项目页面。我打开了 epub,链接被渲染成这样:

<a href="ch5.xhtml#project-info">Info</a>

这解释了为什么他们要链接到第一个项目,但为什么要在链接中添加 ch5.xhtml?有没有办法防止这种情况发生?

【问题讨论】:

    标签: markdown epub pandoc


    【解决方案1】:

    这可能是 pandoc 中的一个错误;你应该报告 pandoc 的 github 问题跟踪器。

    不过,出于您的目的,您最好使用--toc 命令行标志,而不是手动为每章创建目录。这将使每一章都以目录开头,您可以使用 CSS 设置样式。

    【讨论】:

      【解决方案2】:

      Pandoc 首先将输入文件连接到一个文档中。这会创建重复的#name,因为它们现在都在一个文件中。这就解释了为什么链接都跳转到第一个项目的书签。

      解决方案是让所有输入文档中的#names 唯一,或者按照 John 的建议使用 --TOC

      【讨论】:

        【解决方案3】:

        我在使用markdown_phpextra 阅读器时遇到了这个问题。使用 markdown 阅读器可以正常工作。我使用了markdown_phpextra,因为我在某处读到链接属性扩展仅在这个中受支持,但事实并非如此。在默认的markdown 阅读器中工作正常。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-03-11
          • 1970-01-01
          • 1970-01-01
          • 2021-08-12
          • 2017-04-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多