8

ich für die Einfachheit meiner Frage entschuldigen, aber ich habe versucht, Dokumentation mit Appledocs (https://github.com/tomaz/appledoc#quick-install)Appledocs Mit Dokumentation erzeugen

Ich bin nicht sicher zu erzeugen, wie genau es Setup zu bekommen. So wie ich es tun, ist:

  • ich die GitHub Repo klonen und dann installieren appledocs das Skript installieren mit (I bestätigen dies mit appledocs --help) im Terminal.

Aber jetzt, wie kann ich das tatsächlich in dem Sinne nutzen, dass ich mein Projekt in Xcode haben:

  • wie generiere ich die Dokumentationsdatei
  • wo sie erzeugt?

Antwort

15

Was ich immer mache, ist ein neues Ziel zu meinem Projekt hinzuzufügen, das Dokumentation generieren kann. Sie können zu den Projektbauphasen gehen und auf "Ziel hinzufügen" klicken. Wählen Sie Aggregieren unter Andere und geben Sie ihm einen Namen (z. B. ProjectDocumentation).

Klicken Sie auf der Registerkarte Build-Phasen noch auf 'Build-Phase hinzufügen' und dann auf 'Run-Skript hinzufügen'. Sie können nun die folgende einfügen und auf Ihre eigenen Einstellungen anpassen:

/usr/local/bin/appledoc \ 
--project-name HereProjectName \ 
--project-company "HereProjectCompany" \ 
--company-id com.companyName \ 
--keep-undocumented-objects \ 
--keep-undocumented-members \ 
--search-undocumented-doc \ 
--exit-threshold 2 \ 
--ignore .m \ 
--output "AppleDoc" . 

ich das ignorieren verwenden * .m, weil ich nur nur Dokumentation in meinen Header-Dateien schreiben. Dokumentation in meinen * .m-Dateien ist nur für mich (und somit privat). Wenn Sie dieses Ziel erstellen, wird die Dokumentation als XCode-Dokument erstellt. Dies erreichen Sie, indem Sie bei alt-klicken auf einen Klassennamen klicken. Überprüfen Sie die AppleDoc website für die Kommentarsyntax.

Zur Erläuterung der Befehlszeilenoptionen checken Sie den Befehl appledoc --help aus.

+0

Ich machte '-Projektname' dynamisch, aber ich kann keine ähnlichen Variablen für die anderen 2 Felder finden.Hilfe D: – Alexander

-1

Der empfohlene Weg ist clone GitHub project and compile the tool from Xcod e. Während das Klonen von GitHub-Projekten die Verbindung zum Haupt-Repository herstellt, vereinfacht dies auch das zukünftige Upgrade erheblich. Zur Installation geben Sie Folgendes in das Terminal ein:

Damit wird das appledoc-Verzeichnis erstellt. Innerhalb finden Sie appledoc.xcodeproj Xcode Projekt; Öffnen Sie es und kompilieren Sie appledoc target - dies sollte sofort funktionieren, Ihr System muss jedoch die Mindestsystemanforderungen erfüllen, siehe unten. Ich empfehle Ihnen, die resultierende ausführbare appledoc-Datei aus dem Build-Verzeichnis in eines der Verzeichnisse in Ihrem Pfad (echo $ PATH) zu kopieren, um es leicht zugänglich zu machen.

Optional: Appledoc ist eigenständig und enthält die erforderlichen Vorlagendateien. Wenn Sie diesen Standard von Vorlagen Unterverzeichnis eines der erwarteten Orte ändern mögen:

~/Library/Application Support/appledoc 
~/.appledoc 

für weitere Informationen visit

+0

Diese Antwort scheint nicht sehr nützlich zu sein, der Fragesteller hat bereits die Schnellinstallationsanleitung gefunden, und dies scheint wenig mehr als ein Copy-Paste davon zu sein. – Connor

3

zum Beispiel, wie diese, ist es ein gültiger Header mit Quellcode-Dokumentation für die latests Appledoc.

// 
// GSUserDefaults.h 
// 
// Created by Gabor Szabo on 30/01/2013. 
// 
// 

#import <Foundation/Foundation.h> 


/*! 
@discussion This class manages the user defaults on the device with some extra convenient methods. 

## Version information 

__Version__: 1.0 

__Found__: 2013-01-30 

__Last update__: 2013-01-30 

__Developer__: Gabor Szabo, TMTI Ltd. 

*/ 

#pragma mark - Interface 

@interface GSUserDefaults : NSObject { 

} 

#pragma mark - Class Methods 

#pragma mark - Getters 

/// @name Getter methods 

/*! 
@abstract Returns the value for the key. 
@discussion It reads the values from the `NSUserDefaults`. 
@param key The key, it must be not `nil`. 
@return The value object for the key. 
@exception NSException Thrown when the key is `nil`. 
@since 1.0+ 
*/ 
+ (id)valueForKey:(NSString *)key; 

/*! 
@abstract Returns a value collection for the keys. 
@discussion It reads the values from the `NSUserDefaults`. 
@param keys The set of keys, which are affected. 
@return The value collection for the desired keys. 
@exception NSException Thrown when the key is `nil`. 
@since 1.0+ 
*/ 
+ (NSDictionary *)valuesForKeys:(NSSet *)keys; 

#pragma mark - Setters 

/// @name Setter methods 

/*! 
@abstract Sets a value for the selected key. 
@discussion The value always will be overridden. It sets the value to the `NSUserDefaults`. 
@param value The value object, it can be `nil`, in case of `nil` the key will be removed from the `NSUserDefaults`. 
@param key The key for the value, it cannot be `nil`. 
@exception NSException Thrown when the key is `nil`. 
@since 1.0+ 
*/ 
+ (void)setValue:(id)value forKey:(NSString *)key; 

/*! 
@abstract Sets `nil` values for the selected keys. 
@discussion The value always will be overridden. It removs the from the `NSUserDefaults`. 
@param keys The set of keys, which are affected. 
@since 1.0+ 
*/ 
+ (void)setNilValueForKeys:(NSSet *)keys; 

/*! 
@abstract Sets a default value for the selected keys. 
@discussion It the key already exists, it won't be overridden, if the value was `nil` for the key, the key gets the value. It sets the values to the `NSUserDefaults`. 
@param defaultValue The value object, it could be `nil`, in case of the `nil` just nothing will happen, the keys won't be removed. 
@param keys The set of keys, which are affected. 
@since 1.0+ 
*/ 
+ (void)setDefaultValue:(id)defaultValue forKeys:(NSSet *)keys; 

/*! 
@abstract Sets the value for the selected keys. 
@discussion The values always will be overridden, if the value was `nil` for the key, the key gets the value. It sets the values to the `NSUserDefaults`. 
@param value The value object, it can be `nil`, in case of `nil` the key will be removed from the `NSUserDefaults`. 
@param keys The set of keys, which are affected. 
@since 1.0+ 
*/ 
+ (void)setValue:(id)value forKeys:(NSSet *)keys; 

@end 
+0

Wie dokumentieren Sie eine @property in Header-Kommentaren? – kervich

+0

so ist das genau das selbe wie für die @interface. – holex