lib/ehbrs/runner/google/translate.rb in ehbrs-tools-0.15.0 vs lib/ehbrs/runner/google/translate.rb in ehbrs-tools-0.16.0
- old
+ new
@@ -1,19 +1,16 @@
# frozen_string_literal: true
require 'eac_cli/default_runner'
require 'eac_ruby_utils/core_ext'
-require 'eac_ruby_utils/console/docopt_runner'
require 'ehbrs/google/translate/session'
module Ehbrs
- class Runner < ::EacRubyUtils::Console::DocoptRunner
- class Google < ::EacRubyUtils::Console::DocoptRunner
- class Translate < ::EacRubyUtils::Console::DocoptRunner
- include ::EacCli::DefaultRunner
-
- runner_definition do
+ class Runner
+ class Google
+ class Translate
+ runner_with :help do
desc 'Traduz um documento com Google Translate.'
arg_opt '-o', '--output-file', 'Salva saída em <output-file>.'
bool_opt '-w', '--overwrite', 'Permite sobreescrever arquivo de saída.'
pos_arg 'source-file'
end
@@ -36,16 +33,14 @@
def translated_content_uncached
session.translate(source_file)
end
- def source_file
- options.fetch('<source-file>')
- end
+ delegate :source_file, to: :parsed
def output_file
- options.fetch('--output-file') || default_output_file
+ parsed.output_file || default_output_file
end
def default_output_file
::File.join(
::File.dirname(source_file),
@@ -70,10 +65,10 @@
end
def validate_output_file
return if output_to_stdout?
return unless ::File.exist?(output_file)
- return if options.fetch('--overwrite')
+ return if parsed.overwrite?
fatal_error "Output file \"#{output_file}\" already exists"
end
def validate_output_content