def file_data(data)
data['name'] = data['path'].gsub('/', '_')
return data unless data['file_type'] == 'file'
if data['is_binary'] == 'N'
sdelim = data['delim_start']
edelim = data['delim_end']
cstr = data['contents']
matched = false
data['contents'] = cstr.gsub(/(#{Regexp.escape(sdelim)})(.*)(#{Regexp.escape(edelim)})/) do |_match|
matched = true
"<%= #{map_macro Regexp.last_match[2].strip!} %>"
end if cstr
data['file_type'] = 'template' if matched
else
debug 'decoding'
data['contents'] = data['contents'].unpack('m')
end
return data
end