Normalize CLI options to match configuration expectations.
This commit is contained in:
parent
ef9388684b
commit
2b9b613687
19
bin/jekyll
19
bin/jekyll
|
@ -17,6 +17,19 @@ global_option '--safe', 'Safe mode (defaults to false)'
|
|||
global_option '--plugins', 'Plugins directory (defaults to ./_plugins)'
|
||||
global_option '--layouts', 'Layouts directory (defaults to ./_layouts)'
|
||||
|
||||
# Option names don't always directly match the configuration value we'd like.
|
||||
# This method will rename options to match what Jekyll configuration expects.
|
||||
#
|
||||
# options - The Hash of options from Commander.
|
||||
#
|
||||
# Returns the normalized Hash.
|
||||
def normalize_options(options)
|
||||
if drafts_state = options.delete(:drafts)
|
||||
options[:show_drafts] = drafts_state
|
||||
end
|
||||
options
|
||||
end
|
||||
|
||||
command :build do |c|
|
||||
c.syntax = 'jekyll build [options]'
|
||||
c.description = 'Build your site'
|
||||
|
@ -29,7 +42,8 @@ command :build do |c|
|
|||
|
||||
c.action do |args, options|
|
||||
options.defaults :serving => false
|
||||
options = Jekyll.configuration(options.__hash__)
|
||||
options = normalize_options(options.__hash__)
|
||||
options = Jekyll.configuration(options)
|
||||
Jekyll::Commands::Build.process(options)
|
||||
end
|
||||
end
|
||||
|
@ -54,7 +68,8 @@ command :serve do |c|
|
|||
:baseurl => '/',
|
||||
:serving => true
|
||||
|
||||
options = Jekyll.configuration(options.__hash__)
|
||||
options = normalize_options(options.__hash__)
|
||||
options = Jekyll.configuration(options)
|
||||
Jekyll::Commands::Build.process(options)
|
||||
Jekyll::Commands::Serve.process(options)
|
||||
end
|
||||
|
|
|
@ -25,7 +25,7 @@ module Jekyll
|
|||
self.exclude = config['exclude'] || []
|
||||
self.include = config['include'] || []
|
||||
self.future = config['future']
|
||||
self.show_drafts = config['drafts'] || nil
|
||||
self.show_drafts = config['show_drafts'] || nil
|
||||
self.limit_posts = config['limit_posts'] || nil
|
||||
self.keep_files = config['keep_files'] || []
|
||||
|
||||
|
|
Loading…
Reference in New Issue