Wiele języków obsługuje komentarze do dokumentacji, aby umożliwić generatorowi (jak javadoc
lub doxygen ) wygenerowanie dokumentacji kodu przez parsowanie tego samego kodu.
Czy Swift ma taką funkcję komentowania dokumentacji typu?
swift
documentation-generation
pconcepcion
źródło
źródło
// MARK:
komentarz jest również zaplanowany dla przyszłej wersji Xcode.Odpowiedzi:
Komentarze do dokumentacji są obsługiwane natywnie w Xcode, tworząc inteligentnie renderowaną dokumentację w Szybkiej pomocy (zarówno w ⌥okienku podręcznym podczas klikania symboli, jak i w Inspektorze szybkiej pomocy ⌥⌘2).
Komentarze do dokumentacji symboli są teraz oparte na tej samej składni Markdown, co w przypadku bogatych komentarzy na placu zabaw, więc wiele z tego, co można zrobić na placach zabaw, można teraz wykorzystać bezpośrednio w dokumentacji kodu źródłowego.
Aby uzyskać szczegółowe informacje na temat składni, zobacz Dokumentacja formatowania znaczników . Zauważ, że istnieją pewne rozbieżności między składnią bogatych komentarzy na temat placu zabaw i dokumentacji symboli; zostały one wskazane w dokumencie (np. cytaty blokowe można stosować tylko na placach zabaw).
Poniżej znajduje się przykład i lista elementów składni, które obecnie działają w przypadku komentarzy do dokumentacji symboli.
Aktualizacje
Xcode 7 beta 4 ~ Dodano „
- Throws: ...
” jako element listy najwyższego poziomu, który pojawia się obok parametrów i opisów zwrotów w Szybkiej pomocy.Xcode 7 beta 1 ~ Kilka istotnych zmian w składni w Swift 2 - komentarze do dokumentacji oparte na Markdown (tak samo jak place zabaw).
Xcode 6.3 (6D570) ~ Wcięty tekst jest teraz formatowany jako bloki kodu, a kolejne wcięcia są zagnieżdżane. Wydaje się, że nie jest możliwe pozostawienie pustej linii w takim bloku kodu - próba zrobienia tego powoduje, że tekst jest sczepiany na końcu ostatniego wiersza z dowolnymi znakami.
Xcode 6.3 beta ~ Kod wbudowany można teraz dodawać do komentarzy do dokumentacji za pomocą odwrotnej strony.
Przykład dla Swift 2
Składnia Swift 2 (na podstawie Markdown )
Styl komentarza
Zarówno
///
(inline) i/** */
komentarze (blok) style są obsługiwane wytwarzania komentarzy dokumentacji. Chociaż osobiście wolę wizualny styl/** */
komentarzy, automatyczne wcięcie Xcode może zepsuć formatowanie tego stylu komentarzy podczas kopiowania / wklejania, ponieważ usuwa wiodące białe znaki. Na przykład:Podczas wklejania wcięcie bloku kodu jest usuwane i nie jest już renderowane jako kod:
Z tego powodu zazwyczaj używam
///
i wykorzystam go do reszty przykładów w tej odpowiedzi.Blokuj elementy
Nagłówek:
lub
Podtytuł:
lub
Linia pozioma:
Listy nieuporządkowane (wypunktowane):
Możesz także użyć
+
lub w*
przypadku nieuporządkowanych list, musi to być po prostu spójne.Listy uporządkowane (numerowane):
Bloki kodu:
Wymagane jest wcięcie co najmniej czterech spacji.
Elementy wbudowane
Nacisk (kursywą):
Mocny (pogrubiony):
Pamiętaj, że nie można mieszać gwiazdek (
*
) i znaków podkreślenia (_
) w tym samym elemencie.Kod wewnętrzny:
Spinki do mankietów:
Zdjęcia:
Adres URL może być adresem URL w sieci (używając „http: //”) lub bezwzględnym adresem URL ścieżki do pliku (nie mogę uzyskać względnych ścieżek do plików).
Adresy URL linków i obrazów można również oddzielić od elementu wbudowanego, aby wszystkie adresy URL znajdowały się w jednym, zarządzalnym miejscu:
Słowa kluczowe
Oprócz formatowania Markdown Xcode rozpoznaje inne słowa kluczowe znaczników, które są widoczne w Szybkiej pomocy. Te słowa kluczowe znaczników najczęściej przyjmują format
- <keyword>:
(wyjątek toparameter
, który obejmuje także nazwę parametru przed dwukropkiem), w którym samo słowo kluczowe można zapisać dowolną kombinacją wielkich / małych liter.Słowa kluczowe sekcji symboli
Następujące słowa kluczowe są wyświetlane jako widoczne sekcje w przeglądarce pomocy, poniżej sekcji „Opis” i powyżej sekcji „Zadeklarowane w”. Po uwzględnieniu ich kolejność jest ustalona, jak pokazano poniżej, nawet jeśli możesz uwzględnić je w dowolnej kolejności w komentarzach.
Zobacz w pełni udokumentowaną listę słów kluczowych sekcji i ich zamierzone zastosowania w sekcji Polecenia sekcji symboli w Odwołaniu do formatowania znaczników .
Alternatywnie możesz zapisać każdy parametr w ten sposób:
Symbol Opis Słowa kluczowe w polu
Poniższa lista słów kluczowych jest wyświetlana jako pogrubione nagłówki w treści sekcji „Opis” przeglądarki pomocy. Pojawią się w dowolnej kolejności, w jakiej je napiszesz, podobnie jak w pozostałej części sekcji „Opis”.
Pełna lista parafrazowana z tego doskonałego artykułu na blogu autorstwa Erici Sadun. Zobacz także w pełni udokumentowaną listę słów kluczowych i ich zamierzone zastosowanie w sekcji Polecenia pola opisu symbolu w Odniesieniu do formatowania znaczników .
Atrybucje:
Dostępność:
Upomnienia:
Stan rozwoju:
Cechy realizacji:
Semantyka funkcjonalna:
Odsyłacz:
Eksportowanie dokumentacji
Dokumentację HTML (zaprojektowaną tak, by naśladować własną dokumentację Apple) można wygenerować z dokumentacji wbudowanej za pomocą narzędzia wiersza polecenia Jazzy .
Przykład konsoli wzięty z tego artykułu NSHipster
źródło
/// - todo: keyword
myOtherMethod(param1:)
rozszerzoną funkcjonalność”/// - Tag: otherMethod
i[otherMethod](x-source-tag://otherMethod)
. Aby uzyskać więcej informacji, zobacz moją odpowiedź .Oto kilka rzeczy, które działają w celu dokumentowania szybkiego kodu w Xcode 6. Jest bardzo błędny i wrażliwy na dwukropki, ale jest lepszy niż nic:
Powyższe jest renderowane w Szybkiej pomocy, tak jak można się spodziewać po sformatowanych listach numerycznych, punktorach, dokumentacji parametrów i wartości zwracanej.
Nic z tego nie jest udokumentowane - zgłoś radar, aby im pomóc.
źródło
reStructuredText
.///
pomiędzy dowolnym tekstem objaśniającym a wierszami:param:
lub wymagana jest pusta linia komentarza ( ):returns:
. Pominięcie tego powoduje, że XCode (6.1.1 w momencie pisania) dołącza pomoc dotyczącą parametru do głównej części opisu funkcji.Nowość w Xcode 8 , możesz wybrać taką metodę
Następnie naciśnij
command
+option
+/
lub wybierz „Struktura” - „Dodaj dokumentację” z menu „Edytora” Xcode, a wygeneruje dla ciebie następujący szablon komentarzy:źródło
Swift zawiera obsługę komentarzy „///” (choć prawdopodobnie jeszcze nie wszystko).
Napisz coś takiego:
Następnie kliknij opcję func i voilà :)
źródło
Mogę potwierdzić, że ShakenManChild dostarczył rozwiązanie peopr
Tylko upewnij się, że masz pusty wiersz pod opisem!
źródło
Tak. Podstawowy wspólny (zrobiłem dla niego fragmenty z odpowiednikiem Obj-C)
Cel C:
Szybki
źródło
Jeśli używasz tylko Swift, warto przyjrzeć się Jazzy.
https://github.com/realm/jazzy
źródło
Znalazłem coś interesującego, kopiąc w pliku binarnym Xcode. Pliki z zakończeniem
.swiftdoc
. Zdecydowanie ma dokumenty, ponieważ pliki te zawierają dokumenty dla interfejsu API Swift UIKit / Foundation API, niestety wydaje się, że jest to zastrzeżony format pliku, do użytku w przeglądarce dokumentacji w Xcode.źródło
W Xcode Editor -> Struktura -> Dodaj dokumentację.
źródło
Jazzy może pomóc w wygenerowaniu pięknej dokumentacji w stylu jabłka. Oto przykładowa aplikacja ze szczegółowymi informacjami na temat szybkiego używania i konfiguracji.
https://github.com/SumitKr88/SwiftDocumentationUsingJazzy
źródło
Może warto mieć oko na AppleDoc lub własny HeaderDoc firmy Apple, który nie jest bardzo rozpoznawany. Nadal mogę znaleźć wskazówki HeaderDoc w terminalu 10.9 Mavericks (headerdoc2html)
Polecam przeczytać najnowszą wersję „ Co nowego w Xcode ” * (nie jestem pewien, czy nadal jest objęty NDA) * Link wskazuje na wersję Xcode 5.1, która zawiera także informacje o HeaderDoc.
źródło
Począwszy od Xcode 5.0 obsługiwane są komentarze strukturalne Doxygen i HeaderDoc.
Źródło
źródło
/// This is what the method does.
itp.