私はプロジェクトでPHPとJavaScriptを使用していますが、これは完全にnetbeans 7.0.1でコーディングしています。netbeansがJavaDocコメントスタイルを含めて使用する方法が本当に好きです。両方ともPHPおよびJSコード。
今、私はPHPとJSコードからコードのドキュメントを生成したいと思います。それを行う方法はいくつかあることを知っていますが、私の主な目的は、両方の部分のドキュメントを作成することです- oneドキュメント。
さらに説明すると、たとえば、Doxygenを使用してPHPファイルとJsDocを処理してJSファイルを処理できます。その結果、2つの異なるフォルダーに2つの異なるドキュメントが作成されます。 -気に入らない結果です先ほど触れたように、両方を1つのドキュメントにまとめます。
そのため、最初にdoxygenヘルパーjs2doxy.pl(http://jsunit.berlios.de/internal.html)を使用して道を進みましたが、それは十分な柔軟性がありませんでした。これは「通常の」定義済み関数ではうまく機能しますが、匿名のjs関数では機能しません。
少し試してみた後、コメントのJavaDocスタイルはPHPで使用されているものとほぼ同じであるため、ドキュメントのFILE_PATTERNSオプションを変更して.jsファイルを処理しないのではないかと考えました。そして、結果は有望に見えます、しかしいくつかの関数がドキュメントにありません。
次に例を示します。
/**
* 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の2つの出力を1つのドキュメントに最適にマージする方法を誰かが教えてくれてもかまいません。
よろしくお願いします!
こんにちは!
次のように、doxygenで、できればsourceのヘッダーで関数を明示的に宣言するには、特別なコマンド \ fn を参照してください。
/*!
* 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)
{
...
}