3

一项志愿工作需要我们将大量 LaTeX 文档转换为 ePub 文件格式。这是一系列开源小说书,迄今为止仅通过按需印刷服务在纸上制作。我们希望能够将图书提供给需要 ePub 格式才能获得最佳效果的图书阅读器设备(例如 Kindle)的用户。

幸运的是,ePub 是一种非常简单的格式,但是 LaTeX 没有简单的方法来生成所需的 XHTML 输出。

我们尝试了替代的 LaTeX 编译器(例如 plastex),但最终我们认为,简单地编写我们自己的编译器可能会容易得多,它可以理解 LaTeX 语言的一小部分并直接编译为 XHTML / ePub。

以前我在 Windows 上使用了一个名为 GOLD 的工具。这使我可以直接从 BNF 语法转到存根解析器。它还允许我用我喜欢的任何语言实现解析器。(我会选择 Python)。

该产品必须在 Linux 上运行,所以我想知道是否有一个等效的工具链可以在 Ubutnu / Eclipse / Python 下运行。我们的想法是我们将采用 TeX 的语法并只实现其中的一小部分,但我们不想花费大量时间来担心语法和解析。解析器生成器显然会为我们节省大量时间。

萨尔


更新 1:具有出色文档或教程的解决方案的奖励分数。


更新 2:如果有 TeX 的语法文件已经可用,则额外奖励,因为我所要做的就是实现我们关心的功能。

4

3 回答 3

5

Try pyparsing.

Se http://pyparsing.wikispaces.com/WhosUsingPyparsing, search for TeX. There's a project where pyparsing is used to parse a subset of TeX syntax mentioned on that page.

For documentation, I recommend the "Getting started with pyparsing" e-book, by pyparsing's author.

EDIT: According to PaulMcG, Pyparsing is no longer hosted on wikispaces.com. Go to the new GitHub site

于 2010-04-12T14:16:23.547 回答
3

尝试

于 2010-04-12T12:38:42.600 回答
3

我曾经使用tex4ht将 LaTeX 转换为 XHTML+MathML。工作得很好。从那时起,您可以使用输出 HTML 作为 ePub 的基础。

当然,这会破坏 Python 工具链,因此它可能不会成为您最喜欢的方法......

于 2010-04-12T12:51:17.760 回答