#!/usr/bin/env ruby require 'optparse' require 'markdown_helper' options = {:pristine => false} # Save opts for use below. opts = nil parser = OptionParser.new do |_opts| opts = _opts _opts.banner = "Usage: markdown_helper include [options] template_file_path markdown_file_path" _opts.on('--pristine', 'No comments added') do |_| options[:pristine] = true end _opts.on('--help', 'Display help') do usage(_opts) end end def usage(opts) puts '' puts opts puts <<-EOT where * template_file_path is the path to an existing file. * markdown_file_path is the path to a file to be created. Typically: * Both file types are .md. * The template file contains file inclusion descriptions. EOT exit end parser.parse! template_file_path, markdown_file_path = ARGV usage(opts) unless ARGV.size == 2 usage(opts) unless File.readable?(template_file_path) usage(opts) unless File.writable?(File.dirname(markdown_file_path)) MarkdownHelper.new(options).include(template_file_path, markdown_file_path)