DRY in consul-template

I have a consul-template process I want to use, and I need to render few files.
The files aren’t very small and I want to use “functions”
I know I can use “define” to set them up and run them, however, I believe that they are only scoped within the same template, thus, if I have a template I want to use in multiple “parent” templates, I can’t really do that, can I?
if I can, how?

Thanks