script showconfig

This script shows how LXR understood the configuration parameters from lxr.conf file. They are displayed in tabular form:

First column: parameter name

Second column: parameter type (string, array, hash, ...)

Third column: value from tree-specific parameter group

Fourth column: value from global parameter group

With such a layout, it is easy to see if a global value is overridden by a specific one.

dumphash ($h, $left)

Function dumphash returns the contents of the input hash as a ready-to-print string.

The value of a key may be a simple string (displayed surrounded with quotes), an array (dumped "as is" without checking for further references) or a hash (recursively dumped surrounded with curly braces).

  1. $h

    a reference to the hash to dump

  2. $left

    the number of spaces at left to indent this hash

parmvalue ($parm, $pg)

Function parmvalue dumps a parameter value if it exists in this parameter group.

After testing for parameter existence, processing is dispatched according to type value.

Parameter dbpass is not dumped for security reason.

  1. $parm

    a parameter name as a string

  2. $pg

    a reference to a parameter group

parmexpand ($templ, $who, $pgs, $pgnr)

Function parmexpand is a "$function" substitution function. It returns its block (contained in $tmpl) expanded for each accessible configuration parameter.

  1. $templ

    a string containing the template (i.e. argument)

  2. $who

    a string containing the script name (i.e. showconfig) requesting this substitution

  3. $pgs

    a reference to the parameter group array

  4. $pgnr

    parameter group index

Parameter names are obtained from global $config hash reference since all parameters end up there. "internal" parameters 'confpath' and 'parmgroupnr' are removed from the set.

A parameter may be defined in an included file like 'filetype' from 'filetypeconf'. In this case, both specific and global columns are empty.

A parameter is considered if it belongs in the global section or in the requested tree section.

To dump values anyway, force $config usage instead of a parameter group through query argument _confall with non zero value.

Function parmgrouplink is a "$variable" substitution function. It returns an < A > element invoking script showconfig to dump the designated parameter group.

  1. $pgnr

    parameter group index

  2. $pgs

    a reference to the parameter group array

Link is created only if $pgnr has an acceptable value. Otherwise, function returns string 'none'.

Script entry point

Output is controlled by a template

Eventually, a specific parameter group may be dumped by passing its index in URL argument _parmgroup. This index may receive a default value through configuration parameter 'parmgroupnr'.