Xcode 5에서 사용할 수있는 새로운 설명서 명령은 무엇입니까? [닫은]


186

Xcode 5의 새로운 기능 중 하나는 특별한 주석 구문으로 자신의 코드를 문서화하는 기능입니다. 형식은 doxygen과 유사하지만 해당 기능 의 서브 세트 만 지원하는 것으로 보입니다 .

어떤 명령이 지원되고 어떤 명령이 지원되지 않습니까?
사용법 중 독소와 다른 점이 있습니까?

답변:


419

다음은 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 스타일) 또는 \( doxygen 스타일) 접두사로 작동합니다. (IE @b\b모두 같은 일을한다.)
  • 명령은 일반적으로 설명하는 항목 앞에옵니다. (당신이 재산을 문서화하려는 경우 즉, 주석이 앞에 와야합니다 @property텍스트입니다.) 그들은 함께 같은 줄에, 이후에 올 수 있습니다 /*!<, /**<, //!<, ///<.
  • 클래스, 함수, 속성변수 에 설명서를 추가 할 수 있습니다 .
  • 이 명령은 모두을 제외한 유효한 명령임을 나타 내기 위해 짙은 녹색 텍스트로 나타납니다 @returns.
  • 최신 문서 변경 사항이 나타나기 전에 프로젝트를 빌드하거나 Xcode를 다시 시작해야 할 수도 있습니다.

설명서를 볼 수있는 곳 :

1. 코드 작성 중에 간단한 텍스트가 표시됩니다.

여기에 이미지 설명을 입력하십시오

간단한 텍스트가 표시됩니다 (서식 없음). 간단한 텍스트가 없으면 첫 번째 @block까지 모든 텍스트의 연결을 보여줍니다. 존재하지 않는 경우 (예 : @return으로 시작) 모든 @ 명령을 제거하는 모든 텍스트를 연결합니다.

2. 식별자 이름을 옵션 클릭 :

여기에 이미지 설명을 입력하십시오

3. 빠른 도움말 관리자 패널에서

(첫 번째 스크린 샷 참조)

4. Doxygen에서

Xcode 5의 명령은 Doxygen과 호환되므로 Doxygen을 다운로드하여 사용하여 설명서 파일을 생성 할 수 있습니다.

기타 사항

Doxygen에 대한 일반적인 소개와 Objective-C 코드를 문서화하는 방법에 대해서는 이 페이지 가 좋은 자료 인 것 같습니다.

지원되는 일부 명령에 대한 설명 :

  • @brief: 설명 필드의 시작 부분에 텍스트를 삽입하며 코드 완료시 표시되는 유일한 텍스트입니다.

다음은 작동하지 않습니다.

  • \n: 개행을 생성하지 않습니다. 개행을 작성하는 한 가지 방법은 해당 행에 아무것도 없는지 확인하는 것입니다. 단일 공백 ​​문자도 아닙니다!
  • \example

다음은 지원되지 않습니다 (진한 녹색으로 표시되지 않음).

  • \인용하다
  • \ docbookonly
  • \ enddocbookonly
  • \ endinternal
  • \ endrtfonly
  • \ endsecreflist
  • \ idlexcept
  • \ mscfile
  • \ refitem
  • \ relatedalso
  • \ rtfonly
  • \ secreflist
  • \짧은
  • \단편
  • \ tableofcontents
  • \ vhdlflow
  • ~~
  • \ "
  • .
  • ::
  • \ |

Apple 예약 키워드 :

Apple은 문서에서만 작동하는 예약 키워드 인 것을 사용합니다. 짙은 녹색으로 보이지만 Apple처럼 사용할 수없는 것 같습니다. AVCaptureOutput.h와 같은 파일에서 Apple의 사용 예를 볼 수 있습니다.

이러한 키워드 중 일부는 다음과 같습니다.

  • @abstract, @availibility, @class, @discussion, @deprecated, @method, @property, @protocol, @related, @ref.

기껏해야 키워드가 설명 필드에 새 줄을 표시합니다 (예 : @discussion). 최악의 경우 키워드와 그 뒤에 나오는 텍스트는 빠른 도움말에 표시되지 않습니다 (예 : @class).


4
설명 주셔서 감사합니다. 잘만되면 애플은 그것을 Xcode 매뉴얼에 복사 할 것입니다;)
TheGrumpyCoda

3
\ 대신 @ 기호를 사용하면 작동합니다.
Drewsmits

8
훌륭한 컬렉션 +1! 빠른 도움말에서 다른 클래스의 빠른 도움말에 대한 링크를 추가하는 방법은 무엇입니까?
Selvin

3
@c다음과 같이 타자기 텍스트에 다음 단어를 표시하는 데 사용할 수도 있습니다 Returns an @c NSString or @c nil..
Matthew Quiros 2016 년

7
옵션 클릭 팝업에 URL을 표시하는 방법을 찾으셨습니까? 예를 들어, 옵션을 클릭 -[CADisplayLink addToRunLoop:forMode:]하면 설명에 다른 클래스에 대한 명명 된 링크가 포함됩니다 (그러나 웹 연결 URL도 유용하다고 생각합니다).
Zev Eisenberg

16

Swift 2.0 은 다음 구문을 사용합니다.

/**
        Squares a number.

        - parameter parameterName: number The number to square.

        - returns: The number squared.
    */

@param지금 어떻습니까 - parameter.

이제 문서에 글 머리 기호를 포함 할 수도 있습니다.

/**
        - square(5) = 25
        - square(10) = 100
    */

9

감각 :

최신 문서 변경 사항이 나타나기 전에 프로젝트를 빌드해야 할 수도 있습니다.

때때로 이것은 나에게 충분하지 않았습니다. Xcode를 닫고 프로젝트를 백업하면 일반적으로 이러한 경우가 해결됩니다.

.h 파일과 .m 파일에서 다른 결과를 얻습니다. 설명서 주석이 헤더 파일에 있으면 줄을 바꿀 수 없습니다.


5

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.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.