X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=lib%2Fredact%2Fapp.rb;h=5a229100b1a3b9f8d22919851c1dcf5c9fdbb37b;hb=dc00882e6139ccbee72bad4f96cabe950ba0c338;hp=2cc9dd7cf74b7022948a0d207380bb08127c32ab;hpb=32110b209dd3a39fc9e36b83ba830a9172ad6c15;p=redact.git diff --git a/lib/redact/app.rb b/lib/redact/app.rb index 2cc9dd7..5a22910 100644 --- a/lib/redact/app.rb +++ b/lib/redact/app.rb @@ -1,5 +1,5 @@ #-- -# $Id: app.rb 40 2005-05-25 20:19:45Z tilman $ +# $Id: app.rb 57 2005-06-14 15:11:35Z tilman $ # # Copyright (c) 2005 Tilman Sauerbeck (tilman at code-monkey de) # @@ -32,20 +32,30 @@ require "optparse" SCRIPT_LINES__ = {} +class OpenStruct + def clear + @table = {} + end +end + module Redact + OPTIONS = OpenStruct.new + class App + attr_reader :options + def initialize(args) @filename = nil - @options = OpenStruct.new + OPTIONS.clear @option_parser = parse_args(args) - @options.input = args.first - if @options.input.nil? + OPTIONS.input = args.first + if OPTIONS.input.nil? puts @option_parser.help exit end - @options.output ||= @options.input.sub(/.[^.]+$/, ".edj") + OPTIONS.output ||= OPTIONS.input.sub(/.[^.]+$/, ".edj") end def run @@ -53,12 +63,12 @@ module Redact SCRIPT_LINES__.clear begin - load @options.input + load OPTIONS.input rescue LoadError - raise("Cannot load '#{@options.input}'") + raise("Cannot load '#{OPTIONS.input}'") end - @filename = Pathname.new(@options.input).cleanpath.to_s + @filename = Pathname.new(OPTIONS.input).cleanpath.to_s if EDJE.collections.empty? raise("No collections found") @@ -67,7 +77,7 @@ module Redact amx = compile_embryo begin - Eet::File.open(@options.output, "w") do |ef| + Eet::File.open(OPTIONS.output, "w") do |ef| dump_amx(amx, ef) dump_header(ef) @@ -78,7 +88,7 @@ module Redact dump_fontmap(ef) end rescue Exception - File.rm_f(@options.output) + File.rm_f(OPTIONS.output) raise end end @@ -93,17 +103,17 @@ module Redact o.on("-o", "--output OUTPUT_FILE", "Write Edje to OUTPUT_FILE") do |file| - @options.output = file + OPTIONS.output = file end o.on("--image_dir IMAGE_DIR", "Add IMAGE_DIR to the image lookup path") do |dir| - @options.image_dir = dir + OPTIONS.image_dir = dir end o.on("--font_dir FONT_DIR", "Add FONT_DIR to the font lookup path") do |dir| - @options.font_dir = dir + OPTIONS.font_dir = dir end o.separator "" @@ -190,7 +200,7 @@ EOT def dump_fonts(ef) EDJE.font_dir.each do |entry| - ef.write("fonts/#{entry.filename}", + ef.write("fonts/#{entry.alias}", File.read(entry.filename)) end end