From dafeb04f734622e12ae542e31e350c1b3965b7cc Mon Sep 17 00:00:00 2001 From: B Mathis Date: Sat, 31 Oct 2009 12:52:56 -0500 Subject: updated rakefile to use FSSM in `rake watch`, generate a sitemap, and moved typography to a debug folder --- Rakefile | 69 +++++++++++++++++++++---- source/debug/typography.haml | 116 +++++++++++++++++++++++++++++++++++++++++++ source/typography.haml | 116 ------------------------------------------- 3 files changed, 175 insertions(+), 126 deletions(-) create mode 100644 source/debug/typography.haml delete mode 100644 source/typography.haml diff --git a/Rakefile b/Rakefile index 04881b33..31076377 100644 --- a/Rakefile +++ b/Rakefile @@ -1,15 +1,13 @@ require 'active_support' -# preview project on this port - http://localhost:4000 -port = "4000" - -# compiled site directory -site = "site" - -# for rsync deployment -ssh_user = "user@host.com" -document_root = "~/document_root/" +port = "4000" # preview project port eg. http://localhost:4000 +site = "site" # compiled site directory +source = "source" # source file directory +# MUST CHANGE FOR YOUR PROJECT +site_url = "http://yoursite.com" # deployed site url +ssh_user = "user@host.com" # for rsync deployment +document_root = "~/document_root/" # for rsync deployment def ok_failed(condition) if (condition) @@ -34,12 +32,29 @@ end desc "generate website in output directory" task :generate => :clean do puts "Generating website..." - system "compass" system "jekyll" Dir["#{site}/stylesheets/*.sass"].each { |f| rm_rf(f) } + system "compass" system "mv #{site}/atom.html #{site}/atom.xml" end +def rebuild_site(relative) + puts ">>> Change Detected to: #{relative} <<<" + IO.popen('rake generate'){|io| print(io.readpartial(512)) until io.eof?} + puts '>>> Update Complete <<<' +end + +desc "Watch the site and regenerate when it changes" +task :watch do + require 'fssm' + puts ">>> Watching for Changes <<<" + FSSM.monitor("#{File.dirname(__FILE__)}/#{source}", '**/*') do + update {|base, relative| rebuild_site(relative)} + delete {|base, relative| rebuild_site(relative)} + create {|base, relative| rebuild_site(relative)} + end +end + desc "generate and deploy website" task :deploy => :generate do print "Deploying website..." @@ -68,4 +83,38 @@ end desc "preview the site in a web browser" multitask :preview => [:generate, :start_serve] do system "open http://localhost:#{port}" +end + + +desc "Build an XML sitemap of all html files." +task :sitemap => :generate do + html_files = FileList.new("#{site}/**/*.html").map{|f| f[("#{site}".size)..-1]}.map do |f| + if f.ends_with?("index.html") + f[0..(-("index.html".size + 1))] + else + f + end + end.sort_by{|f| f.size} + open("#{site}/sitemap.xml", 'w') do |sitemap| + sitemap.puts %Q{} + sitemap.puts %Q{} + html_files.each do |f| + priority = case f + when %r{^/$} + 1.0 + when %r{^/blog} + 0.9 + else + 0.8 + end + sitemap.puts %Q{ } + sitemap.puts %Q{ #{site_url}#{f}} + sitemap.puts %Q{ #{Time.to_s('%Y-%m-%d')}} + sitemap.puts %Q{ weekly} + sitemap.puts %Q{ #{priority}} + sitemap.puts %Q{ } + end + sitemap.puts %Q{} + puts "Created #{site}/sitemap.xml" + end end \ No newline at end of file diff --git a/source/debug/typography.haml b/source/debug/typography.haml new file mode 100644 index 00000000..f7e7b17b --- /dev/null +++ b/source/debug/typography.haml @@ -0,0 +1,116 @@ +--- +layout: default +title: Typography Debug +--- + +%h1 Level 01 Heading +%h2 Level 02 Heading +%h3 Level 03 Heading +%h4 Level 04 Heading +%h5 Level 05 Heading +%h6 Level 06 Heading + +%p + Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Fusce sodales ligula sed urna. Aliquam posuere arcu + viverra erat. Pellentesque et enim dapibus ante facilisis bibendum. Nam congue dapibus urna. Vestibulum consequat + arcu at magna. Nunc faucibus mollis lacus. Nulla tempor luctus tellus. Donec blandit lobortis pede. Vestibulum + vel pede ut urna eleifend lacinia. +%p + Maecenas ligula nibh, imperdiet at, interdum eget, sagittis eu, enim. Vivamus vel urna. Donec fringilla + ullamcorper sem. In risus arcu, pellentesque cursus, faucibus cursus, consequat quis, est. Aliquam id erat. + Aliquam arcu. Phasellus vulputate. Integer sem diam, mattis vel, viverra ullamcorper, ultricies quis, nisl. Sed + sollicitudin quam ut nisi. Vivamus velit sapien, volutpat eu, faucibus id, nonummy id, urna. +%p + Take it2 to the power of3 + Praesent iaculis pellentesque est. Nulla facilisi. Etiam fringilla vehicula orci. Aliquam fermentum ipsum id + nulla. Aliquam interdum laoreet leo. Cras accumsan. Nam pharetra diam id nunc. Integer blandit tellus vulputate + felis. Cras aliquam, eros in euismod aliquam, enim nisl mollis metus, quis fringilla ipsum diam ut pede. Mauris a + libero ac velit interdum pulvinar. Nunc ipsum mauris, semper rhoncus, feugiat ut, egestas id, diam. Nullam + porttitor condimentum risus. Vivamus nec enim eget nisi commodo euismod. Ut turpis. Nullam malesuada rutrum + neque. Nam sodales porta elit. Mauris mollis nisl vel augue. + +%p + And we were like Woah, and he was like Woah, and they were like WOAH! + +%p + %abbr(title="For The Win!") FTW! +%p + +%h3 Unordered lists +%ul + %li Lorem ipsum dolor sit amet + %li Consectetur adipisicing elit + %li Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua + %li Ut enim ad minim veniam + +%h3 Ordered lists +%ol + %li Consectetur adipisicing elit + %li Sed do eiusmod tempor incididunt ut labore + %li Et dolore magna aliqua + +%h3 Blockquotes +%blockquote + %p + Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore + magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo + consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. + Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. + +%h3 Tables +%table + %caption + Jimi Hendrix - albums + %thead + %tr + %th Album + %th Year + %th Price + %tfoot + %tr + %td Album + %td Year + %td Price + %tbody + %tr + %td Are You Experienced + %td 1967 + %td $10.00 + %tr + %td Axis: Bold as Love + %td 1967 + %td $12.00 + %tr + %td Electric Ladyland + %td 1968 + %td $10.00 + %tr + %td Band of Gypsys + %td 1970 + %td $12.00 +%p + %a(href="#")Link + %br/ + %strong <strong> + %br/ + %del <del> deleted + %br/ + %dfn <dfn> dfn + %br/ + %em <em> emphasis + %br/ + +%pre + %code + <html> + <head> + </head> + <body> + <div class = "main"> <div> + </body> + </html> + +%tt + <tt> + Pellentesque tempor, dui ut ultrices viverra, neque urna blandit nisi, id accumsan dolor est vitae risus. +%hr \ No newline at end of file diff --git a/source/typography.haml b/source/typography.haml deleted file mode 100644 index f7e7b17b..00000000 --- a/source/typography.haml +++ /dev/null @@ -1,116 +0,0 @@ ---- -layout: default -title: Typography Debug ---- - -%h1 Level 01 Heading -%h2 Level 02 Heading -%h3 Level 03 Heading -%h4 Level 04 Heading -%h5 Level 05 Heading -%h6 Level 06 Heading - -%p - Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Fusce sodales ligula sed urna. Aliquam posuere arcu - viverra erat. Pellentesque et enim dapibus ante facilisis bibendum. Nam congue dapibus urna. Vestibulum consequat - arcu at magna. Nunc faucibus mollis lacus. Nulla tempor luctus tellus. Donec blandit lobortis pede. Vestibulum - vel pede ut urna eleifend lacinia. -%p - Maecenas ligula nibh, imperdiet at, interdum eget, sagittis eu, enim. Vivamus vel urna. Donec fringilla - ullamcorper sem. In risus arcu, pellentesque cursus, faucibus cursus, consequat quis, est. Aliquam id erat. - Aliquam arcu. Phasellus vulputate. Integer sem diam, mattis vel, viverra ullamcorper, ultricies quis, nisl. Sed - sollicitudin quam ut nisi. Vivamus velit sapien, volutpat eu, faucibus id, nonummy id, urna. -%p - Take it2 to the power of3 - Praesent iaculis pellentesque est. Nulla facilisi. Etiam fringilla vehicula orci. Aliquam fermentum ipsum id - nulla. Aliquam interdum laoreet leo. Cras accumsan. Nam pharetra diam id nunc. Integer blandit tellus vulputate - felis. Cras aliquam, eros in euismod aliquam, enim nisl mollis metus, quis fringilla ipsum diam ut pede. Mauris a - libero ac velit interdum pulvinar. Nunc ipsum mauris, semper rhoncus, feugiat ut, egestas id, diam. Nullam - porttitor condimentum risus. Vivamus nec enim eget nisi commodo euismod. Ut turpis. Nullam malesuada rutrum - neque. Nam sodales porta elit. Mauris mollis nisl vel augue. - -%p - And we were like Woah, and he was like Woah, and they were like WOAH! - -%p - %abbr(title="For The Win!") FTW! -%p - -%h3 Unordered lists -%ul - %li Lorem ipsum dolor sit amet - %li Consectetur adipisicing elit - %li Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua - %li Ut enim ad minim veniam - -%h3 Ordered lists -%ol - %li Consectetur adipisicing elit - %li Sed do eiusmod tempor incididunt ut labore - %li Et dolore magna aliqua - -%h3 Blockquotes -%blockquote - %p - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore - magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. - -%h3 Tables -%table - %caption - Jimi Hendrix - albums - %thead - %tr - %th Album - %th Year - %th Price - %tfoot - %tr - %td Album - %td Year - %td Price - %tbody - %tr - %td Are You Experienced - %td 1967 - %td $10.00 - %tr - %td Axis: Bold as Love - %td 1967 - %td $12.00 - %tr - %td Electric Ladyland - %td 1968 - %td $10.00 - %tr - %td Band of Gypsys - %td 1970 - %td $12.00 -%p - %a(href="#")Link - %br/ - %strong <strong> - %br/ - %del <del> deleted - %br/ - %dfn <dfn> dfn - %br/ - %em <em> emphasis - %br/ - -%pre - %code - <html> - <head> - </head> - <body> - <div class = "main"> <div> - </body> - </html> - -%tt - <tt> - Pellentesque tempor, dui ut ultrices viverra, neque urna blandit nisi, id accumsan dolor est vitae risus. -%hr \ No newline at end of file -- cgit v1.2.1