有人使用 Sphinx 来记录 C++ 项目吗? [关闭]

2023-12-21

Sphinx https://www.sphinx-doc.org是一个新的 Python 文档工具。看起来非常好。我想知道的是:

  • 这对于记录 C++ 项目有多合适?
  • 是否有任何工具可以将现有文档(例如 doxygen)转换为 Sphinx 格式?
  • 是否有使用 Sphinx 的 C++ 项目的在线/可下载示例?
  • 使用过 Sphinx 的人有什么建议吗?

如上所述here https://stackoverflow.com/questions/2377985/doxygen-c-comment-string-parser-in-python and here https://stackoverflow.com/questions/2743687/sphinx-in-clinux,

  • Sphinx 原生 C++ 支持与突出显示/格式化/引用相关,而不是代码内文档提取
  • breathe http://michaeljones.github.com/breathe/index.html是从 chrisdew 引用的讨论中发展出来的

[下面插入编辑]:

我在 multi-10k 上测试了 doxygen+breathe+sphinx 工具链 C++ 库由 10 个不同的模块/域组成。我的底 线路是:

  1. 尚未完全可用
  2. 但继续观察
  3. 最重要的是,考虑自己花一些时间,如果 您目前正在寻找一个有价值的 OSS 项目,值得 你的时间。

让我详细阐述一下这几点:

  1. 我遇到了以下问题:

    • doxygen 标记中的 Latex 标记(当前不支持,但应该很容易实现)
    • 一些解析器错误(几个函数头定义),这似乎导致 sphinx 解析器中出现错误,但如果我测试它们,不会造成任何麻烦 直接在sphinx c++代码块中。不知道修复的难度, 但这是一个严重的功能破坏。
    • 标识符重载会出现一些问题。好像还有一些支持 用于寻址不同类中具有相同名称的函数 和/或命名空间和/或 doxygen xml 输出文件。但显示或链接到 单个类中 10 个重载构造函数中的一个似乎是 ATM机不可行。在参考/链接的情况下,甚至有一个并行的 (也许是暂时的)对呼吸的狮身人面像水平的限制可能会也可能不会 能够解决。
    • 目前无法显示全部(或所有受保护/私有) 一个班级的成员。这是通过另一个修复程序引入的 并且修复起来一定很简单。
    • 从更一般的意义上来说,请注意 ATM 是通往 Doxygen 的桥梁 xml 输出。不应该这样理解它 准确输出 doxygen 的功能,只是有上述限制。 相反,它为您提供了准确的、不多也不少的可能性:

      • 将一个 doxygen 输出域中的所有内容转储到一个大页面上
      • 显示特定的函数、成员、结构、枚举、typedef 或类, 然而,必须手动指定。 github上有一个fork 它可能想也可能不想解决这个总体概念问题,但是 那里没有未来的暗示。
  2. 在我看来,功能齐全的呼吸将填补一个重大空白 开辟一条相当酷的路。所以值得一看,只是因为 潜在收益。

  3. 遗憾的是,通过创建者进行的维护似乎会严重下降 将来。所以如果你在一家公司工作并且能够说服 你的老板呼吸会适合他,或者有一些空闲时间并且 寻找一个真正有价值的项目,考虑给它一个叉子!

