Context Navigation

Contents

Help Macros and Plugins with trac.ini lookup and defaulting

Description

This module provides a helper class which can be used by other plugins, especially macros, in retrieving optional arguments from the trac.ini configuration file. By itself, this modules does not provide any functionality.

A macro using this module, can be called with a config=xxx option, to retrieve a set of options which in trac.ini all start with prefix xxx.

Inheritance is supported, by writing an option xxx.inherit = yyy in trac.ini - all macro options not yet determined, are then searched with the other prefix, yyy.

Multiple inheritance is supported, by writing config=prefixA|prefixB in the macro invocation, or writing an xxx.inherit = prefixC|prefixD option in trac.ini.

The macro module which uses this functionality, specifies a list of expected options, as well as their defaults. These defaults will then be used when the respective option is not specified anywhere.

Download

Source

Installation

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

Example

Currently no plugin or macro uses the functionality.
There is an examplemacro.py file included in the distribution, which when enabled through the admin plugings interface, provides a macro named TracMacroConfigExample, which displays a table detailing interesting things about concrete option lookups. This allows you to play with macro arguments and in a corresponding [macroconfig-example] section in trac.ini and to play with inheritance setups.

This is how exemplary calls to that macro would be written in a wiki page: