文本处理:将目录文本转换为djvu书签格式?

文本处理:将目录文本转换为djvu书签格式?

通常在书籍的目录中,每一行代表一个章节或部分,并以页码结尾,例如:

1 first chapter 10
1.1 first section 11
1.1.1 first subsection 12
1.2 second section 13
2 second chapter 14 
2.1 first section 16
2.2 second section 13

上述示例中 djvu 文件中的书签格式为:

(bookmarks
 ("1 first chapter" "#10" 
 ("1.1 first section" "#11" 
 ("1.1.1 first subsection" "#12" ))
 ("1.2 second section" "#13" ))
 ("2 second chapter" "#14" 
 ("2.1 first section" "#16" )
 ("2.2 second section" "#13" ))
)

要点是左右括号的配对,以便以树状方式组织章节和章节,每个书签项都使用双引号,每个页码前面都加一个#。行与缩进之间的分隔只是为了方便手动查看和编辑书签文本文件,根本不重要。

我的问题是:

  1. 有没有什么方便的方法可以将纯文本的目录文件转换为 djvu 书签格式,从而尽可能减少手动操作?这可以通过文本处理应用程序来实现,也可以在某些编程语言下编程,或者两者结合。

  2. 正如建议的那样相关回复经过丹尼斯·威廉森

    您正在做的事情开始看起来有点像 XML。也许您应该使用真实的东西并使用适当的工具来操作它。

    快速谷歌一下,就会出现 djvuxml。可以使用适当的 Python 或 Perl 模块或 shell 实用程序(如 xmlstarlet)轻松操作 XML 文件。

    我想知道 djvu 书签格式是否类似于 XML 格式(我承认我还不熟悉 XML,但如果它能帮到我,我愿意学习它)?可以使用 XML 工具将目录文本文件转换为 djvu 书签格式吗?

相关内容