【.com快译】我个人有多年开源文档的经验,在过去的十年中,这种创建和发布的方式发生了翻天覆地的变化。其中一些趋势似乎是周期性的,例如评论标记的卷土重来。有些是新兴的趋势,比如尽可能地缩短文档和代码之间的距离。许多人将其称为文档即代码。下面,我总结了该领域出现的五个趋势。1、Git刚开始参与GNOME项目的文档相关工作时,我们使用DocBook做文档,和代码一起存放在CVS仓库中。今天,大部分GNOME文档都是由Mallard编写并存储在Git存储库中的。尽管格式和工具发生了变化,但在版本控制方案中存储内容的做法仍在继续。可能有朋友会疑惑,为什么这种由来已久的习惯还算趋势呢?这主要是因为Git的出现。Git是大约十年前诞生的分布式版本控制系统。当然,现在还有人在使用去中心化的版本控制系统,但Git的主流地位依然不可动摇。正是因为Git的流行,开发、切分、分支的生产方式被大多数人所接受,这也是近年来值得关注的一个重要趋势。Git当然不是唯一的分布式版本控制系统选项,我们还有其他解决方案可以尝试。但是,Git仍然占据了绝大部分的比例,这在很大程度上得益于Git托管站点的流行。这种趋势引领了整个软件文档领域。过去,人们无法将他们的资源存储在网络驱动器上,或者被迫使用专有的管理系统,但现在Git彻底改变了整个软件行业处理文档的方式——这是一个可喜的变化。2.轻量级语言当谈到文档源格式时,我们总是有多种选择。语义XML格式、SGML格式、TeX方言、troff方言等。此外,还有其他用于文字处理、页面布局和创作辅助的源格式选项。一些轻量级标记语言甚至专门设计用于简化以优化文本编辑器中的输入。轻量级标记语言的兴起有几个原因。它通常更容易编写,简单是每个人都喜欢的。由于大多数轻量级语言都是面向行的,因此它们在版本控制系统中运行良好。也可以有效降低新贡献者的进入门槛。当然大家改源格式要慎重,否则很多贡献者可能会因为适应不了而退出。轻量级标记语言也有其自身的缺点。您可以使用的工具通常是有限的,而且它们通常不提供您编写其他工具所需的数据模型。它还经常无法提供足够的语义信息。以XML格式为例,它包含了大量的翻译、验证、链接检查、状态报告以及测试和数据提取的工具,这些都是目前轻量级格式所不具备的。因此,虽然轻量级格式可以降低新贡献者的入门难度,但总的来说还是有得有失。三种最流行的轻量级格式是Markdown、AsciiDoc和reStructuredText。Markdown最简单,但可以提供最基本的文档功能。此外,它还提供了多种存在兼容性问题的选项,具体取决于您实际使用的处理工具。AsciiDoc具有更多的语义和更多的元素类型。它最初专注于创建DocBook的前端版本,但现在它已经开始本地开发并支持多种输出格式。reStructuredText来自于Python社区,其发展速度极快,被众多托管站点所采用。3.静态站点生成工具五年前,趋势是使用wiki和博客平台创建文档站点。这些站点易于设置,并允许人们更轻松地做出贡献。一些用户甚至建立了自己的wiki来匿名贡献内容。然而,今天的趋势是使用版本控制系统来存储源代码,然后通过大量静态HTML文件来构建和发布站点。生成静态站点并不是什么新鲜事。我的第一份工作是为一家软件公司开发内部工具,用于构建和发布包含无数页文档内容的静态文件。不过,目前静态站点已经广泛应用于各种规模的项目中,具体原因分为以下几点。首先,现成的静态站点生成工具越来越多。Middleman和Jekyll都可以轻松实现wiki或博客的部署。除非您有特殊需求,否则您可以直接使用现成的工具来实现您的目标。另一个原因是作为静态站点实现的源托管站点易于使用,并被越来越多的技术人员选择。如果您将所有源文件存储在单个托管服务中,例如GitHub,那么拥有GitHub帐户的任何人都可以通过Web浏览器编辑和提交他们的更改。4、持续集成持续集成成为维持上述趋势的关键。您可以以简单的格式编写自己的文档,将其存储在Git中,通过Git托管服务在线编辑,然后将其发布到您的站点。有了持续集成机制,你甚至不需要手动处理发布过程。如果你愿意,你甚至可以自动将更改提交给master,并以此来实现类似wiki的管理方式。一些项目更保守,只允许从生产中发布。但即使有了这个分支来源的发布,持续集成仍然可以显着减少人工干预的需要。您还可以自动发布暂存站点以进行分支开发。当然,持续集成的作用绝不仅限于发布。各种项目都可以使用它来自动化文档测试或根据状态和覆盖率生成报告。5.文档托管服务虽然使用持续集成来自动发布文档相当方便,但如今的许多托管服务都在此基础上做了进一步的简化。只需将其传递到Git存储库,即可自动完成构建、发布和文档托管。一个免费的文档托管站点是否可以盈利还有待观察——毕竟,运营这样一个站点需要成本和时间的投资。如果站点不能保持一定的质量水平,人们会选择在其他平台上托管文档。如果您喜欢当前的托管计划,请考虑通过捐赠来支持它。我认为托管文档服务的趋势将继续下去。将来甚至可能会有专有软件的付费文档托管服务。近十年来,开源项目引领了文档技术的发展,相信在未来也会继续发挥重要作用。原标题:开源文档的5大趋势原作者:ShaunMcCance
