Python 有没有人用斯芬克斯来记录C++;项目

Python 有没有人用斯芬克斯来记录C++;项目,python,c++,python-sphinx,documentation-generation,Python,C++,Python Sphinx,Documentation Generation,是一个新的Python文档工具。它看起来很漂亮。我想知道的是: 这是如何记录C++项目的? 是否有将现有文档(如doxygen)转换为Sphinx格式的工具 LI>有使用狮身人面像的C++项目的可在线下载的例子吗? 使用过斯芬克斯的人有什么建议吗 首先,保留两个目录树,source和build。将源代码置于版本控制之下。不要将build置于版本控制之下,请在安装过程中重新构建它 第二,阅读 使用sphinx快速启动构建实践文档树。玩几天,了解它是如何工作的。然后再次使用它在SVN目录中构建真

是一个新的Python文档工具。它看起来很漂亮。我想知道的是:

    <>这是如何记录C++项目的?
  • 是否有将现有文档(如doxygen)转换为Sphinx格式的工具
  • <> LI>有使用狮身人面像的C++项目的可在线下载的例子吗?
  • 使用过斯芬克斯的人有什么建议吗

首先,保留两个目录树,
source
build
。将源代码置于版本控制之下。不要将
build
置于版本控制之下,请在安装过程中重新构建它

第二,阅读

使用
sphinx快速启动
构建实践文档树。玩几天,了解它是如何工作的。然后再次使用它在SVN目录中构建真实的内容

在一个精心规划的树中组织文档。有些部分需要该部分的“index.rst”,有些则不需要。这取决于该部分的“独立”程度

我们的顶级
index.rst
如下所示

.. XXX documentation master file, created by sphinx-quickstart on Wed Dec 31 07:27:45 2008.

..  include:: overview.inc

.. _`requirements`:

Requirements
============

.. toctree::
   :maxdepth: 1

   requirements/requirements
   requirements/admin
   requirements/forward
   requirements/volume

.. _`architecture`:

Architecture
============

.. toctree::
   :maxdepth: 1

   architecture/architecture
   architecture/techstack
   architecture/webservice_tech
   architecture/webservice_arch
   architecture/common_features
   architecture/linux_host_architecture

Detailed Designs
================

..  toctree::
    :maxdepth: 3

    design/index


Installation and Operations
===========================

.. toctree::
   :maxdepth: 1

   deployment/installation
   deployment/operations
   deployment/support
   deployment/load_test_results
   deployment/reference
   deployment/licensing

Programming and API's
=====================

..  toctree::
    :maxdepth: 2

    programming/index

**API Reference**. The `API Reference`_ is generated from the source.

.. _`API Reference`: ../../../apidoc/xxx/index.html

..  note::
    The API reference must be built with `Epydoc`_.

    .. _`Epydoc`: http://epydoc.sourceforge.net/

Management
==========

.. toctree::
   :maxdepth: 2
   :glob:

   management/*


Indices and tables
==================

* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

SVN Revision
============

::

    $Revision: 319 $
注意,我们不“包括”API,我们只是用普通的HTML链接引用它

Sphinx有一个非常酷的附加组件,叫做automodule,它从Python模块中提取docstring

<强>更新< /强>狮身人面像1,C和C++支持。 看看XML方法。

如前所述

    <狮身人面像本地C++支持与突出/格式化/引用有关,而不是代码文档提取< /LI>
  • 从chrisdew引用的讨论中发展而来
[在下面插入编辑]:

我在多功能10k上测试了doxygen+breathe+sphinx工具链 由10个不同的模块/域组成的C++库。我的屁股 行是:

  • 尚未完全可用
  • 但请继续关注
  • 最重要的是,考虑一下自己花点时间。 您目前正在寻找一个值得一试的有价值的OSS项目 你的时间 让我详细阐述以下几点:

  • 我在以下方面有问题:

    • doxygen标记中的Latex标记(目前不受支持,但应易于实现)
    • 一些解析器错误(多个函数头定义),这似乎会导致 sphinx解析器中的错误,但是如果我测试它们,就不会有问题 在狮身人面像C++代码块直接。不知道修复的难度, 但这是一个严重的功能破坏
    • 重载标识符有一些问题。似乎有一些支持 用于寻址不同类中具有相同名称的函数 和/或名称空间和/或doxygen xml输出文件。但是显示或链接到 单个类中10个重载构造函数中的一个似乎是 不可行的自动取款机。在引用/链接的情况下,甚至有一个并行的 (可能是暂时的)对狮身人面像水平面的限制,呼吸可能会也可能不会 能够四处工作
    • 目前无法显示所有(或所有受保护/专用) 班级成员。这是通过另一个补丁引入的 而且一定是很容易修复的
    • 在更一般的意义上,请注意,它是通向Doxygen的桥梁 xml输出。这一点不应被理解为 确切地输出doxygen的功能,仅限于上述限制。 相反,它为你提供了确切的,而不是更多,而不是更少的,实现目标的可能性

      • 将一个doxygen输出域中的所有内容转储到一个巨大的页面上
      • 显示特定函数、成员、结构、枚举、typedef或类, 但必须手工指定。github上有一个叉子 它可能想要也可能不想要解决这个整体概念问题,但是 没有关于未来的暗示
  • 在我看来,一个功能齐全的呼吸将填补一个重大的空白,并且 开辟一条相当凉爽的道路。所以它值得一看,仅仅是因为 潜在收益

  • 悲哀的是,通过造物主的维护似乎会严重下降 未来因此,如果你在一家公司工作,并且能够说服 你的老板,呼吸会适合他,或者有一些空闲时间和 寻找一个真正有价值的项目,考虑给它一个叉!
  • 作为最后一个指针,还要注意sphinx的contrib项目, 这可能会提供一个中间解决方案:建立一个像 引用(css样式匹配)旧doxygen文档的结构 (我想你甚至可以把同样的头球射入斯芬克斯和球的顶部。) doxygen的外观和感觉文档)。这样,您的项目将保持 和狮身人面像的亲和力,当呼吸完全在那个里时,你们就准备好了
    跳上去。但是再一次:考虑一下,如果你的计划符合你的意愿,就去呼吸一些爱。< / P >太好了,谢谢。你有什么例子来评论你的课堂和方法,所以狮身人面像读它们?不是C++评论。Sphinx只能在Python模块中查找autodoc注释。如果doxGEN可以从C++文件中提取注释块,那么可以在注释块中使用RealStuttudTrand,并从DoxEngto到狮身人面像创建某种工作流。那么,如果在C代码中没有找到AutoDoc注释,为什么要使用像狮身人面像这样的系统?我天真的理解是,提取评论的能力是人们使用这些系统的主要原因。@AndyL:请阅读斯芬克斯发行说明。版本1支持C和C++。@所有的,请阅读我的文章关于C++代码的提取和解决方法,最后你用狮身人面像来做C++项目吗?如果是这样的话,你的经历如何?上面的链接似乎不再有效,这个链接有效:希望它就是你提到的:)