SHOW:
|
|
- or go back to the newest paste.
1 | #!/usr/bin/env ruby -Ku | |
2 | #coding: utf-8 | |
3 | ||
4 | =begin | |
5 | つかいかた: | |
6 | - | $ ruby deflate.rb agc047_e.rb > agc047_e.min.rb |
6 | + | $ ruby deflate-uriencode.rb agc047_e.rb |
7 | ||
8 | URIエンコードして出力します。 | |
9 | =end | |
10 | ||
11 | require "zlib" | |
12 | require "uri" | |
13 | ||
14 | deflated = Zlib.deflate(ARGF.read.chomp, 9) | |
15 | ||
16 | code = | |
17 | if deflated.include? ?\r | |
18 | # \rがあると''で囲めない(エスケープする必要がある〜 | |
19 | '"' + deflated.gsub(/\\/, "\\\\").gsub(/"/, "\\\"").gsub(/#(?=\{)/, "\\#").gsub(/\r/, "\\r").gsub(/\n/, "\\n") + '"' | |
20 | else | |
21 | "'" + deflated.gsub(/\\'/, "\\\\'").gsub(/'/, "\\'") + "'" | |
22 | end | |
23 | ||
24 | file = <<EOF.chomp | |
25 | #!ruby -Knrzlib | |
26 | - | print file |
26 | + | |
27 | EOF | |
28 | STDERR.puts "#{file.length} B" | |
29 | puts URI.encode_www_form_component file |