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 |