Sha256: 5592d510bd8051cf960b49602b11f2570a44bd1c3219d13393864c70aa7912a8
Contents?: true
Size: 1.09 KB
Versions: 24
Compression:
Stored size: 1.09 KB
Contents
require "yui/compressor" require "middleman/builder" module Middleman module Minified module Javascript include ::Haml::Filters::Base def render_with_options(text, options) compressor = ::YUI::JavaScriptCompressor.new(:munge => true) data = compressor.compress(text) <<END <script type=#{options[:attr_wrapper]}text/javascript#{options[:attr_wrapper]}>#{data.chomp}</script> END end end end class Builder alias_method :pre_yui_after_run, :after_run def after_run pre_yui_after_run compressor = ::YUI::JavaScriptCompressor.new(:munge => true) Dir[File.join(Middleman::Base.build_dir, Middleman::Base.js_dir, "**", "*.js")].each do |path| lines = IO.readlines(path) if lines.length > 1 compressed_js = compressor.compress(lines.join($/)) File.open(path, 'w') { |f| f.write(compressed_js) } say "<%= color('#{"[COMPRESSED]".rjust(12)}', :yellow) %> " + path.gsub(Middleman::Base.build_dir+"/", '') end end end end end Middleman::Base.supported_formats << "js"
Version data entries
24 entries across 24 versions & 1 rubygems