Sign in Join
Wiki copytemporary

How To Make Lazarus Docs/sk: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11## Tvorba dokumentácie pre Lazarus
22
33Sú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.
44
55Ký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.
66
77Použ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:
88
9-`makeskel --package=rtl --input=crt.pp --output=crt.xml `
9+```text
10+makeskel --package=rtl --input=crt.pp --output=crt.xml
11+```
1012
1113Tý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:
1214
13-`makeskel --input='-Sn system.pp' --input=crt.pp --output=rtl.xml `
15+```text
16+makeskel --input='-Sn system.pp' --input=crt.pp --output=rtl.xml
17+```
1418
1519Ako 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.
1620
1721Použí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.
1822
1923
2024**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).
2125
2226Keď dokončíte úpravy XML súboru, uložte ho a spusťte
2327
24-` fpdoc --package=lcl --input=thisunit.pp --descr=thisunit.xml`
28+```text
29+ fpdoc --package=lcl --input=thisunit.pp --descr=thisunit.xml
30+```
2531
2632Výsledné HTML súbory budú umiestnené v podadresári nazvanom 'thisunit'.
2733
2834Bude 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
2935
30-` grep -l Inheritance * > outputfile`
36+```text
37+ grep -l Inheritance * > outputfile
38+```
3139
3240keďže len komponenty majú popis ich dedičnosti (Inheritance).
3341
3442Vý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!):
3543
3644``` pascal
3745 program convhtml;
3846 { CT Kirkpatrick, MD 20040720 }
3947 {$mode objfpc}{$H+}
4048 { číta zoznam mien súborov z listfile a konvertuej ich z HTML na text,
4149 zapísaním výstupu všetkých súborov do výstupného súboru }<br>
4250 uses
4351 Classes, unix;<br>
4452 var
4553 listfile, outfile: text;
4654 pathname, listfname, outfname, fname: string;
4755 execstring, comstring: string;
4856 begin
4957 Writeln ('Zadajte cestu k súborom na konverziu');
5058 Readln (pathname);
5159 Writeln ('Zadajte meno súboru obsahujúceho zoznam súborov pre konverziu');
5260 Readln (listfname);
5361 shell ('grep -l Inheritance ' + pathname + '* > ' + pathname + 'filelist.txt');
5462 Writeln ('Zadajte meno výstupného súboru');
5563 Readln (outfname);
5664 Assign (listfile, pathname +'filelist.txt');
5765 Assign (outfile, pathname + outfname);
5866 Reset (listfile);
5967 Rewrite (outfile);
6068 while not eof (listfile) do
6169 begin
6270 readln (listfile, fname); //writeln (fname);
6371 //if fname = '' then begin readln (listfile, fname); writeln (fname) end;
6472 execstring := '/usr/bin/html2text ';
6573 comstring := '-nobs ' + fname
6674 + ' >> ' + pathname + outfname;
6775 writeln ('Executing ', execstring, comstring);
6876 shell (execstring + comstring);
6977 end;
7078 end.
7179```
7280
7381## Pôvodní spolupracovníci a zmeny
7482
7583This page has been imported from the epikwiki [version](http://lazarus-ccr.sourceforge.net/index.php?wiki=HowToMakeLazarusDocs). Original by User:Kirkpatc.
7684
7785- preložené z originálu - Slavko 14:50, 11 Apr 2005 (PDT)
7886
7987---
8088*From the Free Pascal wiki, page "How To Make Lazarus Docs/sk", as it stood on 2020-02-17 after a change by Trev, out of the wiki's dump of 2024-05-26. 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).*

Back to history