class Subfinder::Parser::Args

Public Class Methods

new(args) click to toggle source

Initialze and parse input args

# File lib/subfinder/parser/args.rb, line 7
def initialize(args)
  @args = args
  parse_args
  set_default_values
end

Public Instance Methods

parse_args() click to toggle source
# File lib/subfinder/parser/args.rb, line 13
def parse_args
  opts = OptionParser.new
  opts.banner = usage_msg
  opts.separator ''
  opts.separator 'options:'
  opts.on('-u', '--url url', 'Set Subscene url page') { |url| Config.url = url }
  opts.on('-l', '--language language', 'Set subtitle language') { |language| Config.language = language }
  opts.on('-v', '--version', 'Show the Subfinder version') { puts("Subfinder #{Subfinder::VERSION}"); exit }
  opts.on('-h', '--help', 'You used it just now') { puts(opts); exit }
  opts.on('-d', '--debug', 'Run in debug mode') { Config.debug = true }
  opts.on('-q', '--quiet', 'Display no message') { Config.quiet = true }
  opts.on('--dryrun', 'Test application on mock files') { Subfinder::Dryrun.enable }

  opts.parse!(@args)
end

Private Instance Methods

set_default_values() click to toggle source
# File lib/subfinder/parser/args.rb, line 31
def set_default_values
  # Set English as a default value for subtitle language if not provided
  Config.language ||= 'en'
  Config.working_dir ||= Dir.pwd
end
usage_msg() click to toggle source
# File lib/subfinder/parser/args.rb, line 37
def usage_msg
  usage = '
    Usage:
      subfinder [options]
      See https://github.com/sizief/subfinder for more information.
  '
  usage
end