#!/usr/bin/env ruby require 'smallvictories' def help %Q( Usage: sv [COMMAND] [OPTIONS] Commands: bootstrap, bootstrap FOLDER Setup folder with default files compile Compile files inline Inline CSS in your HTML files watch Watch for changes and compile files help Prints this help document version Prints the small victories gem version Options: -h, --help Prints this help document -v, --version Prints the siteleaf gem version See https://github.com/xxix/smallvictories-gem for additional documentation. ) end def bootstrap folder=nil config = SmallVictories::Configuration.new builder = SmallVictories::Builder.new(config: config) builder.setup folder compile end def compile config = SmallVictories::Configuration.new compiler = SmallVictories::Compiler.new(config: config) compiler.compile_css compiler.compile_js compiler.compile_html end def inline config = SmallVictories::Configuration.new compiler = SmallVictories::Compiler.new(config: config) compiler.compile_css compiler.compile_js compiler.compile_html compiler.minify_css compiler.minify_js compiler.inline_html end def minify config = SmallVictories::Configuration.new compiler = SmallVictories::Compiler.new(config: config) compiler.compile_css compiler.compile_js compiler.compile_html compiler.minify_css compiler.minify_js end def watch compile config = SmallVictories::Configuration.new compiler = SmallVictories::Compiler.new(config: config) watcher = SmallVictories::Watcher.new(compiler: compiler) watcher.watch end case ARGV[0] when '-v', '--version', 'version' puts SmallVictories::VERSION when '-h', '--help', 'help' puts help when 'bootstrap' bootstrap ARGV[1] when 'compile' compile when 'inline' inline when 'watch' watch else puts "`#{ARGV[0]}` command not found.\n" puts help end