<?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>HelpOnMacros</title></articleinfo><section><title>Macros</title><para>Macros allow the insertion of system features into normal wiki pages; the only thing that makes those pages special is that they contain macros. If you edit pages like <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/RecentChanges#'>RecentChanges</ulink> or <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/SystemInfo#'>SystemInfo</ulink>, you'll see what that means. </para><para>For more information on the possible markup, see <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnEditing#'>HelpOnEditing</ulink> and <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnMoinWikiSyntax#'>HelpOnMoinWikiSyntax</ulink>. </para><section><title>Search macros</title><para><ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/MoinMoin#'>MoinMoin</ulink> now uses a new search engine, that lets your make sophisticated searches using both the interactive search box or any of the search macros. For more help, see <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnSearching#'>HelpOnSearching</ulink>. </para><informaltable><tgroup cols='2'><colspec colwidth='33*' colname='col_0'/><colspec colwidth='75*' colname='col_1'/><tbody><row rowsep='1'><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Macro</emphasis> </para></entry><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Description</emphasis>  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;AdvancedSearch>></code></para></entry><entry colsep='1' rowsep='1' valign='top'><para> create an advanced search dialogue on the page. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/FindPage#'>FindPage</ulink>. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;TitleSearch>></code></para></entry><entry colsep='1' rowsep='1'><para> create a search box on the page, which search the page titles. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/FindPage#'>FindPage</ulink>. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;FullSearch>></code></para></entry><entry colsep='1' rowsep='1'><para> create a search box on the page, which search the page contents.See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/FindPage#'>FindPage</ulink>. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;FullSearch()>></code></para></entry><entry colsep='1' rowsep='1'><para> print a list of pages whose content matches the current page title (like clicking on the page title). See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/CategoryCategory#'>CategoryCategory</ulink> for example </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;FullSearch(text)>></code></para></entry><entry colsep='1' rowsep='1'><para> print a list of pages whose content matches the search term. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;FullSearchCached(text)>></code></para></entry><entry colsep='1' rowsep='1'><para> Works like the <code>FullSearch</code> macro but caches the results statically. Use it if you prefer speed over an up-to-date result. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;GoTo>></code></para></entry><entry colsep='1' rowsep='1'><para> directly go to the page you enter. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/FindPage#'>FindPage</ulink>.  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;PageList(Help)>></code></para></entry><entry colsep='1' rowsep='1'><para> print a list of pages whose title matches the search term. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpIndex#'>HelpIndex</ulink>. </para></entry></row></tbody></tgroup></informaltable></section><section><title>Navigation macros</title><informaltable><tgroup cols='2'><colspec colwidth='33*' colname='col_0'/><colspec colname='col_1'/><tbody><row rowsep='1'><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Macro</emphasis> </para></entry><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Description</emphasis>  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;RecentChanges>></code> </para></entry><entry colsep='1' rowsep='1'><para> a list of recently edited pages. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/RecentChanges#'>RecentChanges</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;TitleIndex>></code> </para></entry><entry colsep='1' rowsep='1'><para> an index of all page titles. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/TitleIndex#'>TitleIndex</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;WordIndex>></code> </para></entry><entry colsep='1' rowsep='1'><para> an index of all words in page titles. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/WordIndex#'>WordIndex</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;WantedPages>></code> </para></entry><entry colsep='1' rowsep='1'><para> list links to non-existent pages. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/WantedPages#'>WantedPages</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;OrphanedPages>></code> </para></entry><entry colsep='1' rowsep='1'><para> list pages no other page links to. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/OrphanedPages#'>OrphanedPages</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;AbandonedPages>></code> </para></entry><entry colsep='1' rowsep='1'><para> list pages that were not edited for the longest time. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/AbandonedPages#'>AbandonedPages</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;RandomPage>></code> </para></entry><entry colsep='1' rowsep='1'><para> inserts a link to a random page. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;RandomPage(#)>></code> </para></entry><entry colsep='1' rowsep='1'><para> links to a number of random pages. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;TableOfContents([maxdepth])>></code> </para></entry><entry colsep='1' rowsep='1'><para> display a local table of contents, possibly limited to a maximal depth. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;Anchor(anchorname)>></code> </para></entry><entry colsep='1' rowsep='1'><para> macro to insert anchors into a page. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;Navigation(children[,maxdepth])>></code> </para></entry><entry colsep='1' rowsep='1'><para> macro to list all of a pages' children. See start of this page for sample. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;Navigation(siblings[,maxdepth])>></code> </para></entry><entry colsep='1' rowsep='1'><para> quick navigation to siblings of a page. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnMacros/MailTo#'>/MailTo</ulink> for sample. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;Navigation(slideshow)>></code> </para></entry><entry colsep='1' rowsep='1'><para> creates a link to toggle between slide show and wiki mode, and a link to start the slide show. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnSlideShows#'>HelpOnSlideShows</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;Navigation(slides)>></code> </para></entry><entry colsep='1' rowsep='1'><para> displays first/prev/next/last links. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnSlideShows#'>HelpOnSlideShows</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;AttachInfo>></code> </para></entry><entry colsep='1' rowsep='1'><para>displays number of attachments for current page. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnActions/AttachFile#'>HelpOnActions/AttachFile</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;AttachInfo(page)>></code> </para></entry><entry colsep='1' rowsep='1'><para> displays number of attachments for page. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnActions/AttachFile#'>HelpOnActions/AttachFile</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para> <code>&lt;&lt;AttachList(pagename,mimetype)>></code> </para></entry><entry colsep='1' rowsep='1'><para> displays list of attachments. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnActions/AttachFile#'>HelpOnActions/AttachFile</ulink> </para></entry></row></tbody></tgroup></informaltable></section><section><title>System Information macros</title><informaltable><tgroup cols='2'><colspec colwidth='33*' colname='col_0'/><colspec colname='col_1'/><tbody><row rowsep='1'><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Macro</emphasis> </para></entry><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Description</emphasis>  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;Hits>></code></para></entry><entry colsep='1' rowsep='1'><para> a counter for page hits <code>&lt;&lt;Hits([all=(False,True)][,event_type=(VIEWPAGE,SAVEPAGE)]>></code> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;InterWiki>></code></para></entry><entry colsep='1' rowsep='1'><para> a list of all known <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/InterWiki#'>InterWiki</ulink> names.</para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;SystemInfo>></code></para></entry><entry colsep='1' rowsep='1'><para> info on the wiki, the python interpreter and the host system. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;PageCount(exists)>></code></para></entry><entry colsep='1' rowsep='1'><para>current page count. If <code>exists</code> is supplied as an argument, only existing pages will be shown.  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;PageSize>></code></para></entry><entry colsep='1' rowsep='1'><para> list the sizes of all pages. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/PageSize#'>PageSize</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;StatsChart(type)>></code></para></entry><entry colsep='1' rowsep='1'><para> shows statistical charts (currently defined types: hitcounts, pagesize, useragents, languages). See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/EventStats#'>EventStats</ulink> and subpages </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;SystemAdmin>></code></para></entry><entry colsep='1' rowsep='1'><para> Information for system administrators, see <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/SystemAdmin#'>SystemAdmin</ulink>. <emphasis>You need to be superuser to use this macro.</emphasis> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;EditedSystemPages>></code></para></entry><entry colsep='1' rowsep='1'><para> A list of system pages that were modified. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;WikiConfig>></code></para></entry><entry colsep='1' rowsep='1'><para> Shows wiki configuration settings which are either non-default or unknown. <emphasis>You need to be superuser to use this macro.</emphasis> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;WikiConfigHelp>></code></para></entry><entry colsep='1' rowsep='1'><para> Shows all wiki configuration settings with descriptions. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;HighlighterList>></code></para></entry><entry colsep='1' rowsep='1'><para> List available Pygments lexers. See <ulink url='http://moinmo.in/MacroMarket/HighlighterList#'>MacroMarket/HighlighterList</ulink> for additional information. </para></entry></row></tbody></tgroup></informaltable></section><section><title>Others</title><informaltable><tgroup cols='2'><colspec colwidth='33*' colname='col_0'/><colspec colname='col_1'/><tbody><row rowsep='1'><entry colsep='1' rowsep='1'><para> <emphasis role='strong'>Macro</emphasis></para></entry><entry colsep='1' rowsep='1'><para><emphasis role='strong'>Description</emphasis> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;Action(action [,text])>></code></para></entry><entry colsep='1' rowsep='1'><para>links to page with valid action, optional text could be used as alias. (action names are case sensitive). Example: <code>&lt;&lt;Action(print, Print this page)>></code> will generate <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnMacros?action=print'>Print this page</ulink></para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;Icon(image)>></code></para></entry><entry colsep='1' rowsep='1'><para>display system icons.  See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnNavigation#'>HelpOnNavigation</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;BR>></code></para></entry><entry colsep='1' rowsep='1'><para> insert a line break. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;RandomQuote(pagename)>></code> </para></entry><entry colsep='1' rowsep='1'><para> Select a random quote from the given page, or from <code>FortuneCookies</code> if omitted. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;Include(HelloWorld[,"heading"[,level]])>></code> </para></entry><entry colsep='1' rowsep='1'><para> include contents of another page. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnMacros/Include#'>/Include</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;FootNote(text)>></code></para></entry><entry colsep='1' rowsep='1'><para> Add a footnote<footnote><para>the text cannot contain any wiki markup</para></footnote>, or explicitly display collected footnotes when no args are given.  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;Date(timestamp)>></code></para></entry><entry colsep='1' rowsep='1'><para> display a timestamp according to system settings, in the style of <!--The macro Date caused an error and should be blacklisted. It returned the data '2013-05-22' which caused the docbook-formatter to choke. Please file a bug.--> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;DateTime(timestamp)>></code></para></entry><entry colsep='1' rowsep='1'><para> display a timestamp<footnote><para>"timestamp" can be empty (current time), a number of seconds since 1970 (unix timestamp), or a W3C time specification ("2002-01-23T12:34:56"). See RFC822, sect. 5. </para></footnote> according to user settings, in the style of <!--The macro DateTime caused an error and should be blacklisted. It returned the data '2013-05-22 02:40:36' which caused the docbook-formatter to choke. Please file a bug.--> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;GetText(text)>></code></para></entry><entry colsep='1' rowsep='1'><para> <!--"~-smaller-~" is not applicable to DocBook-->(mainly intended for use on Help pages) Loads I18N texts. Example: "EditText" is translated to "EditText" </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;GetText2(,message,argument1,argument2,...)>></code></para></entry><entry colsep='1' rowsep='1'><para> <!--"~-smaller-~" is not applicable to DocBook-->(mainly intended for use on Help pages or in generated output on wiki pages) loads I18N texts and replaces <code>%s</code> in the message by the arguments. The first character of the argument is used as the separator (in this example: a comma). You can escape the separator by using a backslash. Example: "<code>&lt;&lt;GetText2(,[You may not read %s],FooBar)>></code>" yields "[You may not read FooBar]". For named placeholders, use "key=value" argument syntax, for example, "<code>&lt;&lt;GetText2(,Upload new attachment \"%(filename)s\",filename=file.txt)>></code>" yields "Upload new attachment "file.txt"". </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;TeudView>></code></para></entry><entry colsep='1' rowsep='1'><para> useful for intranet developer wikis, a means to view pydoc documentation, formatted via a XSLT stylesheet. See <ulink url='http://twistedmatrix.com/wiki/python/TeudProject'/> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;MailTo(email)>></code></para></entry><entry colsep='1' rowsep='1'><para> protect your email address from spam bots. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnMacros/MailTo#'>/MailTo</ulink> </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;NewPage(PageTemplate,ButtonLabel,[ParentPage,@ME,@SELF] [,NameTemplate])>></code></para></entry><entry colsep='1' rowsep='1'><para> Allow the user to create (sub-)pages easily, using the page <code>PageTemplate</code> as the template for the new page and the string <code>NameTemplate</code> as a template for the name.<footnote><para>`NameTemplate` is formatted with `time.strftime()`, with the exception of `%s` which is replaced by the input into the edit box (which is only shown if necessary). If `NameTemplate` is not specified or empty, it defaults to `%s`.</para></footnote> <code>@ME</code> is used if you want the  page created below the users homepage. <code>@SELF</code> is used to create a subpage below the page where it is called from. </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;GetVal(NeatSnippets,regards)>></code></para></entry><entry colsep='1' rowsep='1'><para> Retrieve dictionary entries from dict pages. Example: If you have a page called <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/GermanDict#'>GermanDict</ulink> which contains the entry <emphasis>Test</emphasis>, you should see the translation here:  </para></entry></row><row rowsep='1'><entry colsep='1' rowsep='1'><para><code>&lt;&lt;MonthCalendar(,,12)>></code></para></entry><entry colsep='1' rowsep='1'><para> Displays a Calendar and creates link for entries to each day on subpages. See <ulink url='http://wiki.openmusiclabs.com/wiki/HelpOnMacros/wiki/HelpOnMacros/MonthCalendar#'>/MonthCalendar</ulink> </para></entry></row></tbody></tgroup></informaltable><para><footnote><para>None</para></footnote> </para></section></section></article>