一、 首先安裝 appledoc
Update: 最近版本更新 需要解決的同學看這里
問題: 安裝完成提示下面的錯誤的同學看一下連接,其他正常的不需要查看
install: /tmp/Build/Intermediates/ArchiveIntermediates/appledoc/InstallationBuildProductsLocation/usr/local/bin/appledoc: No such file or directory
https://github.com/tomaz/appledoc/issues/588
https://github.com/tomaz/appledoc/pull/526
- 第一步:使用終端命令進行下載安裝
git clone git://github.com/tomaz/appledoc.git
cd ./appledoc
sudo sh install-appledoc.sh
上面步驟執行之后,上面三個步驟都是正常執行的,文件有點大,下載會慢一點,我們看下效果圖:
如果出現 ** INSTALL SUCCEEDED ** 則說明我們安裝成功了。
- 下面進行第二步:安裝之后我們進行一個簡單的驗證
appledoc --version
//使用方法可以輸入命令
appledoc --help
二、使用方法
- 第一步:使用終端進入代碼目錄:
- 直接拖拽我們的工程到終端,然后回車一下
- 或者使用
cd+"項目名字目錄"
同1 - 以上兩種方法都可以進入到我們的工程根目錄
- 第二部:
project-name: 項目名字
project-company: 公司名稱
使用命令:
//下面這個會執行錯誤
1. appledoc --project-name 你的工程名字 --project-company 公司名 ./(導出路徑,這里是指根目錄) path所要導出的文檔的類文件夾
錯誤提示是:AppledocException: At least one directory or file name path is required
2. 正確的執行命令:
appledoc --no-create-docset --output ~/doc --project-name "Your Project Name" --company-id "com.yourcommpany" --project-company "Your Company" ./
3. appledoc --project-name DiskSizeDemo
--project-company "ray"
--company-id aaaa
--output ./apple
~/DeskTop/RYDemoTest/DiskSizeDemo/DiskSizeDemo/doc/
最后一個命令需要5個參數:
1. 工程名字
2. 公司名字
3. 公司ID
4. 生成結果出書路徑
5. 掃描那個路徑下的類
執行成功都可以在我們相應的地址下找到
4. appledoc -o ./doc --project-name DiskSizeDemo --project-company feel .
appledoc會掃描當前路徑下的所有文件,然后生成好文檔放到doc目錄下。你也可以用appledoc –help查看所有可用的參數。
使用的時候一定要注意最后一個路徑,別忘了,不然會提示錯誤,最后一個是導出掃描到的文件
上面運行成功會出現下面截圖
我們可以在 電腦的 Users 下找到raybon 這個文件夾
- 工程中使用
- 我們先新建一個工程,Demo 就是我們實驗的測試DiskSizeDemo
- 選擇菜單File->New File -> Target :
添加之后我們在去設置界面
通過我們新增加的Run Script
添加一下腳本
#appledoc Xcode script
# Start constants
company="abc";
companyID="com.abc";
companyURL="http://abc.com";
target="iphoneos";
#target="macosx";
outputPath="~/help";//輸出地址
# End constants
/usr/local/bin/appledoc \
--project-name "${PROJECT_NAME}" \
--project-company "${company}" \
--company-id "${companyID}" \
--docset-atom-filename "${company}.atom" \
--docset-feed-url "${companyURL}/${company}/%DOCSETATOMFILENAME" \
--docset-package-url "${companyURL}/${company}/%DOCSETPACKAGEFILENAME" \
--docset-fallback-url "${companyURL}/${company}" \
--output "${outputPath}" \
--publish-docset \
--docset-platform-family "${target}" \
--logformat xcode \
--keep-intermediate-files \
--no-repeat-first-par \
--no-warn-invalid-crossref \
--exit-threshold 2 \
"${PROJECT_DIR}"
然后選擇下面
選擇好之后我們run 一下
工程中我們新建的有個Doc.h 和Doc.m 的類
代碼如下
#import <Foundation/Foundation.h>
@interface Doc : NSObject
/*! @brief this is comment. */
- (void)run;
/*! @brief查詢數據方法 */
- (void)seekMethod;
@end
我們如果run 之后可以在本地找到一個 dorset-install.txt 文件
我們打開HTML 下的index.html
看到了吧,是不是我們經常看到的技術文檔
我們如果想要導出這種格式,注釋需要按照規定的來,這個我不清楚為什么要這樣子,有知道的還望留言一下,在此謝過大神。
我去查詢的資料是支持一下三種注釋格式:
1. /*! this a test . */
2. /** this a comment. */
3. /// this is a long comment. */
經常使用的標簽:
@brief : 使用它來寫一段你正在文檔化的method, PRoperty, class, file, struct, 或enum的短描述信息。
@discusstion: 用它來寫一段詳盡的描述。如果需要你可以添加換行。
@param:通過它你可以描述一個 method 或 function的參數信息。你可以使用多個這種標簽。
@return: 用它來制定一個 method 或 function的返回值。
@see: 用它來指明其他相關的 method 或 function。你可以使用多個這種標簽。
@sa:同上
@code : 使用這個標簽,你可以在文檔當中嵌入代碼段。當在Help Inspector當中查看文檔時,代碼通過在一個特別的盒子中用一種不同的字體來展示。始終記住在寫的代碼結尾處使用@endcode標簽。
@remark : 在寫文檔時,用它來強調任何關于代碼的特殊之處。
舉例:
/*! @brief This property knows my name. */
@property (nonatomic, strong) NSString *myName;
這種注釋在調用的時候也會有提示,我們現在常用的VVDocument-Xcode 注釋插件,是一樣的原理
記錄文件常用標簽:
讓我介紹一些當你在記錄一個文件時會用到的新標簽:
@file: 使用這個標簽來指出你正在記錄一個文件(header 文件或不是)。如果你將使用Doxygen來輸出文檔,那么你最好在這個標簽后面緊接著寫上文件名字。它是一個top level 標簽。
@header: 跟上面的類似,但是是在 HeaderDoc中使用。當你不使用 Doxygen時,不要使用上面的標簽。
@author:用它來寫下這個文件的創建者信息
@copyright: 添加版權信息
@version: 用它來寫下這個文件的當前版本。如果在工程生命周期中版本信息有影響時這會很重要。
再一次的,我只給出最常用的標簽。自己查看說明文檔了解更多標簽信息。
@class: 用它來指定一個class的注釋文檔塊的開頭。它是一個top level標簽,在它后面應該給出class名字。
@interface: 同上
@protocol: 同上兩個一樣,只是針對protocols
@superclass: 當前class的superclass
@classdesign: 用這個標簽來指出你為當前class使用的任何特殊設計模式(例如,你可以提到這個class是不是單例模式或者類似其它的模式)。
@coclass: 與當前class合作的另外一個class的名字。
@helps: 當前class幫助的class的名字。
@helper: 幫助當前class的class名字。
使用HeaderDoc生成文檔
到此我們就結束了,具體其他使用也可以參考下面這個
headerdoc2html
Xocde 快速生成文檔
官方使用;
查詢生成的HTML頁面:
~/Library/Developer/Shared/Documentation/DocSets/
本文主要使用了appledoc
其次就是 headerdoc ,我測試了兩種,只是覺得appledoc 的更好一些,看著界面更舒服一些。