abcdefpatch-366make _normalize_text public methodNir Sofferpatch-367fixed failing test wikiutil: good system page namesNir Sofferpatch-368Fixed DeprecationWarning in RandomPage.py and an unused import in twistedmoin.pyAlexander Schremmerpatch-369remove duplicate code in formatter.baseThomas Waldmannpatch-370fixed long int in mig3Thomas Waldmannpatch-371fixed unicode error on eventlogNir Sofferpatch-372fixed util.web.makeQueryString and Page.urlNir Sofferpatch-373fixed again non ascii http_refererNir Sofferpatch-374CSV.py supports different separators nowAlexander Schremmerpatch-375improved searchform behavior on Mozilla/FirefoxNir Sofferpatch-376More correct script for actions menu initNir SofferVersionDate0.112002-03-110.102001-10-280.92001-05-070.82001-01-230.72000-12-060.62000-12-040.52000-11-170.42000-11-010.32000-10-250.22000-08-260.12000-07-29<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>PagalbaAnalizatorių</title></articleinfo><section><title>Analizatoriai</title><para>Analizatoriai patikrina puslapio turinį , kad sukurtų seką, pagal kurią būtų iškviečiami rinkmenos, sukuriančios matomą rezultatą. <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/MoinMoin#">MoinMoin</ulink> išrenka puslapio analizatorių naudojant 2 skirtingus būdus: </para><orderedlist numeration="arabic"><listitem><para><emphasis role="strong">FORMAT Apdorojimo Instrukcijos</emphasis> - ieškokite <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/PagalbaApdorojimoInstrukcij%C5%B3#">PagalbaApdorojimoInstrukcijų</ulink> </para><para>A <code>#FORMAT</code> apdorojimo instrukcija gali būti naudojama pasakyti <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/MoinMoin#">MoinMoin</ulink> kurį analizatorių naudoti visam puslapio turiniui apdoroti. Numatytasis yra <emphasis>wiki</emphasis> analizatorius. Pavyzdys: </para><screen><![CDATA[#FORMAT cplusplus
... šiek tiek C++ kodo ...]]></screen></listitem><listitem><para><emphasis role="strong">Kodo vaizdavimo regionai</emphasis> - žiūrėkite <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/PagalbaFormatavimo#">PagalbaFormatavimo</ulink> </para><para>Naudojant kodo atvaizdavimo regionus, analizatorius gali būti taikomas tik daliai puslapio (tai buvo processor region ankstesnėje <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/MoinMoin#">MoinMoin</ulink> versijoje). Jūs nurodote kuriuos analizatorius iskviesti, naudojanta bang kelio konstrukciją pirmoje eilutėje. Bang kelias yra a koncepcija, žinoma iš Unix komandinės eilutės scenarijų, kuriuose jie naudojami tuo pačiu tikslu: pirmoji eilutė pasako šelui kokią programą paleisti analizuoti likusioms scenarijaus eilutėms. Pavyzdžiui, kodas </para><screen><![CDATA[{{{#!CSV ,
a,b,c
d,e,f
}}}]]></screen><para>Analizuoja lentelę: </para><!--RAW HTML: <form action="/wiki/PagalbaAnalizatori%C5%B3" method="GET" name="dbw.form">--><informaltable><tgroup cols="3"><colspec colname="col_0"/><colspec colname="col_1"/><colspec colname="col_2"/><tbody><row rowsep="1"><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row></tbody></tgroup></informaltable><!--RAW HTML: </form>--></listitem></orderedlist><para><inlinemediaobject><imageobject><imagedata depth="16" fileref="http://research.math.uvt.ro/wiki//static/moniker/img/idea.png" width="16"/></imageobject><textobject><phrase>(!)</phrase></textobject></inlinemediaobject> Pastaba: Yra 2 būdai išspręsti <emphasis>įterpimo problemas</emphasis> susijusias su <code>}}}</code>: </para><itemizedlist><listitem><para>Naudokite daugiau negu 3 vingiuotus skliaustus pradžioje / pabaigoje analizatoriaus sekcijos (tai, ką naudojate, neturi būti jūsų apskliaudžiamoje dalyje). Pvz.: </para><screen><![CDATA[{{{{
{{{
...
}}}
}}}}]]></screen></listitem><listitem><para>Naudokite 3 curly braces + kokį nors unikalų string: </para><screen><![CDATA[{{{asdfghj
{{{
...
}}}
asdfghj}}}]]></screen></listitem></itemizedlist><para>Norėdami rasti daugiau informacijos apie galimus markup, skaitykite <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/PagalbaRedagavimo#">PagalbaRedagavimo</ulink>. </para><section><title>AnalizatoriausPagrindas</title><para>ParserBase (analizatoriaus pagrindas) yra analizatoriaus paslaugų klasė, naudojama išgauti spalvotą šaltinio vaizdą. Tai lengvai išplėčiama. HTML Formatuotojas atvaizduos tokį kodą su perjungiamais eilučių numeriais, jeigu naršyklė palaiko DOM ir JavaScript. </para><para>ParserBase spalvinimo analizatorius supranta šiuos argumentus  <code>#FORMAT</code> pi arba hashbang eilutę. Jums tereikia pridėti tuos argumentus po analizatoriaus pavadinimo (<code>#FORMAT python start=10 step=10 numbers=on</code> arba <code>#!python numbers=off</code>). </para><glosslist><glossentry><glossterm>numbers</glossterm><glossdef><para>jeigu turi būti pridėti eilučiu numeriai. numatytasis 'on'. galimos vertės: 'on', 'off' (be eilučių numerių,tik javascript jiems pridėti), 'disable' (visai be eilučių numeravimo) </para></glossdef></glossentry><glossentry><glossterm>start</glossterm><glossdef><para>kur pradėti numeruoti. numatyta 1 </para></glossdef></glossentry><glossentry><glossterm>step</glossterm><glossdef><para>padidinti eilutės numerį. numatyta 1 </para></glossdef></glossentry></glosslist><para><ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/MoinMoin#">MoinMoin</ulink> turi kelis pavyzdžius, nuo kurių galite tęsti: </para></section><section><title>python</title><para>Nuspalvina python kodą. Jis gaunamas ne iš ParserBase, bet leidžia tuos pačius argumentus kaip ir ParserBase analizatoriai. </para><programlisting format="linespecific" language="python" linenumbering="numbered" startinglinenumber="1"><token><![CDATA[def]]></token><![CDATA[ ]]><methodname><![CDATA[hello]]></methodname><![CDATA[():]]>
<![CDATA[    ]]><token><![CDATA[print]]></token><![CDATA[ ]]><phrase><![CDATA["]]></phrase><phrase><![CDATA[Labas Pasauli!]]></phrase><phrase><![CDATA["]]></phrase>
</programlisting><programlisting format="linespecific" language="python" linenumbering="unnumbered" startinglinenumber="1"><token><![CDATA[def]]></token><![CDATA[ ]]><methodname><![CDATA[hello]]></methodname><![CDATA[():]]>
<![CDATA[    ]]><token><![CDATA[print]]></token><![CDATA[ ]]><phrase><![CDATA["]]></phrase><phrase><![CDATA[Labas Pasauli!]]></phrase><phrase><![CDATA["]]></phrase>
</programlisting><programlisting format="linespecific" language="python" linenumbering="numbered" startinglinenumber="1"><token><![CDATA[def]]></token><![CDATA[ ]]><methodname><![CDATA[hello]]></methodname><![CDATA[():]]>
<![CDATA[    ]]><token><![CDATA[print]]></token><![CDATA[ ]]><phrase><![CDATA["]]></phrase><phrase><![CDATA[Labas Pasauli!]]></phrase><phrase><![CDATA["]]></phrase>
</programlisting><section><title>cplusplus</title><programlisting format="linespecific" language="cpp" linenumbering="numbered" startinglinenumber="1"><token><![CDATA[int]]></token><![CDATA[ ]]><methodname><![CDATA[main]]></methodname><![CDATA[(]]><token><![CDATA[int]]></token><![CDATA[ ]]><methodname><![CDATA[argc]]></methodname><![CDATA[, ]]><token><![CDATA[char]]></token><![CDATA[ **]]><methodname><![CDATA[argv]]></methodname><![CDATA[) {]]>
<![CDATA[  ]]><token><![CDATA[return]]></token><![CDATA[ 0;]]>
<![CDATA[}]]>
</programlisting></section><section><title>java</title><programlisting format="linespecific" language="java" linenumbering="numbered" startinglinenumber="1"><token><![CDATA[import]]></token><![CDATA[ ]]><methodname><![CDATA[java.util.Date]]></methodname><![CDATA[;]]>
<token><![CDATA[import]]></token><![CDATA[ ]]><methodname><![CDATA[java.util.Calendar]]></methodname><![CDATA[;]]>

