Sha256: 1ff9218176c2cea00c7896e8c63bf22ebaeb55a3ccf76676b1d40e846bc9165d

Contents?: true

Size: 1.11 KB

Versions: 17

Compression:

Stored size: 1.11 KB

Contents

# -*- coding: utf-8 -*-
#
# Copyright 2013 whiteleaf. All rights reserved.
#

require_relative "narou"
require_relative "command"
require_relative "helper"
require_relative "localsetting"

module CommandLine
  def self.run(argv)
    if Helper.os_windows?
      argv.map! do |arg|
        arg.encode(Encoding::UTF_8)
      end
    end
    argv.unshift("help") if argv.empty?
    arg = argv.shift.downcase
    arg = Command::Shortcuts[arg] || arg
    arg = "help" if arg == "-h" || arg == "--help"
    arg = "version" if arg == "-v" || arg == "--version"
    unless Narou.already_init?
      unless ["help", "version", "init"].include?(arg)
        arg = "help"
      end
    end
    unless Command.get_list.include?(arg)
      error "不明なコマンドです"
      puts
      arg = "help"
    end
    if argv.empty?
      argv += load_default_arguments(arg)
    end
    Command.get_list[arg].execute(argv)
  end

  def self.load_default_arguments(cmd)
    default_arguments_list = LocalSetting.get["local_setting"]
    (default_arguments_list["default_args.#{cmd}"] || "").split
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
narou-1.5.0.2 lib/commandline.rb
narou-1.5.0.1 lib/commandline.rb
narou-1.5.0 lib/commandline.rb
narou-1.4.6 lib/commandline.rb
narou-1.4.5 lib/commandline.rb
narou-1.4.4 lib/commandline.rb
narou-1.4.3 lib/commandline.rb
narou-1.4.2.rc2 lib/commandline.rb
narou-1.4.2.rc1 lib/commandline.rb
narou-1.4.1.1 lib/commandline.rb
narou-1.4.1 lib/commandline.rb
narou-1.4.0 lib/commandline.rb
narou-1.3.5.1 lib/commandline.rb
narou-1.3.5 lib/commandline.rb
narou-1.3.4 lib/commandline.rb
narou-1.3.3 lib/commandline.rb
narou-1.3.2 lib/commandline.rb