作为最后一点,还请注意doxylink https://bitbucket.org/birkenfeld/sphinx-contrib/src狮身人面像的贡献项目, 这可能提供一个中间解决方案:建立一个类似教程的周围 引用(css 样式匹配)旧 doxygen 文档的结构 (我认为你甚至可以将相同的标头注入 sphinx 并在 doxygen 文档的外观)。这样,您的项目就可以保持 与狮身人面像有密切关系,当呼吸完全存在时,你就准备好了 跳上。但再次强调:如果符合你的议程,请考虑表达一些爱。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有人使用 Sphinx 来记录 C++ 项目吗? [关闭] 的相关文章

  • C# 存档中的文件列表

    我正在创建一个 FileFinder 类 您可以在其中进行如下搜索 var fileFinder new FileFinder new string C MyFolder1 C MyFolder2 new string
  • 类型约束

    我有以下类层次结构 class Header IEnumerable
  • IQueryable 单元或集成测试

    我有一个 Web api 并且公开了一个端点 如下所示 api 假期 name name 这是 Web api 的控制器 get 方法 public IQueryable
  • 为什么这个二维指针表示法有效,而另一个则无效[重复]

    这个问题在这里已经有答案了 这里我编写了一段代码来打印 3x3 矩阵的对角线值之和 这里我必须将矩阵传递给函数 矩阵被传递给指针数组 代码可以工作 但问题是我必须编写参数的方式如下 int mat 3 以下导致程序崩溃 int mat 3
  • 为什么我的单选按钮不起作用?

    我正在 Visual C 2005 中开发 MFC 对话框应用程序 我的单选按钮是 m Small m Medium 和 m Large 它们都没有在我的 m Summary 编辑框中显示应有的内容 可能出什么问题了 这是我的代码 Pizz
  • 如何获取分类数据的分组条形图

    I have a big dataset with information about students And I have to build a graph of dependencies between different value
  • C++ int 前面加 0 会改变整个值

    我有一个非常奇怪的问题 如果我像这样声明一个 int int time 0110 然后将其显示到控制台返回的值为72 但是当我删除前面的 0 时int time 110 然后控制台显示110正如预期的那样 我想知道两件事 首先 为什么它在
  • 保护 APK 中的字符串

    我正在使用 Xamarin 的 Mono for Android 开发一个 Android 应用程序 我目前正在努力使用 Google Play API 添加应用内购买功能 为此 我需要从我的应用程序内向 Google 发送公共许可证密钥
  • 高效列出目录中的所有子目录

    请参阅迄今为止所采取的建议的编辑 我正在尝试使用 WinAPI 和 C 列出给定目录中的所有目录 文件夹 现在我的算法又慢又低效 使用 FindFirstFileEx 打开我正在搜索的文件夹 然后我查看目录中的每个文件 使用 FindNex
  • WPF DataGridTemplateColumn 组合框更新所有行

    我有这个 XAML 它从 ItemSource 是枚举的组合框中选择一个值 我使用的教程是 http www c sharpcorner com uploadfile dpatra combobox in datagrid in wpf h
  • 在屏幕上获取字符

    我浏览了 NCurses 函数列表 似乎找不到返回已打印在屏幕上的字符的函数 每个字符单元格中存储的字符是否有可访问的值 如果没有的话Windows终端有类似的功能吗 我想用它来替换屏幕上某个值的所有字符 例如 所有a s 具有不同的特征
  • C++ new * char 不为空

    我有一个问题 我在 ASIO 中开发服务器 数据包采用尖头字符 当我创建新字符时 例如char buffer new char 128 我必须手动将其清理为空 By for int i 0 i lt 128 i buffer i 0x00
  • Django 将 JSON 数据传递给静态 getJSON/Javascript

    我正在尝试从 models py 中获取数据并将其序列化为views py 中的 JSON 对象 模型 py class Platform models Model platformtype models CharField max len
  • 在 Windows Phone silverlight 8.1 上接收 WNS 推送通知

    我有 Windows Phone 8 1 silverlight 应用程序 我想使用新框架 WNS 接收通知 我在 package appxmanifest 中有
  • 如何使用 enumerate 来倒数?

    letters a b c 假设这是我的清单 在哪里for i letter in enumerate letters 将会 0 a 1 b 2 c 我怎样才能让它向后枚举 如 2 a 1 b 0 c 这是一个很好的解决方案并且工作完美 i
  • Python 相当于 Scala 案例类

    Python 中是否有与 Scala 的 Case Class 等效的东西 就像自动生成分配给字段而无需编写样板的构造函数一样 当前执行此操作的现代方法 从 Python 3 7 开始 是使用数据类 https www python org
  • 我可以在“字节数”设置为零的情况下调用 memcpy() 和 memmove() 吗?

    当我实际上没有什么可以移动 复制的时候 我是否需要处理这些情况memmove memcpy 作为边缘情况 int numberOfBytes if numberOfBytes 0 memmove dest source numberOfBy
  • 如何减少具有多个单元的 PdfPTable 的内存消耗

    我正在使用 ITextSharp 创建一个 PDF 它由单个 PdfTable 组成 不幸的是 对于特定的数据集 由于创建了大量 PdfPCell 我遇到了内存不足异常 我已经分析了内存使用情况 我有近百万个单元格的 1 2 在这种情况下有
  • Objective-C / C 给出枚举默认值

    我在某处读到过关于给枚举默认值的内容 如下所示 typedef enum MarketNavigationTypeNone 0 MarketNavigationTypeHeirachy 1 MarketNavigationTypeMarke
  • 如何将十六进制字符串转换为无符号长整型?

    我有以下十六进制值 CString str str T FFF000 如何将其转换为unsigned long 您可以使用strtol作用于常规 C 字符串的函数 它使用指定的基数将字符串转换为 long long l strtol str

