9 | | The templates are implied in order, values from latter templates overwriting earlier ones. From the aggregated configuration, a trac project is made using supplied variables |
| 9 | The templates are implied in order, values from latter templates overwriting earlier ones. From the aggregated configuration, a trac project is made using supplied variables. |
| 10 | |
| 11 | == Convention-based Variables == |
| 12 | |
| 13 | With a few exceptions (e.g. `project`), [TracLegosScript TracLegos] does no sort of enforcing of similarity of template parameters. [TracLegosScript TracLegos] asserts a convention-based system where template authors are encouraged to use a convention that works with them and the world at large. For example, the [source:traclegosscript/anyrelease/example/oss/osstracproject/template/conf/trac.ini_tmpl OSS Trac project template] uses a variable, `$basedir`, that defines a base directory relative to which it defines by convention several file locations. If this pattern fits the use case for a new template, keeping the variable name intact allows site configuration and other locations addressing variables by name to work as expected whereas renaming the variable would require more work to incorporate it into existing instances. However, if this convention did not work for your template, then you should use a convention that does, preferably with a variable name that is unambiguous. [TracLegosScript TracLegos] uses a flat namespace for simplicity and is not slated to move towards namespacing variables. |