lib/zine/cli.rb in zine-0.4.0 vs lib/zine/cli.rb in zine-0.5.0
- old
+ new
@@ -8,47 +8,54 @@
module Zine
# CLI for zine
class CLI < Thor
include Thor::Actions
+ attr_accessor :the_site # only used in testing
no_commands do
def init_site
- @site ||= Zine::Site.new
+ @the_site ||= Zine::Site.new
end
end
desc 'build', 'Build the site'
def build
+ # set_trace_func proc { |event, file, line, id, _binding, classname|
+ # if event == 'call' && classname.name.split('::').first == 'Zine'
+ # printf "%25s\#%s\t\t\t%s:%-2d\n", classname, id, file, line
+ # end
+ # }
init_site
- @site.build_site
+ @the_site.build_site
puts Rainbow('Site built').green
end
desc 'force', 'Build the site, forcing writes & uploads'
def force
init_site
- @site.build_site_forcing_writes
+ @the_site.build_site_forcing_writes
puts Rainbow('Site built').green
end
desc 'nuke', 'Delete the build folder'
def nuke
init_site
- FileUtils.remove_dir @site.options['directories']['build'], force: true
+ FileUtils.remove_dir @the_site.options['directories']['build'],
+ force: true
puts Rainbow('Site nuked. It\'s the only way to be sure.').green
end
desc 'post TITLE', 'Create the file for a new blog post, titled TITLE'
def post(name)
init_site
- option_dir = @site.options['directories']
+ option_dir = @the_site.options['directories']
Zine::CLI.source_root option_dir['templates']
@date = DateTime.now
@name = name
file = "#{@date.strftime('%Y-%m-%d')}-#{Zine::Page.slug(name)}.md"
- new_post_name = @site.options['templates']['new_post']
+ new_post_name = @the_site.options['templates']['new_post']
template new_post_name,
File.join(Dir.pwd, option_dir['posts'], file)
end
desc 'site', 'Create the skeleton of a new site (overwriting files)'
@@ -59,11 +66,11 @@
end
desc 'style', 'Build the site\'s stylesheet'
def style
init_site
- style = Zine::Style.new(@site.options['directories'])
- style.process
+ style = Zine::Style.new(@the_site.options['directories'])
+ style.process(File)
puts Rainbow('Stylesheet rendered').green
end
desc 'version', 'Show the version number'
def version