diff --git a/CONDUCT.markdown b/CONDUCT.markdown index a0f06de7..8425dfc7 100644 --- a/CONDUCT.markdown +++ b/CONDUCT.markdown @@ -1,4 +1,4 @@ -# Contributor Code of Conduct +# Code of Conduct As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who diff --git a/History.markdown b/History.markdown index 95b6930d..e40f097e 100644 --- a/History.markdown +++ b/History.markdown @@ -1,3 +1,5 @@ +# History + ## HEAD ### Development Fixes diff --git a/Rakefile b/Rakefile index e3f99c41..38a111cc 100644 --- a/Rakefile +++ b/Rakefile @@ -87,6 +87,25 @@ def converted_history(markdown) normalize_bullets(markdown))))) end +def siteify_file(file, front_matter = {}) + abort "You seem to have misplaced your #{file} file. I can haz?" unless File.exists?(file) + contents = File.read(file) + title = contents.match(/\A# (.*)$/)[1] + output_file = file.sub(/\.markdown\z/, ".md").downcase + slug = File.basename(output_file, ".md") + default_frontmatter = { + "title" => title, + "layout" => "docs", + "permalink" => "/docs/#{slug}/", + "note" => "This file is autogenerated. Edit /#{file} instead." + } + front_matter = front_matter.merge(default_frontmatter) + contents.gsub!(/\A# #{title}\n\n?/, "") + contents = converted_history(contents) if output_file == "history.md" + contents = "#{front_matter.to_yaml}---\n\n#{contents}" + File.write("site/_docs/#{output_file}", contents) +end + ############################################################################# # # Standard tasks diff --git a/rake/site.rake b/rake/site.rake index 08ad12b3..4efed685 100644 --- a/rake/site.rake +++ b/rake/site.rake @@ -5,7 +5,7 @@ ############################################################################# namespace :site do - task :generated_pages => [:history, :version_file, :conduct] + task :generated_pages => [:history, :version_file, :conduct, :contributing] desc "Generate and view the site locally" task :preview => :generated_pages do @@ -103,41 +103,21 @@ namespace :site do desc "Create a nicely formatted history page for the jekyll site based on the repo history." task :history do - if File.exist?("History.markdown") - history_file = File.read("History.markdown") - front_matter = { - "layout" => "docs", - "title" => "History", - "permalink" => "/docs/history/" - } - Dir.chdir('site/_docs/') do - File.open("history.md", "w") do |file| - file.write("#{front_matter.to_yaml}---\n\n") - file.write(converted_history(history_file)) - end - end - else - abort "You seem to have misplaced your History.markdown file. I can haz?" - end + siteify_file('History.markdown') end desc "Copy the Code of Conduct" task :conduct do - code_of_conduct = File.read("CONDUCT.markdown") - header, _, body = code_of_conduct.partition("\n\n") front_matter = { - "layout" => "docs", - "title" => header.sub('# Contributor ', ''), - "permalink" => "/docs/conduct/", "redirect_from" => "/conduct/index.html", "editable" => false } - Dir.chdir('site/_docs') do - File.open("conduct.md", "w") do |file| - file.write("#{front_matter.to_yaml}---\n\n") - file.write(body) - end - end + siteify_file('CONDUCT.markdown', front_matter) + end + + desc "Copy the contributing file" + task :contributing do + siteify_file('CONTRIBUTING.markdown') end desc "Write the site latest_version.txt file" diff --git a/site/_docs/conduct.md b/site/_docs/conduct.md index d25c32c9..6995b911 100644 --- a/site/_docs/conduct.md +++ b/site/_docs/conduct.md @@ -1,9 +1,10 @@ --- -layout: docs -title: Code of Conduct -permalink: "/docs/conduct/" redirect_from: "/conduct/index.html" editable: false +title: Contributor Code of Conduct +layout: docs +permalink: "/docs/conduct/" +note: This file is autogenerated. Edit /CONDUCT.markdown instead. --- As contributors and maintainers of this project, and in the interest of diff --git a/site/_docs/history.md b/site/_docs/history.md index b98ea83e..12da9d24 100644 --- a/site/_docs/history.md +++ b/site/_docs/history.md @@ -1,7 +1,8 @@ --- -layout: docs title: History +layout: docs permalink: "/docs/history/" +note: This file is autogenerated. Edit /History.markdown instead. --- ## 3.1.2 / 2016-02-19