Version 13 (modified by 9 years ago) (diff) | ,
---|
Contents
Advanced Argument Parser for WikiMacros
Description
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 trac.wiki.macros.parse_args
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.
Trac-hacks which use this plugin:
- GoogleMapMacro
- GoogleStaticMapMacro
- ListOfWikiPagesMacro
- TicketStatsMacro
- TicketChartsMacro
Documentation
Definition
def parse_args (args, strict = True, multi = False, listonly = False, minlen = 0, quotechar = '"', escchar = '\\', delim = ',', delquotes = False)
Usage Example
# Instead of: from trac.wiki.macros import parse_args # Use: from tracadvparseargs import * class SomeMacro(WikiMacroBase): def expand_macro(self, formatter, name, args): largs, kwargs = parse_args( args, <options> )
Parameters
args
- The argument string; 'content' in `expand_macro. This is the only mandatory argument.
strict
- Enables strict checking of keys.
multi
- Enables folding of muliple given keys into list.
If set toTrue
, 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. listonly
- If true only a list is returned, no directionary.
minlen
- Extend returned list to given minimum length. Only used when
listonly=True
.
Parser parameters
quotechar
- The quote character to be used.
escchar
- The escape character to be used.
delim
- The delimiter character to be used.
delquotes
- Selects if 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.
Download
Download the zipped source from [download:advparseargsplugin/0.11 here].
Released Python EGGs: v0.2 v0.3
This package is also available from the Python Package Index.
Source
You can check out AdvParseArgsPlugin from here using Subversion, or browse the source with Trac.
Recent Changes
Author/Contributors
Author: martin_s
Maintainer: Martin Scharrer
Contributors: