How To Make Lazarus Docs/sk: what changed
Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.
Title: How To Make Lazarus Docs/sk
| Old | New | Line | |
|---|---|---|---|
| 1 | + | ## Tvorba dokumentácie pre Lazarus | |
| 2 | + | ||
| 3 | + | Súbory dokumentácie, ktoré budú eventuálne zahrnuté do systému on-line nápovedy, môžete vygenerovať zo súborov jednotiek Lazarus Component Library (lcl). Utilita FpDoc generuje HTML súbory použitím zdrojových súborov Pascal (*.pp or *.pas) ako vstupu. Veľká časť veľmi dôležitých informácií môže byť zahrnutá, ak použijete popisný súbor XML v spojitosti so zdrojovým súborom. | |
| 4 | + | ||
| 5 | + | Kým je výborne možné generovať XML tagy ručne, použitím inštrukcií v manuále FpDoc, oveľa jednoduchšie je použiť utilitu **makeskel** , ktorá je poskytnutá ako súčasť FpDoc. Táto utilita generuje súbor XML s množinou prázdnych tagov pre každý identifikátor, typ, procedúru a funkciu v zdrojovom kóde. | |
| 6 | + | ||
| 7 | + | Použitie nástroja makeskel úplne priamočiare: musíte zadať meno (jedného alebo viacerých) vstupného súboru (ako pri FPDOC), meno výstupného súboru a meno balíčka: | |
| 8 | + | ``` | |
| 9 | + | makeskel --package=rtl --input=crt.pp --output=crt.xml | |
| 10 | + | ``` | |
| 11 | + | ||
| 12 | + | Týmto príkazom makeskel prečíta súbor **crt.pp** a vytvorí súbor **crt.xml** , ktorý obsahuje prázdne uzly pre všetky identifikátory nájdené v **crt.pp** , všetko v balíčku zvanom **rtl**. Iný príklad: | |
| 13 | + | ``` | |
| 14 | + | makeskel --input='-Sn system.pp' --input=crt.pp --output=rtl.xml | |
| 15 | + | ``` | |
| 16 | + | ||
| 17 | + | Ako vidno na príklade, voľba input môže obsahovať aj niektoré voľby prekladača, ako vprípade FPDOC. Uvedený príkaz spracuje súbory **system.pp** a **crt.pp** , a vytvorí značky prvkov, pre identifikátory oboch unít, v súbore rtl.xml. | |
| 18 | + | ||
| 19 | + | Používateľ môže editovať tento XML súbor, buď pomocou jednoduchého textového editora alebo pomocou editora XML ako KXMLEditor. V týchro súboroch môže existovať obrovský počet údajov. | |
| 20 | + | ||
| 21 | + | **Pripomínam** , že upravované sú len značky popisujúce Objekty, aspoň zo začiatku (použite Search na nájdenie objektu a potom zadajte krátke titulky a popisy komponentov). | |
| 22 | + | ||
| 23 | + | Keď dokončíte úpravy XML súboru, uložte ho a spusťte | |
| 24 | + | ``` | |
| 25 | + | fpdoc --package=lcl --input=thisunit.pp --descr=thisunit.xml | |
| 26 | + | ``` | |
| 27 | + | ||
| 28 | + | Výsledné HTML súbory budú umiestnené v podadresári nazvanom 'thisunit'. | |
| 29 | + | ||
| 30 | + | Bude tam veľký počet HTML súborov (zvyčajne okolo 160) - tieto budú eventuálne všetky použité pre Help súbory, ale je tam veľmi veľa informácií, napr. pre umiestnenie na tejto Wiki stránke. Je užitočné tieto súbory prefiltrovať a zahrnúť len tie, ktoré popisujú komponenty. To môžete urobiť pomocou | |
| 31 | + | ``` | |
| 32 | + | grep -l Inheritance * > outputfile | |
| 33 | + | ``` | |
| 34 | + | ||
| 35 | + | keďže len komponenty majú popis ich dedičnosti (Inheritance). | |
| 36 | + | ||
| 37 | + | Výstupný súbor môže byť použitý na ovládanie utilizy pre konverziu z HTML na text, napríklad aplikáciou **html2text**. Tento proces môže byť čiastočne automatizovaný v nasledujúcom Pascal programe (ktorý je prehnane jednoduchý, nie veľmi robustný, ale pracuje!): | |
| 38 | + | ``` | |
| 39 | + | program convhtml; | |
| 40 | + | { CT Kirkpatrick, MD 20040720 } | |
| 41 | + | {$mode objfpc}{$H+} | |
| 42 | + | { číta zoznam mien súborov z listfile a konvertuej ich z HTML na text, | |
| 43 | + | zapísaním výstupu všetkých súborov do výstupného súboru }<br> | |
| 44 | + | uses | |
| 45 | + | Classes, unix;<br> | |
| 46 | + | var | |
| 47 | + | listfile, outfile: text; | |
| 48 | + | pathname, listfname, outfname, fname: string; | |
| 49 | + | execstring, comstring: string; | |
| 50 | + | begin | |
| 51 | + | Writeln ('Zadajte cestu k súborom na konverziu'); | |
| 52 | + | Readln (pathname); | |
| 53 | + | Writeln ('Zadajte meno súboru obsahujúceho zoznam súborov pre konverziu'); | |
| 54 | + | Readln (listfname); | |
| 55 | + | shell ('grep -l Inheritance ' + pathname + '* > ' + pathname + 'filelist.txt'); | |
| 56 | + | Writeln ('Zadajte meno výstupného súboru'); | |
| 57 | + | Readln (outfname); | |
| 58 | + | Assign (listfile, pathname +'filelist.txt'); | |
| 59 | + | Assign (outfile, pathname + outfname); | |
| 60 | + | Reset (listfile); | |
| 61 | + | Rewrite (outfile); | |
| 62 | + | while not eof (listfile) do | |
| 63 | + | begin | |
| 64 | + | readln (listfile, fname); //writeln (fname); | |
| 65 | + | //if fname = '' then begin readln (listfile, fname); writeln (fname) end; | |
| 66 | + | execstring := '/usr/bin/html2text '; | |
| 67 | + | comstring := '-nobs ' + fname | |
| 68 | + | + ' >> ' + pathname + outfname; | |
| 69 | + | writeln ('Executing ', execstring, comstring); | |
| 70 | + | shell (execstring + comstring); | |
| 71 | + | end; | |
| 72 | + | end. | |
| 73 | + | ``` | |
| 74 | + | ||
| 75 | + | ## Pôvodní spolupracovníci a zmeny | |
| 76 | + | ||
| 77 | + | This page has been imported from the epikwiki [version](<http://lazarus-ccr.sourceforge.net/index.php?wiki=HowToMakeLazarusDocs>). Original by [User:Kirkpatc](</User:Kirkpatc> "User:Kirkpatc"). | |
| 78 | + | ||
| 79 | + | * preložené z originálu - [Slavko](</User:Slavko> "User:Slavko") 14:50, 11 Apr 2005 (PDT) | |
| 80 | + | ||
| 81 | + | --- | |
| 82 | + | *From the Free Pascal wiki, page "How To Make Lazarus Docs/sk", as the Internet Archive kept it on 2024-12-02. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).* |
