8

przepraszam za prostotę moje pytanie, ale starałem się generować dokumentację używając Appledocs (https://github.com/tomaz/appledoc#quick-install)Korzystanie Appledocs do generowania dokumentacji

Nie jestem pewien, jak dokładnie się go konfigurację. Sposób, w jaki to zrobić jest:

  • I sklonować repo GitHub, a następnie zainstalować appledocs pomocą skryptu instalacyjnego (ja to potwierdzić używając appledocs --help) w terminalu.

Teraz jednak, w jaki sposób właściwie to wykorzystać w tym sensie, że mam swój projekt w Xcode:

  • jak mogę wygenerować plik dokumentacji
  • gdzie jest generowany?

Odpowiedz

15

Co zawsze robię, to dodawanie nowego celu do mojego projektu, który może generować dokumentację. Możesz przejść do fazy budowy projektu i kliknąć "Dodaj cel". Wybierz opcję Agreguj w obszarze Inne i nadaj jej nazwę (np. ProjectDocumentation).

Wciąż w zakładce fazy budowy przejdź do "Dodaj fazę budowy" i kliknij "Dodaj skrypt uruchomienia". Można teraz wklej następujący i dostosować go do własnych ustawień:

/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" . 

używam ignorować * .m bo tylko tylko napisać dokumentację w moich plikach nagłówkowych. Dokumentacja w moich plikach * .m jest tylko dla mnie (i dlatego jest prywatna). Podczas budowania tego obiektu docelowego dokumentacja jest generowana jako zestaw dokumentów XCode. Jest to dostępne przez kliknięcie alt na nazwie klasy. Sprawdź składnię komentarza AppleDoc website.

Aby uzyskać wyjaśnienie opcji wiersza polecenia, należy wykonać polecenie appledoc --help.

+0

Zrobiłem dynamiczny "- project-name', ale nie mogę znaleźć żadnych podobnych zmiennych dla pozostałych 2 pól.Pomoc D: – Alexander

-1

Zalecany sposób to clone GitHub project and compile the tool from Xcod e. Klonowanie projektu GitHub spowoduje utworzenie łącza do głównego repozytorium, co znacznie uprości także przyszłe uaktualnienie. Aby zainstalować, wpisz następujące polecenie w terminalu:

git clone git://github.com/tomaz/appledoc.git 

Tworzy katalog appledoc. Wewnątrz znajdziesz projekt Xcode appledoc.xcodeproj; otwórz i skompiluj cel appledoc - powinno to działać po wyjęciu z pudełka, jednak twój system musi spełniać minimalne wymagania systemowe, patrz poniżej. Zalecam skopiowanie wynikowego pliku appledoc z katalogu build do jednego z katalogów na twojej ścieżce (echo $ PATH), aby był łatwo dostępny.

Opcjonalnie: Appledoc jest niezależny i zawiera niezbędne pliki szablonów. Jeśli chcesz zmodyfikować te domyślne z podkatalogu Szablony do jednego z oczekiwanych miejscach:

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

więcej informacji visit

+0

Ta odpowiedź nie wydaje się zbyt przydatna, osoba pytająca już zlokalizowała przewodnik szybkiej instalacji, a to wydaje się być czymś więcej niż tylko kopią. – Connor

3

na przykład w ten sposób, że jest to ważny nagłówek z dokumentacji kodu źródłowego 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

Jak udokumentować właściwość @ w komentarzach nagłówka? – kervich

+0

w ten sposób jest dokładnie taki sam, jak w przypadku interfejsu @. – holex

Powiązane problemy