wiki:AdvParseArgsPlugin

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.

Other plugins which use this plugin:

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 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.
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 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.

defect

1 / 1

task

1 / 1

Download

Download the zipped source from here.

Released Python eggs: v0.2 and v0.3

This package is also available from here.

Source

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

Installation

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

Recent Changes

15264 by rjollos on 2016-02-11 05: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 01:45:47
Changed license to BSD 3-Clause with permission of author (comment:1:ticket:11500). Fixes #11500.
8541 by martin_s on 2010-08-30 23:57:20
Added encoding meta-comment and declared SVN keywords as unicode to avoid issues with non-english locales.
(more)

Author/Contributors

Author: martin_s
Maintainer: Martin Scharrer
Contributors:

Last modified 4 months ago Last modified on Jan 17, 2016, 3:26:58 PM