The following 320 words could not be found in the dictionary of 615 words (including 615 LocalSpellingWords) and are highlighted below:

actions   add   added   again   Alexander   all   allows   an   Anchor   and   applied   argc   argument   arguments   argv   ascii   at   bang   base   Base   Basem   be   been   begin   behavior   below   Book   boolean   but   By   by   Calendar   call   called   calls   can   certain   char   choose   class   clipping   colorization   colorized   Colorizes   column   columns   comes   comma   command   commas   concept   considered   const   construct   contain   contains   Contents   contents   Convert   correct   counted   cplusplus   csvparser   current   Date   day   default   defaults   deprecated   Deprecation   derived   different   disable   display   displays   Doc   don   duplicate   each   earlier   easily   empty   eventlog   Ex   exact   Example   examples   extended   failing   few   Firefox   Fixed   fixed   following   For   for   Formatter   formatter   from   function   get   go   good   hashbang   headers   Hello   hello   Help   hide   history   History   if   If   import   improved   in   increment   index   indices   information   init   Instance   instead   Instruction   Instructions   int   Int   integer   Integer   into   Java   java   javascript   jroes   Just   known   leave   like   line   linenumber   linenumbers   lines   log   long   main   make   Match   menu   method   mig3   modification   month   More   more   Mozilla   myself   name   names   Nir   no   non   normalize   now   numbering   numbers   Of   of   off   On   on   only   or   other   out   output   page   Page   Pages   parse   Parser   parser   Parsers   parsers   part   pascal   patch   path   pi   pool8248   Pos   possible   process   Processing   processor   produce   program   public   purpose   Puts   python   Query   quit   Random   Re   re   Read   readable   referer   Reg   region   regions   remaining   remove   render   rendered   require   result   return   Revision   same   Schremmer   Script   script   scripts   searchform   see   See   semicolon   semicolons   separated   separator   separators   seperator   sequence   serve   set   shell   should   simple   so   Soffer   some   source   specify   start   starting   static   step   string   String   Structured   such   supply   supports   switchable   system   table   Table   techniques   tell   tells   test   text   Text   that   The   the   them   they   this   This   Thomas   those   though   through   Time   timed   titles   to   treated   twistedmoin   understands   unicode   Unix   unused   use   used   using   usually   util   utility   values   var   Version   versions   very   Wal   Waldmann   want   Warning   was   way   web   what   when   where   which   whole   wikiutil   will   with   With   works   World   would   wrap   write   year   You   you  



Parsers go through the contents of a page to create a sequence of formatter calls which in sequence create some readable output. MoinMoin will choose the parser for a page using different techniques: FORMAT Processing Instruction (see HelpOnProcessingInstructions) and code display regions (see HelpOnFormatting).

A #FORMAT pi can be used to tell MoinMoin which parser to use for the whole page content. By default this is the wiki parser. Example:

#FORMAT cplusplus 
... some C++ source ...

With the use of code display regions, a parser can be applied to only a part of a page (this was a processor region in earlier versions of Moin). You specify which parser to call by using a bang path-like construct in the first line. A bang path is a concept known from Unix command line scripts, where they serve the exact same purpose: the first line tells the shell what program to start to process the remaining lines of the script. Example:

{ { {#!CSV
} } }

For more information on the possible markup, see HelpOnEditing.


ParserBase is a parser utility class used to produce colorized source displays. It is easily extended. The HTML Formatter will render such code displays with switchable linenumbers, if the browser supports DOM and JavaScript.

A ParserBase colorization parser understands the following arguments to a #FORMAT pi or a hashbang line. Just add those arguments after the name of the parser (#FORMAT python start=10 step=10 numbering=on or #!python numbering=off).

if line numbering should be added. defaults to 'on'. possible values: 'on', 'off' (no linenumbers, but javascript to add them), 'disable' (no line numbers at all)
where to start with numbering. defaults to 1
increment to the linenumber. defaults to 1

MoinMoin comes with a few examples from which you can go on:


   1 int main(int argc, char **argv) {
   2   return 0;
   3 }


   1 import java.util.Date;
   2 import java.util.Calendar;
   4 public class IntDate
   5 {
   6   public static Date getDate(String year, String month, String day)
   7     {
   8       // Date(int, int, int) has been deprecated, so use Calendar to
   9       // set the year, month, and day.
  10       Calendar c = Calendar.getInstance();
  11       // Convert each argument to int.
  12       c.set(Integer.parseInt(year),Integer.parseInt(month),Integer.parseInt(day));
  13       return c.getTime();
  14     }
  15 }


   1 function TRegEx.Match(const s:string):boolean;
   2 var
   3     l,i : integer;
   4 begin
   5     result := MatchPos(s,l,i);
   6 end;


Colorizes python code. It is not derived from ParserBasem, but it allows the same arguments as the ParserBase parsers.

   1 def hello():
   2     print "Hello World!"


Puts an IRC log into a table.

23:18 jroes ah
23:19 jroes hm, i like the way {{{ works, but i was hoping the lines would wrap
23:36 ThomasWal you could also write a parser or processor
23:38 jroes i could?
23:38 jroes would that require modification on the moin end though?
23:38 jroes i cant change the wiki myself :x


The CSV parser works on so-called comma separated values, though the comma is now usually a semicolon. The first line is considered to contain column titles that are rendered in bold, so when you don't want table headers, leave the first line empty.

The bang path can contain "-index" arguments, to hide certain columns from the output; column indices are counted starting from 1.

Any other argument is treated as the seperator. This allows you to use e.g. commas (,) instead of semicolons (;). If you do not supply a separator, ; will be used. See the examples below.

  • /!\ The current code contains a very simple CSV parser.

MoinMoin 1.3 - clipping of the patch history:

patch-366 make _normalize_text public method Nir Soffer
patch-367 fixed failing test wikiutil: good system page names Nir Soffer
patch-368 Fixed DeprecationWarning in and an unused import in Alexander Schremmer
patch-369 remove duplicate code in formatter.base Thomas Waldmann
patch-370 fixed long int in mig3 Thomas Waldmann
patch-371 fixed unicode error on eventlog Nir Soffer
patch-372 fixed util.web.makeQueryString and Page.url Nir Soffer
patch-373 fixed again non ascii http_referer Nir Soffer
patch-374 supports different separators now Alexander Schremmer
patch-375 improved searchform behavior on Mozilla/Firefox Nir Soffer
patch-376 More correct script for actions menu init Nir Soffer

MoinMoin Version History:

Version Date
0.11 2002-03-11
0.10 2001-10-28
0.9 2001-05-07
0.8 2001-01-23
0.7 2000-12-06
0.6 2000-12-04
0.5 2000-11-17
0.4 2000-11-01
0.3 2000-10-25
0.2 2000-08-26
0.1 2000-07-29


See /ReStructuredText


See HelpOnXmlPages.