PyArticle aneb Články s DocBookem v Pythonu
Lukáš Linhart
almad na include.cz
Pátek Červen 9 21:37:56 CEST 2006
Zdravím,
konference je trošku mrtvá, tak jsem se rozhodl pro trochu reklamy. Pravda,
možná bych měl počkat, až to bude ve více dodělaném stavu, ale podle
hesla "publish early, publish often" si říkám, že to třeba někoho bude
zajímat (v ideálním případě natolik, že se přidá k vývoji ,))
Poslední dobou dost dělám cms/wiki/crm a podobně věci, kde je často třeba, aby
uživatelé mohli v-nějakém-formátu napsat článek a následně jej v několika
formátech publikovat. Proto jsem se rozhodl napsat knihovnu, která tohle
usnadňuje.
Účelem je být schopen přijmout článek v-nějakém-formátu-co-se-v-něm-dobře-píše
(Textile, Wiki a spol.) a mít za výstup formát-co-se-dobře-prezentuje (Pdf,
Xhtml a pod.). Protože psát konvertory pro všechny kombinace vstup-výstup je
únavné/nemožné, je nasnadě převádět přes nějaký meziformát, takže je
konvertorů m+n a ne m*n.
Je možné si přidat vlastní meziformáty, ale zatím je podporován jen DocBook4,
který je nasnadě (zvlášť proto, že už má skoro všechno hotovo :))
Knihovna nedělá nic světoborného, je to (aspoň zatím) jen wrapper okolo
existujících utilit, ale časem bych chtěl možnosti rozšířit (verzování článků
(=možnost použití i na wiki engine), automatický backend (=lehká integrace do
systémů spolupracujících s databází) apod.
Zatím nejjednodušší použití vypadá nějak takhle:
art = Article(text=artText, format=Asciidoc7)
art.transform() # this will tranform into exchange format, Docbook4 is default
art.transform(format=Xhtml11)
art.transform(format=Pdf)
print art.pyarticle['out'][Xhtml11]
print art.pyarticle['out'][Pdf]
(s předpokladem konfigurace, see
http://projects.almad.net/pyarticle/wiki/QuickExample)
Samozřejmě půjde na jednoduchou konverzi použít metoda transform() (až ji
dopíšu ,)), takže se to bude chovat jako jednoduchý konvertor, tohle je
ukecaná varianta pro moje použítí ,)
Projektů mám tak nějak víc než dost, takže jsem v poslední době přesunul
energii jinam s tím, že se k tomu plánuji vrátit, až mi přestanou stačit
současné možnosti (což se určitě stane), ale teď se to minimálně pár týdnů až
měsíců nepohne...čili měl-li by někdo zájem podílet se, ať už radou, kódy,
testy či psaním dokumentace, ať se ozve ,)
Současný stav je zatím podpora Asciidoc7, Docbook4, Pdf a Xhtml přes Xsltproc,
Saxon, Xep a Fop. Na jedněch windows se nepodařilo spustit test kvůli
zvláštnímu chování systému k dočasným souborům, kdyby se na to někdo podíval,
byl bych mu vděčen (nemám k dispozici Windows na hraní).
Kdyby se někdo chtěl podívat podrobněji, tak stránky jsou na
http://projects.almad.net/pyarticle , pro
diskuzi/feedback/kritiky/pochvaly/nabídky google groupu
http://groups.google.com/group/pyarticle , ať tu přeci jenom tu konferenci
nespamujeme ,)
S omluvou za reklamu :),
--
Lukáš Linhart
------------- další část ---------------
A non-text attachment was scrubbed...
Name: [žádný popis není k dispozici]
Type: application/pgp-signature
Size: 198 bytes
Desc: [žádný popis není k dispozici]
URL: <http://www.linux.cz/pipermail/docbook/attachments/20060609/5f9879f9/attachment.sig>
Další informace o konferenci Docbook