2015-10-06 23:14:45 +09:00
|
|
|
require 'temple'
|
|
|
|
require 'hamlit/parser'
|
2015-10-24 13:59:15 +09:00
|
|
|
require 'hamlit/compiler'
|
2015-11-28 03:32:53 +09:00
|
|
|
require 'hamlit/escapable'
|
2015-11-13 23:19:37 +09:00
|
|
|
require 'hamlit/html'
|
2015-10-06 23:14:45 +09:00
|
|
|
|
|
|
|
module Hamlit
|
|
|
|
class Engine < Temple::Engine
|
|
|
|
define_options(
|
2015-10-25 03:41:04 +09:00
|
|
|
generator: Temple::Generators::ArrayBuffer,
|
|
|
|
format: :html,
|
|
|
|
attr_quote: "'",
|
|
|
|
escape_html: true,
|
|
|
|
escape_attrs: true,
|
|
|
|
autoclose: %w(area base basefont br col command embed frame
|
|
|
|
hr img input isindex keygen link menuitem meta
|
|
|
|
param source track wbr),
|
|
|
|
filename: "",
|
2015-10-06 23:14:45 +09:00
|
|
|
)
|
|
|
|
|
|
|
|
use Parser
|
2015-10-24 13:59:15 +09:00
|
|
|
use Compiler
|
2015-11-13 23:19:37 +09:00
|
|
|
use HTML
|
2015-11-28 03:32:53 +09:00
|
|
|
use Escapable
|
2015-10-06 23:14:45 +09:00
|
|
|
filter :ControlFlow
|
|
|
|
filter :MultiFlattener
|
|
|
|
filter :StaticMerger
|
|
|
|
use :Generator, -> { options[:generator] }
|
|
|
|
end
|
|
|
|
end
|