The first lines of the velocity templates have a special meaning. In the best style of javadoc commens, the first velocity comments starting with ## can be intepreted in a special manner.
A syntax similar to the property file syntax is used to specify different parameters for the template. In this way, a template can have a name, a description, or specify the default output pattern name.
The algorithm described to process the comment lines is described here. This algorithm attempts to stick to the KISS principle.
The first lines of the template are processed. Blank lines are ignored. The first non comment and non blank line stops the line fetching process.
With the lines fetched the fist colon (:) is searched. If there's no colon, the line is ignored, if there is one The string between the colon and the endline is the value of the property, the key of the property is the trimed text between the ## (which is removed) and the colon.