Sha256: fb80b7f1b78e027ad0641dbcd3c131ae609e5ff57f5363f5c61eda3fb04ccb59

Contents?: true

Size: 1.97 KB

Versions: 1

Compression:

Stored size: 1.97 KB

Contents

#!/usr/bin/env ruby
$LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib')))

require 'core'

Signal.trap('INT'){}

ARGV << '-h' if ARGV.empty?
options = {}

OptionParser.new do |opts|
  opts.banner = "Generate starter code for different coding environments.\n\nUsage: #{File.basename($PROGRAM_NAME)} [options] [env] NewProjectName\nRadon version: #{Paint[VERSION, '#2ecc71']}"
  opts.separator Paint["\nGlobal Options: ", '#95a5a6']


  opts.on('--list-env', 'List all supported environments') do
    all = Radon::Environments.get_all_names
    puts 'Supported environments are:'
    all.each do |e|
      puts "  #{e}"
    end
  end

  opts.on('-q', '--quiet', 'Run with suppressed console output.') do
    $quiet = true
  end

  opts.on('-O', '--open-vscode', 'Open the project in Visual Studio Code (if installed).') do
    options[:open_vscode] = true
    fail_with('You cannot open your project in both VSCode and Atom.') if options[:open_atom]
  end
  
  opts.on('-a', '--open-atom', 'Open the project in Atom (if installed).') do
    options[:open_atom] = true
    fail_with('You cannot open your project in both VSCode and Atom.') if options[:open_vscode]
  end

  opts.on('--verbose', 'Run verbosely') do
    $verbose = true
  end

  opts.on('-v', '--version', 'Show the radon version and exit') do
    puts "Krypton version: #{Paint[VERSION, '#2ecc71']}"
    exit 0
  end

  opts.on('-h', '--help', 'Show this help message') do
    puts opts
    exit
  end


end.parse!(ARGV)

while (opt = ARGV.shift)
  Radon::Util.first_run
  if Radon::Environments.get_all_names.include? opt
    Radon::Environments.extract(opt, ARGV[0])
    puts Paint["Done! Your project is set up in #{File.expand_path(ARGV[0])}.", :bold, :bright]
    Radon::Util.open_in_editor(options, ARGV[0]) if options[:open_vscode] || options[:open_atom]

    exit 0
  else
    error "#{opt} is not a supported environment!"
    exit 1
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
radon-0.1.8 bin/radon