C 和 doxygen - 删除变量文档的重复项

2024-01-15

我正在使用 doxygen 记录我的 C 代码。为了更好的可读性,我将每个 .c/.h 文件对(有时还有更多文件)的文档分组为defgroup and addtogroup (see c 中的 doxygen:定义分组 https://stackoverflow.com/questions/27840411/doxygen-in-c-grouping-of-defines)。 文件页面看起来不错,但在组/模块页面上,所有变量文档都会加倍。在头文件中声明(使用 extern)并在 .c 文件中定义(在摘要和描述部分中)的每个变量都有 2 个条目。函数和其他所有内容都只列出一次......

如何删除组/模块页面上的重复变量文档?

我的源文件如下所示: .h 文件:

/** @file
*   blabla
*   @author bla
*/
/// @addtogroup MY_GRP
/// @{
#define SOMEDEF1 1
/// @name Special defs
/// @{
#define SOMEDEF2 2
/// @}
enum someenum {
    foo,
    bar
};

extern int some_variables;

extern void some_proc(int baz);

/// @}

.c file:

/** @file
 *  blabla
 *  @author bla
 */
/** @defgroup MY_GRP A test group.
  * Description
  */
/// @{
#include "my.h"

/// Important variable.
int some_variable;

/** Important proc
 *  Description
 *  @param baz need this
 */
void some_proc(int baz) {
// code
}

/// @}

无法真正解决问题,但找到了一个解决方法: 我用INPUT_FILTER选项与grep -Eve "extern"(cygwin) 对所有带有“extern”函数或变量声明的行进行排序。 因为我只记录实际的函数实现和变量定义,所以前面带有“extern”的所有内容都没有文档,并且可以从 doxygen 中删除。 这确实还删除了 doxygen 输出中变量的所有重复条目。

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

C 和 doxygen - 删除变量文档的重复项 的相关文章

随机推荐

  • 错误:找不到 Bower 组件“ionic-platform-web-client”

    我在 node js 命令提示符 ionic add ionic platform web client 上运行此命令并收到此错误 无法找到 Bower 组件 ionic platform web client 你确定它存在吗 CLI v1
  • 如果没有“std”包含,你能在 C 中做什么?它们是“C”的一部分,还是只是库?

    如果这是一个主观或重复的问题 我深表歉意 搜索起来有点尴尬 所以我不确定要包含哪些术语 我想知道的是 当你不包含标准库时 C 中的基本基础工具 函数是什么stdio and stdlib 如果没有我该怎么办printf fopen etc
  • 使用scale_size_continuous,点面积是否不会随大小线性增加?

    在 ggplot2 3 1 0 中 我很困惑如何scale size continuous作品 帮助文档似乎表明尺寸比例正在控制点区域 trans identity 但很明显 事实并非如此 library tidyverse make da
  • Web 部署的 TFS 2012 构建定义忽略项目文件中定义的参数

    我正在尝试设置一个 TFS 2012 构建定义 该定义将构建一个解决方案并在该解决方案中部署多个 Web 应用程序 我碰到本文 http chriskadel com 2013 03 20 using tfs to build and de
  • 合并pandas数据框,进行列操作

    我搜索了档案 但没有找到我想要的东西 可能是因为我真的不知道该使用什么关键词 这是我的问题 我有一堆数据帧需要合并 我还想用数据帧的总和来更新列子集的值 例如 我有两个数据框 df1 和 df2 df1 pd DataFrame 1 2 1
  • 正则表达式查找完整的文本并插入空格

    我正在建立一个论坛 目前处于测试阶段 用户已经开始利用某些东西 例如发布没有空格的长文本字符串 这会拉伸屏幕并破坏某些样式 我刚刚开始使用这段代码并且运行良好 int charIndex 0 int noSpaceCount 0 forea
  • appengine 上的聊天应用程序

    我愿意在 App Engine 上实现一个聊天网站 但我发现App Engine不允许我使用服务器推送 因为它会在 30 秒后终止响应 那么还有什么方法可以 使用 轮询会导致不良用户吗 经验 意味着用户将 需要等待一段时间才能 从服务器检索
  • CSS 缩小并用 gulp 重命名

    我有一个像这样的变量 var files foo css foo min css bar css bar min css 我想要吞咽为我做的是minify文件然后rename for me 但任务目前写为 对于一个文件 gulp task
  • numpy 数组中数字前的冒号

    我正在使用相机将原始数据存储在 numpy 数组中 但我不知道 numpy 数组中数字前面的冒号意味着什么 import numpy as np import picamera camera picamera PiCamera camera
  • Android:当url包含http时,在设置WebViewCore之前不支持removeMessages(int What = 107)

    我编写了一个简单的程序 它将网页加载到网络视图中 URL 包含 http 并且 Web 视图工作得很好 除了这个恼人的 107 错误之外 大多数人说这是因为你的 url 不包含 http 标头 我在网上搜索了所有内容 但找不到与我的情况类似
  • 如何显示完整的数组?

    我得到这个error 对象对象 对象对象 对象对象 我想像这样显示完整的数组 无名氏 安娜 史密斯 彼得 琼斯 h2 Create Object from JSON String h2 p p
  • 如何从函数返回 &Path?

    我试图了解如何编写正确的 Rust 代码 但我认为我可能高估了编译器理解对象生命周期的能力 这是我期望它工作的代码 use std path Path use std env use rusqlite SqliteConnection st
  • Vlookup复制单元格的颜色

    我有以下表格 A B C D 1 Bob 1 6 Football 2 Nate 3 7 Baseball 3 Silver 3 2 Baseball 4 Box 7 1 Cycling A D Bob Nate 我可以成功使用Vlooku
  • “TypeError:‘StratifiedShuffleSplit’对象不可迭代”的原因可能是什么?

    我必须交付一个机器学习项目 我收到了一个名为tester py 在另一个文件中编写完代码后 我必须运行 tester py 才能查看结果 但出现错误 TypeError StratifiedShuffleSplit object is no
  • mysql 选择内部限制

    select id from tableABC limit select count id from tableCBA 1 如果我需要在限制中进行选择 如我在示例代码中所示 我该如何在 mySql 中执行此操作 这只是本论坛的简化代码 否则
  • 设置 MaxTextWidth 时出现 WPF 字对齐问题

    我正在使用 FormattedText 来显示文本 我需要根据提供的选项水平对齐文本 一切正常 直到我设置 MaxTextWidth 属性 我需要它来进行文字修剪 如何在启用文字修剪的情况下对齐文本 FormattedText format
  • 我如何在 C# 中执行 sscanf

    我如何在 C 中执行此操作 int a b c sscanf astring d d d a b c 最少的代码和依赖项是更好的 是否有一些内置的正则表达式的东西 我正在使用 c 4 0 如果像 scannf 一样 您愿意假设用户将提供完全
  • 在 Xcode 中,如何在块内添加断点?

    我有一个返回块的方法 我想在块内添加一个断点 在 Xcode 中 在块内的行上添加断点会导致执行在方法返回时暂停 而不是在执行块时暂停 如何在块内添加断点 我遇到了同样的困难 直到我尝试使用 Xcode 4 的 LLDB 调试器 转到 产品
  • 如何在命令行中使用VLC保存视频流?

    我正在尝试在 Window 7 Basic 的命令行中使用 VLC 保存在线视频 以下是我尝试过并部分起作用的一些事情 I movies gt vlc http media ch9 ms ch9 7492 a92ae0a6 7b81 411
  • C 和 doxygen - 删除变量文档的重复项

    我正在使用 doxygen 记录我的 C 代码 为了更好的可读性 我将每个 c h 文件对 有时还有更多文件 的文档分组为defgroup and addtogroup see c 中的 doxygen 定义分组 https stackov