def self.expand(template, nodes)
nodes.map do |node|
if node.is_a?(Hash)
- template.gsub(/%%([^%]+)%%/) { node[Regexp.last_match[1].to_sym] }
+ template
+ .gsub(/%%%([^%]+)%%%/) { node[Regexp.last_match[1].to_sym].tr("-", "_") }
+ .gsub(/%%([^%]+)%%/) { node[Regexp.last_match[1].to_sym] }
else
- template.gsub("%%", node)
+ template
+ .gsub("%%%", node.tr("-", "_"))
+ .gsub("%%", node)
end
end.join(" ")
end