gpt4 book ai didi

javascript - 使用 Doxygen 生成 JavaScript 文档

转载 作者:行者123 更新时间:2023-12-03 08:08:02 24 4
gpt4 key购买 nike

我在我的项目中使用 PHP 和 JavaScript,我完全使用 netbeans 7.0.1 编写代码。我真的很喜欢 netbeans 如何包含和使用 JavaDoc 注释样式,包括 PHP 和 JS 代码。

现在,我想从 PHP 以及 JS 代码生成代码文档。我知道有几种方法可以做到这一点,但我的主要目标是将两个部分的文档放在一个文档中。

进一步解释:例如,我可以使用 Doxygen 处理 PHP 文件和 JsDoc 处理 JS 文件。结果是,我现在在两个不同的文件夹中有两个不同的文档——这是我不喜欢的结果。正如我所提到的,我希望将两者都放在一个文档中。

所以,首先我通过使用 doxygen 帮助程序 js2doxy.pl (http://jsunit.berlios.de/internal.html) 来解决这个问题,但这不够灵活。它适用于“普通”定义的函数,但不适用于匿名 js 函数。

经过一番尝试,我想为什么不改变文档的 FILE_PATTERNS 选项来处理 .js 文件,因为注释的 JavaDoc 样式与 PHP 使用的几乎相同。好吧,结果看起来很有希望,但是文档中缺少一些功能。

以下是示例:

/**
* Definitions for the languages.
* @memberof Language
*/
Language.Definitions = (function()
{
...
}

这很好用,我可以看到文档。但:
**
* Definitions for the languages
* @memberof Language
*/
Language.Definitions = (function()
{
var Translations = {};

/**
* Replaces strings.
* @memberof Language
* @param string translation Translation string
* @param array parameters (optional) List of parameters
*
* @return string replaced string
*/
function replaceStrings(translation, parameters)
{
...
}

在此示例中,我看到了 Language.Definitions 的文档,但没有看到 replaceStrings() 的文档。你有什么想法,我做错了什么? JsDoc 很好地处理了相同的构造。

另外(Language.Definitions 的一部分)...
... 
return {
/**
* Initialize translations
*
* @memberof Language
*/
initTranslations: function()
{
...
}
...
}

...文档中未显示。

我也不介意有人向我展示如何最好地将 doxygen 和 JsDoc 的两个输出合并到一个文档中。

提前非常感谢!

问候!

最佳答案

见特殊指令\fn在 doxygen 中显式声明函数,最好在源头中,如下所示:

/*!
* Language
* Declare the root class
* \Class Language
*/

/*!
* definitions is a property in the Language class
* \property Definitions definitions
*/

/*!
* Document the Definitions static class that used as property in the Language class
* \Class Definitions
*/

/*!
* Replaces strings
* Document the static method for the Definitions class
* \fn string replaceStrings(translation, parameters)
* \memberof Definitions
* \param string translation Translation string
* \param array parameters (optional) List of parameters
* \return string replaced string
*/

Language.definitions = (function()
{
var Translations = {};

function replaceStrings(translation, parameters)
{
...
}

关于javascript - 使用 Doxygen 生成 JavaScript 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7320464/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com