diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-12-07 01:22:37 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-12-07 01:22:37 +0000 |
commit | 4260aa1dc399e1bb4a2147409ed1139112cfefb8 (patch) | |
tree | 72b378fdcef83d532147bb6deeafe2ad55134f3e /lib/rdoc/generator/json_index.rb | |
parent | 7d2d6d0a2f600943ab484238b4722036151376a5 (diff) |
* lib/rdoc: Update to RDoc 4.2.0.
* test/rdoc: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rdoc/generator/json_index.rb')
-rw-r--r-- | lib/rdoc/generator/json_index.rb | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/lib/rdoc/generator/json_index.rb b/lib/rdoc/generator/json_index.rb index c303b2effb..9d6f0d4356 100644 --- a/lib/rdoc/generator/json_index.rb +++ b/lib/rdoc/generator/json_index.rb @@ -1,4 +1,5 @@ require 'json' +require 'zlib' ## # The JsonIndex generator is designed to complement an HTML generator and @@ -153,6 +154,49 @@ class RDoc::Generator::JsonIndex end ## + # Compress the search_index.js file using gzip + + def generate_gzipped + debug_msg "Compressing generated JSON index" + out_dir = @base_dir + @options.op_dir + + search_index_file = out_dir + SEARCH_INDEX_FILE + outfile = out_dir + "#{search_index_file}.gz" + + debug_msg "Reading the JSON index file from %s" % search_index_file + search_index = search_index_file.read + + debug_msg "Writing gzipped search index to %s" % outfile + + Zlib::GzipWriter.open(outfile) do |gz| + gz.mtime = File.mtime(search_index_file) + gz.orig_name = search_index_file.to_s + gz.write search_index + gz.close + end + + # GZip the rest of the js files + Dir.chdir @template_dir do + Dir['**/*.js'].each do |source| + dest = out_dir + source + outfile = out_dir + "#{dest}.gz" + + debug_msg "Reading the original js file from %s" % dest + data = dest.read + + debug_msg "Writing gzipped file to %s" % outfile + + Zlib::GzipWriter.open(outfile) do |gz| + gz.mtime = File.mtime(dest) + gz.orig_name = dest.to_s + gz.write data + gz.close + end + end + end + end + + ## # Adds classes and modules to the index def index_classes |