需要建议 - 开发灵活的文档系统,重点关注本地化

时间:2010-05-15 00:10:48

标签: documentation localization internationalization docbook restructuredtext

我一直负责建立文档系统/平台。

以下是主要要求的简短列表:

  • 轻松本地化:这需要支持十几种语言。 (非技术人员添加/更新翻译的能力将是一个很大的优势,但不是100%要求)

  • 输出格式的灵活性:至少,我需要将文档(作为整体或选定的块)输出为PDF和HTML。 Windows帮助文件等原生格式的加分点。

  • 通过直观的用户界面(理想情况下是网络)进行管理和部署。

我想知道你们是否知道有任何支持此类事情的系统?我并不反对从头开始写这篇文章,但如果能帮助我,我宁愿不重新发明轮子。

到目前为止,我遇到的两位主要候选人是DocBookreST。前者似乎已经获得了良好的吸引力。我对这两者都不熟悉,但我被告知reST会让我在那里得到很好的一部分。

还有其他建议吗?从头开始构建这个会更好吗?

2 个答案:

答案 0 :(得分:2)

DocBook和ReStructuredText绝对是两个最大的竞争者,但Asciidoc是另一种类似的标记语言,无论标记如何都可读。我个人更熟悉(因此也是更大的支持者)ReStructuredText,但Asciidoc只是另一种选择。

鉴于您到目前为止所描述的内容,听起来MoinMoinhas a ReStructuredText parserit can export pages to PDF的基础上是合适的。您应该能够提取源并根据需要通过任何其他独立工具运行它(但您可能需要预处理它们以去除任何特定于MoinMoin的标记)。

如果MoinMoin不是您所需要的,那么Google还有其他一些results for ReStructuredText wiki

答案 1 :(得分:2)

如果你需要创建传统的技术文档,我可以推荐DocBook:书籍,分为章节,分为几个部分等。我认为有三个主要的事情需要考虑:标记本身,编辑工具链和发布工具链

标记。 DocBook XML标记非常全面,包含对几乎所有可以想象的方面的支持,可能包含在技术卷中,然后包含一些。这包括交叉引用,脚注等书籍的基本内容,以及专门用于软件文档的标记,如程序列表,参考条目等。标记的基本参考是Norman Walsh和Leonard的DocBook: The Definitive Guide Muellner。

可以使用lang属性明确标记内容的语言,以便源文档可以包含多种语言的内容,并且可以在处理阶段提取所需的语言版本。

创作工具。由于DocBook词汇表的庞大规模,某种“架构感知”编辑器几乎是一项要求。一个好的编辑器将帮助您选择标记元素,并确保您生成有效的标记。一个体面的XML编辑器可以做,但根据你的文档作者的技术程度,你可能还想考虑更方便用户的东西。有一些WYSIWYG风格的编辑器可供选择。 (我使用了XMLMind XML Editor,我对它非常满意。)

发布工具。从DocBook XML标记生成输出的事实标准方法是DocBook XSL样式表分发。它支持多种输出格式,包括HTML,XSL-FO(用于PDF输出),HTML帮助,甚至手册页。样式表生成的输出可以由许多参数控制,当您想要调整输出时,首先要咨询的是与样式表一起分发的reference documentation

但是,如果您希望更多地控制生成的输出,则需要为特定用途自定义XSLT样式表。这可能看起来有点令人生畏,特别是如果您没有XSLT的先前经验。但是,有关于这个主题的优秀免费书籍:Bob Stayton DocBook XSL: The Complete Guide

要将XSL-FO转换为PDF,您还需要一个XSL-FO处理器。有免费和开源的Apahce FOP,然后有多种商业选择。

最有可能的是,您的发布过程可能最终看起来像是文档的构建系统。您将拥有一个自动化系统(可能由Make或Ant等构建工具驱动),它将以XML格式提供您的文档源,并将其转换为所需语言的所需输出格式。


总之,如果您希望制作线性的书本式详细技术文档,我会说DocBook是一个不错的选择。主要缺点是标记的复杂性,这可能为作者提供相当大的学习曲线,并且可能需要特殊的创作工具。此外,自定义DocBook XSL样式表的输出可能会非常复杂。

如果您希望制作更少的“类书”和更多“类似在线”的文档 - 相互关联的文档主题 - 您可能希望查看另一个XML的DITA - 基础选择。我没有使用它,但它还附带了一个工具链,用于从XML标记生成各种输出格式。