Autor Zpráva
llook
Profil
Hledal jsem pro javascript program, který by vytvářel API dokumentaci podle komentářů ve zdrojovém kódu. Jako je Javadoc pro Javu, phpDocumentor pro PHP nebo Doxygen pro C/C++.
Našel jsem tohle: JSDoc
Je to psaný v Perlu, to znamená, že pokud to chcete zprovoznit pod Windows, tak si instalaci užijete.
Vypadá to dobře, jdu to hned vyzkoušet.
thingwath
Profil *
Jsem sice asi blázen, ale měl bych nepřekonatelné výčitky svědomí, že dělám něco hodně moc moc špatně, kdybych na nějakou stránku dal takové množství javascriptu, které by bylo zapotřebí dokumentovat :-)
llook
Profil
Ale na nějaké javascriptové aplikace se to může hodit. Jak by šel dopředu třeba vývoj javascriptových WYSIWYG editorů, kdyby se někdo v tom jejich kódu vyznal;)
A jestli se někdy dokopu k naučení XUL, abych si mohl psát rozšíření do Firefoxu, tak se to taky bude hodit.
thingwath
Profil *
To je fakt. Na to jsem nepomyslel.
llook
Profil
Tak jsem to trochu vyzkoušel. Protože na domácí stránce toho moc k instalaci neni, tak tady je můj postup pro Linux:

- Stáhněte a rozbalte ten balík
- Přihlaste se jako superuživatel a do adresáře, kde jsou ostatní moduly pro Perl (já to umístil do /usr/lib/perl5/5.8.0) zkopírujte adresář "Javascript" a taky soubor "JSDoc.pm".
- Soubor "jsdoc.pl" buďto přesuňte někam, kam míří proměnná $PATH, nebo do $PATH přidejte adresář s tímto souborem.
- Soubory s příponou "tmpl" musí být ve stejném adresáři jako "jsdoc.pl", takže pokud jste ho přesunuli, tak ještě přesuňte tyhle soubory.
- Zadejte na terminál jsdoc.pl. Pokud to vypíše nápovědu, tak je to hotový, ale je možné, že si to vyžádá ještě nějaké moduly. U mě na Slackware 9.1 scházel HTML::Template.

Program má několik voleb, nejdůležitější se mi zdá "-d" a "-r". Pomocí -d se zadává výstupní adresář a -r znamená, že dané adresáře se rekurzivně projdou.
Takže tak nějak univerzální je tohle:

jsdoc.pl -d /home/user/jsdoc -r /home/user/adresar-s-javascripty
thingwath
Profil *
Třeba by to šlo přes CPAN.
Toto téma je uzamčeno. Odpověď nelze zaslat.