Sha256: f09a3c6ceed8526a9b43abbcef212c1ed358e4dc1041c7de5ee7049d69dfdca5
Contents?: true
Size: 590 Bytes
Versions: 248
Compression:
Stored size: 590 Bytes
Contents
require 'tilt/template' module Tilt class EtanniTemplate < Template def prepare separator = data.hash.abs chomp = "<<#{separator}.chomp!" start = "\n_out_ << #{chomp}\n" stop = "\n#{separator}\n" replacement = "#{stop}\\1#{start}" temp = data.strip temp.gsub!(/<\?r\s+(.*?)\s+\?>/m, replacement) @code = "_out_ = [<<#{separator}.chomp!]\n#{temp}#{stop}_out_.join" end def precompiled_template(locals) @code end def precompiled(locals) source, offset = super [source, offset + 1] end end end
Version data entries
248 entries across 201 versions & 37 rubygems