<token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[class]]></token><![CDATA[ ]]><methodname><![CDATA[IntDate]]></methodname>
<![CDATA[{]]>
<![CDATA[  ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[static]]></token><![CDATA[ ]]><methodname><![CDATA[Date]]></methodname><![CDATA[ ]]><methodname><![CDATA[getDate]]></methodname><![CDATA[(]]><methodname><![CDATA[String]]></methodname><![CDATA[ ]]><methodname><![CDATA[year]]></methodname><![CDATA[, ]]><methodname><![CDATA[String]]></methodname><![CDATA[ ]]><methodname><![CDATA[month]]></methodname><![CDATA[, ]]><methodname><![CDATA[String]]></methodname><![CDATA[ ]]><methodname><![CDATA[day]]></methodname><![CDATA[)]]>
<![CDATA[    {]]>
<![CDATA[      ]]><lineannotation><![CDATA[// Data(int, int, int) has been deprecated, taigi naudokite Calendar norėdami]]></lineannotation>
<lineannotation></lineannotation><![CDATA[      ]]><lineannotation><![CDATA[// nustatyti metus, menesį ir dieną.]]></lineannotation>
<lineannotation></lineannotation><![CDATA[      ]]><methodname><![CDATA[Calendar]]></methodname><![CDATA[ ]]><methodname><![CDATA[c]]></methodname><![CDATA[ = ]]><methodname><![CDATA[Calendar]]></methodname><![CDATA[.]]><methodname><![CDATA[getInstance]]></methodname><![CDATA[();]]>
<![CDATA[      ]]><lineannotation><![CDATA[// Pakeicia kiekvieną argumentą į int.]]></lineannotation>
<lineannotation></lineannotation><![CDATA[      ]]><methodname><![CDATA[c]]></methodname><![CDATA[.]]><methodname><![CDATA[set]]></methodname><![CDATA[(]]><methodname><![CDATA[Integer]]></methodname><![CDATA[.]]><methodname><![CDATA[parseInt]]></methodname><![CDATA[(]]><methodname><![CDATA[year]]></methodname><![CDATA[),]]><methodname><![CDATA[Integer]]></methodname><![CDATA[.]]><methodname><![CDATA[parseInt]]></methodname><![CDATA[(]]><methodname><![CDATA[month]]></methodname><![CDATA[),]]><methodname><![CDATA[Integer]]></methodname><![CDATA[.]]><methodname><![CDATA[parseInt]]></methodname><![CDATA[(]]><methodname><![CDATA[day]]></methodname><![CDATA[));]]>
<![CDATA[      ]]><token><![CDATA[return]]></token><![CDATA[ ]]><methodname><![CDATA[c]]></methodname><![CDATA[.]]><methodname><![CDATA[getTime]]></methodname><![CDATA[();]]>
<![CDATA[    }]]>
<![CDATA[}]]>
</programlisting></section><section><title>pascal</title><programlisting format="linespecific" language="pascal" linenumbering="numbered" startinglinenumber="1"><token><![CDATA[function]]></token><![CDATA[ ]]><methodname><![CDATA[TRegEx]]></methodname><![CDATA[.]]><methodname><![CDATA[Match]]></methodname><![CDATA[(]]><token><![CDATA[const]]></token><![CDATA[ ]]><methodname><![CDATA[s]]></methodname><![CDATA[:]]><token><![CDATA[string]]></token><![CDATA[):]]><token><![CDATA[boolean]]></token><![CDATA[;]]>
<token><![CDATA[var]]></token>
<![CDATA[    ]]><methodname><![CDATA[l]]></methodname><![CDATA[,]]><methodname><![CDATA[i]]></methodname><![CDATA[ : ]]><token><![CDATA[integer]]></token><![CDATA[;]]>
<token><![CDATA[begin]]></token>
<![CDATA[    ]]><token><![CDATA[result]]></token><![CDATA[ := ]]><methodname><![CDATA[MatchPos]]></methodname><![CDATA[(]]><methodname><![CDATA[s]]></methodname><![CDATA[,]]><methodname><![CDATA[l]]></methodname><![CDATA[,]]><methodname><![CDATA[i]]></methodname><![CDATA[);]]>
<token><![CDATA[end]]></token><![CDATA[;]]>
</programlisting></section></section><section><title>IRC</title><para>Įdeda IRC žurnalą į lentelę. </para><programlisting format="linespecific" language="irc" linenumbering="numbered" startinglinenumber="1"><![CDATA[(23:18) ]]><methodname><![CDATA[<     jroes> ]]></methodname><![CDATA[ah]]>
<![CDATA[(23:21) ]]><token><![CDATA[-!- ]]></token><phrase><![CDATA[gpciceri ]]></phrase><lineannotation><![CDATA[[~gpciceri@host181-130.pool8248.interbusiness.it] has quit [Read error: 110 (Connection timed out)]]]></lineannotation>
<lineannotation></lineannotation><![CDATA[(23:36) ]]><methodname><![CDATA[< ThomasWal> ]]></methodname><![CDATA[you could also write a parser or processor]]>
<![CDATA[(23:38) ]]><methodname><![CDATA[<     jroes> ]]></methodname><![CDATA[i could?]]>
<![CDATA[(23:38) ]]><methodname><![CDATA[<     jroes> ]]></methodname><![CDATA[would that require modification on the moin end though?]]>
<![CDATA[(23:38) ]]><methodname><![CDATA[<     jroes> ]]></methodname><![CDATA[i cant change the wiki myself :x]]>
</programlisting><para>Formatavimo analizatorius yra ilgas IRSSI formatas, populiarus konsolinis IRC klientas, bet tai taip pat turėtų sutapti su daugumos kitų IRC klientų žurnalizavimo formatu. </para><para><anchor id="csvparser"/> </para></section><section><title>CSV</title><para>CSV analizatorius dirba su taip vadinamomis <emphasis>kableliais atskirtomis vertėmis</emphasis>, tačiau dabar kablelis yra , pagal numatymą, kaip kabliataškis. Pirmoji eilutė yra manoma, jog turi stulpelių antraštes, kurios atvaizduojamos <emphasis role="strong">paryškintai</emphasis>, taigi kai jus nenorite lentelių pavadinimų, palikite pirmąją eilutę tusčią. </para><para>Kelyje gali būti &quot;<code>-</code><emphasis>index</emphasis>&quot; argumentai, kur kiekvienas iš jų slepia tam tikrą stulpelį iš išvedinio; stulpelių indeksai yra yra skaičiuojami pradedant nuo 1. </para><para>Bet koks ne tarpo argumentas, kuris neprasideda <code>-</code> nurodo skirtuką. Tai leidžia naudoti, pavyzdžiui, kablelius (<code>,</code>) vietoj kabliataškių (<code>;</code>). Jeigu nepateikiate skirtukų (separator), bus naudojamas <code>;</code>. </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata depth="16" fileref="http://research.math.uvt.ro/wiki//static/moniker/img/alert.png" width="16"/></imageobject><textobject><phrase>/!\</phrase></textobject></inlinemediaobject> Šiuo metu įtrauktas CSV analizatoriaus kodas yra <emphasis>labai</emphasis> paprastas. </para></listitem></itemizedlist><para>Lentelės pavyzdžiai (naudotą žymėjimą žiūrėkite neapdorotame puslapio tekste): </para><para>MoinMoin 1.3 - pataisymo istorijos apkarpymas: </para><!--RAW HTML: <form action="/wiki/PagalbaAnalizatori%C5%B3" method="GET" name="dbw.form">--><informaltable><tgroup cols="3"><colspec colname="col_0"/><colspec colname="col_1"/><colspec colname="col_2"/><tbody><row rowsep="1"><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row></tbody></tgroup></informaltable><!--RAW HTML: </form>--><para><ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/MoinMoin#">MoinMoin</ulink> Version History: </para><!--RAW HTML: <form action="/wiki/PagalbaAnalizatori%C5%B3" method="GET" name="dbw.form">--><informaltable><tgroup cols="2"><colspec colname="col_0"/><colspec colname="col_1"/><tbody><row rowsep="1"><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry><entry colsep="1" rowsep="1"><emphasis role="strong"/></entry></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row><row rowsep="1"><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/></row></tbody></tgroup></informaltable><!--RAW HTML: </form>--></section><section><title>reStructuredText</title><para>Skaitykite <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/PagalbaAnalizatori%C5%B3/ReStructuredText#">/ReStructuredText</ulink> </para></section><section><title>XML/XSLT/DocBook</title><para>Žiūrėkite <ulink url="http://research.math.uvt.ro/wiki/PagalbaAnalizatori%C5%B3/wiki/HelpOnXmlPages#">HelpOnXmlPages</ulink>. </para></section><section><title>Papildomi Analizatoriai</title><para>Norėdami sužinoti apie daugiau analizatorių ir diegimo instrukcijas, skaitykite MoinMoin:ParserMarket </para></section></section></article>