Establish a string from a template by replacing patterns. Supported
patterns are:
{Name}
If Map contains Name=Value, insert Value using write/1.
If Name does not appear in Map, raise an existence error.
Name must satisfy the rules for a Prolog variable.
{Name,Default}
As above, but if Name does not appear in Map, use Value
{@Goal}
Insert the output (to current_output) of Goal here.
For safety reasons only accepted if Options contains
goals(true)