【发布时间】:2016-07-20 17:08:19
【问题描述】:
Tl;博士;
在 docbook 中创建锚点的正确方法是什么? 有没有办法让锚在 writer 中可见?
背景
我正在尝试将以前在单个 open office 文档中的文档拆分为较小的 asciidoc 文档,这些文档既包含在主要的开放式办公文档中,也转换为 html 和 pdf 中的一个或两个.
我有这个主要工作。我使用asciidoctor 创建html。 asciidoctor-pdf 创建 pdf 并结合 asciidoctor 和 pandoc 创建 .odt 文件。我也尝试了asciidoc的python实现,但发现接口不太好用。
asciidoc 和 odt 之间的往返显然是不可能的。这是一种融合,其中主文档经过文字处理,但包含可以独立生成的内容片段(想想手册页 - 实际上这是几个用例之一)。
asciidoc 到 html:
asciidoctor -b html5 foo.adoc -o foo.html
asciidoc 转 pdf:
asciidoctor-pdf -b pdf foo.adoc -o foo.pdf
asciidoc 到 odt
asciidoctor -b docbook foo.adoc -o foo.docbook
pandoc --base-header-level=3 -V date:"" -V title:"" -f docbook foo.docbook -o foo.odt
使用 pandoc,我必须取消日期和标题,并根据需要设置标题级别,以便将要插入的部分作为额外的复杂功能插入。
我在开放式办公室中使用insert section 将生成的.odt 插入到主文档中。
请注意,主文档不是主文档,因为我找不到创建主文档的方法,而无需在 h1 边界上自动拆分文件。
我有两个主要问题需要解决。我想在 asciidoc 文档中添加标题作为交叉引用,并在字母索引中为它们创建条目(实际上第一个标题就足够了)。有没有办法做到这一点? asciidoc 中的索引标记不会导致在 .odt 文件中创建条目。
我可以使用“插入引用/标题”交叉引用插入部分中的内容并引用唯一命名的标题。但是,每当我使用“全部更新”时,这些交叉引用都会失效。它们显示为“错误:未找到参考源”。
[在单独的说明中,我还想要一种自动查找损坏的交叉引用的方法]
我目前正在使用 libreoffice - 版本:4.3.7.2
如果一个性能比另一个好,我不反对切换版本或风格(即 apache)。
我不确定答案是否在链的 asciidoc 或 docbook 部分。我会接受一个答案,它会自动在插入部分(.adoc/docbook 文件的顶部)的开头插入一个索引条目。
我也愿意将我的工具链更改为可行的东西。 例如,我尝试了 asciidoc-odt 后端并与https://github.com/dagwieers/asciidoc-odf/issues/47 发生冲突,这并不能激发信心。 使用 asciidoc-odt 我避免了创建中间文档文件的需要。但是,我仍然无法让锚出现。
我可以获得一个宏来创建一个锚点,但目前我还没有弄清楚如何从命令行运行宏。
【问题讨论】:
标签: libreoffice pandoc docbook asciidoc asciidoctor