Xcode 5の新機能 の1つは、独自のコードを特別なコメント構文で文書化する機能です。形式はdoxygenに似ていますが、 これらの機能 のサブセットのみをサポートしているようです。
サポートされているコマンドとサポートされていないコマンド
使用法はdoxygenと異なりますか?
Xcode 5.0.2の時点で見つけたすべてのオプションの例を次に示します
それはこのコードで生成されました:
/** First line text.
Putting \\n doesn't create a new line.\n One way to create a newline is by making sure nothing is on that line. Not even a single space character!
@a Italic text @em with @@a or @@em.
@b Bold text with @@b.
@p Typewritter font @c with @@p or @@c.
Backslashes and must be escaped: C:\\foo.
And so do @@ signs: user@@example.com
Some more text.
@brief brief text
@attention attention text
@author author text
@bug bug text
@copyright copyright text
@date date text
@invariant invariant text
@note note text
@post post text
@pre pre text
@remarks remarks text
@sa sa text
@see see text
@since since text
@todo todo text
@version version text
@warning warning text
@result result text
@return return text
@returns returns text
@code
// code text
while (someCondition) {
NSLog(@"Hello");
doSomething();
}@endcode
Last line text.
@param param param text
@tparam tparam tparam text
*/
- (void)myMethod {}
注:
/** block */
、/*! block */
、または///
または//!
で始まる必要があります。@
( headerdoc style)または\
( doxygen style)プレフィックスで動作します。 (つまり、@b
と\b
は両方とも同じことをします。)@property
テキストの前に来る必要があります。)その後、同じ行で/*!<
、/**<
、//!<
、///<
を使用できます。@returns
を除き、有効なコマンドであることを示すために濃い緑色のテキストで表示されます。これにより、簡単なテキストが表示されます(書式設定なし)。短いテキストが存在しない場合、最初の@blockまでのすべてのテキストの連結が表示されます。存在しない場合(たとえば、@ returnで始まる)、すべての@コマンドを取り除くすべてのテキストを連結します。
(最初のスクリーンショットを参照してください。)
Xcode 5のコマンドはDoxygenと互換性があるため、Doxygenをダウンロードして使用してドキュメントファイルを生成できます。
Doxygenの一般的な紹介とObjective-Cコードを文書化する方法については、 このページ は良いリソースのようです。
サポートされているいくつかのコマンドの説明:
@brief
:説明フィールドの先頭にテキストを挿入し、コード補完中に表示される唯一のテキストです。以下は機能しません:
\n
:改行を生成しません。改行を作成する1つの方法は、その行に何もないことを確認することです。単一のスペース文字でさえありません!\example
以下はサポートされていません(それらは濃い緑色で表示されません):
Appleは、ドキュメントでのみ機能する予約キーワードと思われるものを使用しています。それらは濃い緑色で表示されますが、Appleのように使用できないようです。 Appleの使用例は、AVCaptureOutput.hなどのファイルで見ることができます。
これらのキーワードの一部のリストは次のとおりです。
せいぜい、キーワードは[説明]フィールドに新しい行を作成します(例:@discussion)。最悪の場合、キーワードとそれに続くテキストはクイックヘルプに表示されません(例:@class)。
Swift 2. は次の構文を使用します。
/**
Squares a number.
- parameter parameterName: number The number to square.
- returns: The number squared.
*/
@param
が- parameter
になったことに注意してください。
ドキュメントに箇条書きを含めることもできます。
/**
- square(5) = 25
- square(10) = 100
*/
意味のある:
ドキュメントの最新の変更が表示される前に、プロジェクトをビルドする必要がある場合があります。
時にはこれで十分ではなかった。通常、Xcodeを閉じてプロジェクトを開いてバックアップすると、これらのケースが改善されます。
また、.hファイルと.mファイルで異なる結果が得られます。ドキュメントコメントがヘッダーファイルにある場合、新しい行を取得できません。
Swift 2.0のフォーマットのほとんどが変更されました(Xcode7ß3以降、ß4でも同様)
:param: thing description of thing
の代わりに(Swift 1.2にあったように)
現在は- parameter thing: description of thing
です
ほとんどのキーワードは、- [keyword]: [description]
ではなく:[keyword]: [description]
に置き換えられました。現在、機能しないキーワードのリストには、abstract
、discussion
、brief
、pre
、post
、sa
、see
、availability
、class
、deprecated
、method
、property
、protocol
、related
、ref
。