随机推荐

  • Jquery UI 可调整大小 - 调整放置在 iframe 上的 div 的大小

    如果你查看这个 jsbin http jsbin com efosed 5 edit http jsbin com efosed 5 edit然后你按 Run with JS 就会出现一个可以用 jquery ui 调整大小的 div 一切
  • Azure Functions 部署时无法运行

    我是新来的 如果帖子不完整 抱歉 我正在尝试在 azure 上部署一个与 blob 交互的 python 脚本 该脚本在本地运行良好 我可以与我的存储帐户交互 上传和下载 blob 但是当我在 azure 上部署我的函数时 它不会运行 日志
  • bash 使用序列号批量重命名文件夹和子文件夹中的文件

    我需要一个 bash 脚本来执行以下操作 对于文件夹及其子文件夹中存在的特定类型的每个文件 它都会在前面添加一个序列号 4 位数字 后跟一个分隔符 例如我有 Queen 1986 A Kind of Magic 01 One vision
  • 流程图 - 动态更改 y 轴

    我是飞行新手 但很快就设置了我的时间图 这是我基于时间的情节 plot placeholder d xaxis mode time minTickSize 1 month min new Date 2008 05 20 getTime ma
  • 为什么我需要将“get”包装在 J“lapply”调用中的虚拟函数中?

    我希望通过类或常见模式匹配等标准来处理列grep 我的第一次尝试没有成功 require data table test table lt data table a 1 10 ab 1 10 b 101 110 this does not
  • 在 Netbeans 内运行时停止 Tomcat

    我使用 NetBeans 运行 Apache Tomcat 6 当我的代码出现故障 例如 NullPointerException 时 tomcat 会失败并且不会运行任何其他请求 我的问题是我无法让 tomcat 停止 我必须重新启动整个
  • 查找 Java 应用程序中的连接泄漏

    我有一个应用程序在一段时间后开始出现内部服务器错误 我询问的一些人告诉我 这可能是因为我的应用程序中的连接泄漏 我开始搜索并发现这个查询来模拟连接泄漏 select LAST CALL ET SQL TEXT username machin
  • 堆积条形图未正确更新 d3js

    In this https plnkr co edit X7JYRLCKgBnasP86FRgQ p preview堆积条形图我添加了一个平分线和一个自定义x invert函数 以便您可以读取每个月的值 问题是 当我添加此自定义函数时 团队
  • OpenXML SDK 2.0 与 Aspose 在 .NET 中生成服务器端 Word 2007 文档

    我将在 Net 中启动一个服务器端办公自动化项目 以下是计划的主要活动 创建一个word文档 使用现有的包含封面 页眉 页脚 目录的 Word 文档模板 保存存档 嵌入文件并调整大小 HTML 图像 Word Excel TOC 生成和格式
  • 我无法从数据库 PostgreSQL 生成 Hibernate 映射文件和 POJO?

    已经在数据库 PostgreSQL 中创建了表和关系 但是当我想生成 Hibernate 映射文件和 POJO 时 它们没有生成 我应用了所有适当的步骤hibernate cfg xml一代和hibernate reveng xml 我认为
  • 如何在没有数据库的情况下配置 Ruby on Rails?

    对于当前不需要数据库的小型网站项目来说 使用 Ruby on Rails 会很方便 我知道我可以在 MySQL 中创建一个空数据库并从那里开始 但是有人知道在没有数据库的情况下运行 Rails 的更好方法吗 Thanks For Rails
  • 对于矩阵向量乘法,行优先排序是否更有效?

    If M是一个 n x m 矩阵并且v and u是向量 那么就索引而言 矩阵向量乘法看起来像u i sum M i j v j 1 lt j lt m Since v是一个向量 对于面向数值计算的语言 其元素可能存储在连续的内存位置中 如
  • python 在pdf文件中搜索

    这是pdf结构的一部分 5 0 obj lt lt Length 56 gt gt stream BT F1 12 Tf 100 700 Td 15 TL JavaScript example Tj ET endstream endobj
  • matplotlib中如何限制y轴高度?

    如何限制matplotlib图中y轴的高度 我正在尝试显示 x 轴 并降低该一维图的图形高度 我尝试过设置刻度 图形大小 tight layout 边距等 但没有成功 另外 无论我选择什么限制 更改 ylimit 都会跨越整个图形高度 im
  • Maven 故障安全插件不运行并行测试

    我有一个 Maven POM 文件 当我提供并行执行选项时 我在日志中没有看到任何并行执行的迹象 XML 调试让我抓狂 有什么想法这里出了什么问题吗
  • 查找两条曲线之间的重叠面积

    我一直在努力寻找解决方案来找到两条曲线之间的重叠区域 我处理的不是具有已知参数的概率密度函数 而是通过平滑经验数据点获得的曲线 我发现的唯一提示是计算不重叠的区域 如这段代码 来自here https www researchgate ne
  • 使用 python 求解 7000x7000 线性系统时的最佳性能方法

    我需要一种有效的方法来反转 python 中的 7000x7000 空气动力学影响系数 密集 矩阵 在使用 FORTRAN 例程之前 我已经开始使用 LAPACK 中的 LU 分解例程来处理问题 我已经看到它在其他相关应用程序中的使用非常有
  • 用户输入数字时的 Javascript 计算器

    我是 Javascript 新手 但我正在尝试在我的网站上实现一些功能 用户可以在其中输入数量 并且小计会在输入时动态更新 例如 如果每件物品的价格为 10 美元 并且用户在文本字段中键入 5 我希望它在文本框旁边显示 50 美元 非常简单
  • REST - 使用 Spring MVC 返回创建的对象

    我有一个 REST 调用 它接受一个 JSON 对象 比如说一个人 创建此对象 经过验证并保存到数据库 后 我需要返回新创建的 JSON 对象 我认为标准做法是返回201 Accepted而不是立即返回对象 但我的应用程序立即需要新创建的对
  • 有人使用 Sphinx 来记录 C++ 项目吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi