diff --git a/lib/jekyll.rb b/lib/jekyll.rb index b2ef5ad1..a669c911 100644 --- a/lib/jekyll.rb +++ b/lib/jekyll.rb @@ -133,16 +133,17 @@ module Jekyll config_file = File.join(source, '_config.yml') begin config = YAML.safe_load_file(config_file) - raise "Invalid configuration file: #{config_file}" if !config.is_a?(Hash) - $stdout.puts "Configuration file: #{config_file}" + raise "Configuration file: (INVALID) #{config_file}" if !config.is_a?(Hash) + $stdout.puts "Configuration file: #{config_file}" + rescue SystemCallError + # Errno:ENOENT = file not found + $stderr.puts "Configuration file: none" + config = {} rescue => err - unless File.exists?(config_file) - $stdout.puts "Configuration file: none" - else - $stderr.puts "WARNING: Could not read configuration. " + - "Using defaults (and options)." - $stderr.puts "\t" + err.to_s - end + $stderr.puts " " + + "WARNING: Error reading configuration. " + + "Using defaults (and options)." + $stderr.puts "#{err}" config = {} end