1

有没有一种直接的方法来获取 docbook 内容并将其转换为 DokuWiki 内容?到目前为止,我只找到了DokuWiki 插件,它可以解释文档内容并将其输出为 XHTML,但每次页面加载都会发生这种情况。

我想找到一种方法将 docbook 内容直接转换为 DokuWiki 的本机格式语法,因此我只需解释一次。有任何想法吗?

4

3 回答 3

1

我不熟悉您提到的工具,但我对您可能采用的一般策略有一些想法。

  1. 如果您对 DocuWiki 插件的输出感到满意,您可以在 perl、sh、ruby 等中编写某种脚本来执行插件并存储将来静态提供的内容。

  2. DocuWiki 似乎只是调用 xsltproc 程序并提供输出。如果插件正常工作,那么您应该能够直接从命令行或您自己的脚本调用 xsltproc。看看 DocuWiki 中的这些行

    exec("$xsltproc -o $tmpXhtmlFile $docbookXsl $tmpDocbookFile 2>&1", $errors);

    $returnXhtml = shell_exec("$xsltproc " . DOKU_PLUGIN . "/docbook/xhtmlCleaner.xsl $tmpXhtmlFile");

  3. 一旦你有选项 1 或 2 工作。在您的版本控制系统中设置一个 cron 作业或挂钩,以观察对原始 docbook 源的更改并调用脚本以重新生成静态版本。

于 2009-03-12T13:46:48.543 回答
1

另一种选择是

  1. 使用 'docbook2html' - [DocBook tools]将 docbook 转换为 HTML,然后
  2. 使用类似 Perl Module 的东西将 HTML 转换为 wiki 标记。 http://metacpan.org/pod/HTML::WikiConverter
于 2009-04-16T16:01:28.753 回答
0

一个小(但可能很重要)注意事项:DokuWiki 包含一个缓存机制,可以保存输出的 HTML 文件。这意味着通常插件将很少执行(即仅在第一次查看页面的特定版本时)。

于 2009-04-16T14:47:45.713 回答