Advanced Argument Parser for WikiMacros


This plugin provides an advanced version of the parse_args function for WikiMacros.

This function is used in WikiMacros to parse the macro arguments. This enhanced version is meant as a replacement of and supports several advanced options, see section #Parameters. The most important feature is the support for quoting the delimiter, eg key1=val1, key2="some,text", key3=val3 will correctly return some,text as the value of key2. The original parse_args function would return "some and handle text" as separate argument.

Other plugins which use this plugin:


def parse_args (args, strict = True, multi = False, listonly = False, minlen = 0,
        quotechar = '"', escchar = '\\', delim = ',', delquotes = False)

Usage Example

# Instead of: from import parse_args
# Use:
from tracadvparseargs import *

class SomeMacro(WikiMacroBase):
    def expand_macro(self, formatter, name, args):
        largs, kwargs = parse_args( args, <options> )


The argument string; 'content' in `expand_macro. This is the only mandatory argument.
Enables strict checking of keys.
Enables folding of muliple given keys into list.
If set to True, values of multiple given keys will be returned as list, but single given keys will return a scalar.
If set to a list, only the values of the listed keys will be returned as list, but always as list even when there is only one value.
If this list contains '*', all values are always returned as list.
If true only a list is returned, no directionary.
Extend returned list to given minimum length. Only used when listonly=True.

Parser parameters

The quote character to be used.
The escape character to be used.
The delimiter character to be used.
Selects whether quotes should be removed.

Bugs/Feature Requests

Existing bugs and feature requests for AdvParseArgsPlugin are here.

If you have any issues, create a new ticket.


1 / 1


1 / 1


Download the zipped source from here.

This package is also available from PyPi.


You can check out AdvParseArgsPlugin from here using Subversion, or browse the source with Trac.


General instructions on installing Trac plugins can be found on the TracPlugins page.

Recent Changes

16394 by rjollos on 2017-03-25 09:20:58
Remove eggs
15264 by rjollos on 2016-02-11 04:22:34
Remove unnecessary svn:mime-type on py files

svn:mime-type was set to "plain" for many files.

13612 by rjollos on 2014-01-24 00:45:47
Changed license to BSD 3-Clause with permission of author (comment:1:ticket:11500). Fixes #11500.


Author: martin_s
Maintainer: Martin Scharrer

Last modified 12 months ago Last modified on Mar 26, 2017, 11:34:47 AM