class Jekyll::Compose::ArgParser

Attributes

args[R]
config[R]
options[R]

Public Class Methods

new(args, options, config = nil) click to toggle source

TODO: Remove `nil` parameter in v1.0

# File lib/jekyll-compose/arg_parser.rb, line 9
def initialize(args, options, config = nil)
  @args = args
  @options = options
  @config = config || Jekyll.configuration(options)
end

Public Instance Methods

force?() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 31
def force?
  !!options["force"]
end
layout() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 23
def layout
  options["layout"] || Jekyll::Compose::DEFAULT_LAYOUT
end
source() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 39
def source
  File.join(config["source"], config["collections_dir"])
    .gsub(%r!^#{Regexp.quote(Dir.pwd)}/*!, "")
end
timestamp_format() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 35
def timestamp_format
  options["timestamp_format"] || Jekyll::Compose::DEFAULT_TIMESTAMP_FORMAT
end
title() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 27
def title
  args.join " "
end
type() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 19
def type
  options["extension"] || Jekyll::Compose::DEFAULT_TYPE
end
validate!() click to toggle source
# File lib/jekyll-compose/arg_parser.rb, line 15
def validate!
  raise ArgumentError, "You must specify a name." if args.empty?
end