narou.rb in narou-1.7.2 vs narou.rb in narou-2.0.0

- old
+ new

@@ -4,23 +4,23 @@ # Narou.rb ― 小説家になろうダウンロード&整形スクリプト # # Copyright 2013 whiteleaf. All rights reserved. # -$debug = File.exist?(File.join(File.expand_path(File.dirname($0)), "debug")) +$debug = File.exist?(File.join(File.expand_path(File.dirname(__FILE__)), "debug")) Encoding.default_external = Encoding::UTF_8 if ARGV.delete("--time") now = Time.now at_exit do puts "実行時間 #{Time.now - now}秒" end end require_relative "lib/inventory" -display_backtrace = ARGV.delete("--backtrace") -display_backtrace ||= $debug +$display_backtrace = ARGV.delete("--backtrace") +$display_backtrace ||= $debug $disable_color = ARGV.delete("--no-color") $disable_color ||= Inventory.load("global_setting", :global)["no-color"] require_relative "lib/logger" require_relative "lib/version" @@ -28,18 +28,20 @@ rescue_level = $debug ? Exception : StandardError begin CommandLine.run(ARGV.map { |v| v.dup }) +rescue SystemExit => e + exit e.status rescue rescue_level => e - warn $@.shift + ": #{e.message} (#{e.class})" - if display_backtrace + warn $@.shift + ": #{e.message.encode(Encoding::UTF_8)} (#{e.class})" + if $display_backtrace $@.each do |b| warn " from #{b}" end else warn " エラーが発生したため終了しました。" warn " 詳細なエラーは --backtrace オプションを付けて再度実行して下さい。" end - exit 1 + exit Narou::EXIT_ERROR_CODE end