Yet, you can check a custom resource loader available on the wiki that does precisely this:
http://wiki.apache.org/velocity/StructuredGlobbingResourceLoader


  Claude

On 2011-03-21 19:50, Sergiu Dumitriu wrote:
On 03/21/2011 07:04 PM, Rich Wagner wrote:

Sorry in advance if this is a FAQ whose answer I haven't found...

Instead of writing:


#foreach( $container in $Containers )
#if( $container.prop("Generate") )
     ...stuff...
#end
#end


I'd like to indent the "#if" and its "#end", for the sake of better readability:


#foreach( $container in $Containers )
     #if( $container.prop("Generate") )
     ...stuff...
     #end
#end


But then I find the spaces before the "#if" and its matching "#end" show up in the output, which I don't want to happen.

To get around this, I've implemented a somewhat hack-ish Template preprocesser: my resource loader wraps a template's stream inside my own stream implementation which filters template lines. That is, if a line starts with "<white-space>#blah", the initial spaces are trimmed off.

That works, and isn't all that intrusive. But if "off-the-shelf" Velocity already provides an easier way to accomplish the same thing, I'd prefer that...

No, there's no similar feature directly in Velocity yet.



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org
For additional commands, e-mail: user-h...@velocity.apache.org

Reply via email to