【问题标题】:Replace Doxygen "Generated On" timestamp with timestamp of file将 Doxygen “Generated On”时间戳替换为文件的时间戳
【发布时间】:2015-07-19 06:29:14
【问题描述】:

问题

我想用显示文件时间戳的 JavaScript(或其他一些动态方式)替换嵌入在 Doxygen 生成的 html 文件中的硬编码时间戳。

我只需要在 HTML 中支持这个。

这看起来是可行的,因为 Doxygen 在配置文件中提供了 HTML_FOOTER 选项。大概我会用它来将 JavaScript 添加到文件中。

我想这样做有两个原因:

  1. 我每次生成时都不会更改文件,因此我不会在文件的更改历史记录中生成混乱。

  2. 将日期设为关于上次更改时间的实际有用日期。

我目前的方案是在提交源代码时生成文档。生成的 html 会同步到服务器以供显示。 Rsync 足够聪明,只移动已更改的代码,因此服务器上文件的时间戳不会更改,除非文件内容发生更改。现在内容每次都在变化,因为 Doxygen 生成的时间戳每次都在变化。

这是我尝试过的:

我使用以下 JavaScript 片段代替 Doxygen 生成的时间戳:

<script> document.write(new Date(document.lastModified)); </script>

以下是我将其放入代码中的步骤:

要求 Doxygen 使用以下命令生成页眉和页脚模板:

doxygen -w html header.html footer.html extradoxygen.css

修改footer.html文件,用上面的JavaScript替换时间戳。

编辑了 Doxyfile 并输入了修改这一行:

HTML_FOOTER            = footer.html

生成 Doxygen 并注意时间戳对应文件的时间戳。

但这不起作用,因为每次刷新浏览器时时间戳都会改变。

【问题讨论】:

    标签: timestamp doxygen


    【解决方案1】:

    将页脚中的$date 替换为服务器端包含的修改日期。从: Apache SSI Includes

    "文件的修改日期 本文档最后修改&lt;!--#flastmod file="index.html" --&gt;"

    Example Usage

    【讨论】:

    • 虽然这个答案假设我使用的是 Apache(因此不是通用的),但我接受这个是因为它是最好的(唯一的)答案。
    猜你喜欢
    • 1970-01-01
    • 2020-07-06
    • 1970-01-01
    • 2022-07-20
    • 2016-03-11
    • 2013-04-07
    • 2011-01-15
    • 2019-08-15
    • 2020-10-19
    相关资源
    最近更新 更多