Sha256: 6b4e3869f0a959b14be8d13707a9ebdc2806646176089f76436382d26d790709
Contents?: true
Size: 886 Bytes
Versions: 2
Compression:
Stored size: 886 Bytes
Contents
require "zopfli" module Jekyll module Zopfli class Compressor ZIPPABLE_EXTENSIONS = [ '.html', '.css', '.js', '.txt', '.ttf', '.atom', '.stl', '.xml', '.svg', '.eot' ] attr_reader :site def initialize(site) @site = site end def compress_file(file_name) return unless ZIPPABLE_EXTENSIONS.include?(File.extname(file_name)) zipped = "#{file_name}.gz" contents = ::Zopfli.deflate(File.read(file_name), format: :gzip) File.open(zipped, "w+") do |file| file << contents end File.utime(File.atime(file_name), File.mtime(file_name), zipped) end def compress site.each_site_file do |file| compress_file(file.destination(site.dest)) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
jekyll-zopfli-1.1.0 | lib/jekyll/zopfli/compressor.rb |
jekyll-zopfli-1.0.0 | lib/jekyll/zopfli/compressor.rb |