Momenteel werk ik aan een op iOS gebaseerde taak voor beeldmanipulatie.
Probleem:
Ik werk aan verschillende modules. Dus als ik in de toekomst iets in een module moet toevoegen, wil ik het markeren als een To do-notitie.
Zijn er andere macro’s of iets dergelijks om een taaknotitie toe te voegen in Xcode?
Ik heb het geprobeerd:
Hiervoor gebruik ik momenteel #pragma
zoals:
#pragma mark -
#pragma mark To do: Add the Image processing methods.
Ik heb:
Maar het staat in de sectie Methode zoals:
Wat ik eigenlijk nodig heb:
Het probleem is dat het wordt vermeld onder de lijst met methoden, dus soms vergat ik dit uit de sectie te verwijderen, en het is ook erg moeilijk om het in de volledige broncode te vinden. (Zoeken naar #pragma-resultaten om volledige lijsten weer te geven)
Technische details:
Ik gebruik Xcode versie 4.6.2 .
Antwoord 1, autoriteit 100%
Ik snap het.
Reactie schrijven zoals:
// TODO: Do something
Zal het lukken.
Ik heb zoiets als:
Er zijn ook veel opties zoals:
// FIXME: Midhun
// ???: Midhun
// !!!: Midhun
// MARK: Midhun
Antwoord 2, autoriteit 92%
// TODO: the thing todo
Zo laat je taken zien.
Antwoord 3, autoriteit 32%
De
. gebruiken
//TODO: some thing here
werkt als je alleen maar naar de lijst met taken in de vervolgkeuzelijst wilt kijken
Als je opdringerig wilt zijn, kun je in plaats daarvan #warning
tekens gebruiken:
#warning this will create a compiler warning.
En wanneer je de app bouwt, krijg je een compilerwaarschuwing (een gele driehoek, geen compilerfout) die een beetje meer “in your face” is om je te herinneren aan dingen die je moet doen.
Antwoord 4, autoriteit 26%
Met het onderstaande script kun je alle vereiste tags zien, zoals waarschuwingen.
- Selecteer uw project in de Project Navigator
- Open het doel in de zijbalk en ga naar het tabblad “Bouwfasen”
- Klik op het “+”-teken
- Selecteer “Nieuwe fase voor het maken van scripts”
-
Voeg onderstaand script toe aan “Script uitvoeren”
Het script:KEYWORDS="TODO:|FIXME:|DevTeam:|XXX:" find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/ warning: \$1/"
Oorspronkelijke antwoord is afkomstig van Hier
Een ander alternatief is de XToDo-plug-in voor Xcode.
Antwoord 5, autoriteit 5%
U kunt de XToDo-plug-in gebruiken
https://github.com/trawor/XToDo
gebruik ctrl+t om het lijstvenster aan/uit te zetten
Eenvoudige installatie met alcatraz
gebruik ctrl+t om het lijstvenster aan/uit te zetten
Antwoord 6, autoriteit 5%
Ik ben begonnen met
// TODO: Implement bubble sort
.
Toen sloot ik me aan bij een groot project en soms had ik een todo nodig om langer te leven dan een WIP-commit en dus om mijn todo’s te onderscheiden van mijn leeftijdsgenoten, plaatste ik mijn todo met mijn initialen:
// TODO: SM: Implement bubble sort
Soms wilde ik meer zichtbaarheid, dus begon ik op sommige plaatsen pragmawaarschuwingen te gebruiken.
#warning Implement bubble sort
Op een dag besloot ik de harde modus in te schakelen door -Werror
toe te voegen aan mijn cflags. Helaas maakt dit pragma-waarschuwingen nutteloos omdat ze compilatie verhinderen. En dus ging ik terug naar het gebruik van // TODO:
totdat Jeff Nadeau me vertelde dat ik
-Wno-error=#warnings
in mijn cflags om pragma-waarschuwingen niet als fouten te behandelen. Dus nu kunnen #warning
en -Werror
naast elkaar leven.
Antwoord 7, autoriteit 3%
Ik heb de neiging om precies te schrijven:
//TODO: Blah blah blah
Dan doe ik gewoon een COMMAND-SHIFT-Fen zoek naar “//TODO”.
Als u de vervolgkeuzelijst met bestandsoverzicht gebruikt, ziet u alleen TODO’s voor het huidige bestand, maar ik wil meestal de TODO-status van mijn project zien.
Moeilijke oplossing, maar het doet zijn werk.
Antwoord 8
Ik heb de herkende tokens opgesplitst in Waarschuwingen en Fouten voor mijn eigen gebruik, dacht ik het hier te delen:
KEYWORDS="STUB:|WARNING:|TODO:|FIXME:|DevTeam:|\?\?\?:"
find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -not -path "${SRCROOT}/Pods/*" -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/1: warning: \$1/"
KEYWORDS="ERROR:|XXX:|\!\!\!:"
find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -not -path "${SRCROOT}/Pods/*" -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/1: error: \$1/"
ERROR_OUTPUT=`find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -not -path "${SRCROOT}/Pods/*" -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/1: error: \$1/"`
exit ${#ERROR_OUTPUT}
Antwoord 9
Een andere eenvoudige methode, iets buiten het kader, is om een conventie te gebruiken in opmerkingen zoals //Todo:
en wanneer je wilt adresseer ze massaal, selecteer gewoon de Find Navigator, match case en zoek naar //Todo:
Ik geef hier de voorkeur aan, omdat ik er niet van houd dat de dropdown-menu’s van methoden eruitzien als spagetti-code. En ja, ik heb vaak veel Todo:’s 😉
Antwoord 10
#error
en
#warning
worden ook gebruikt in C-programmering