Skip to content

Instantly share code, notes, and snippets.

@pocketWashburn
Forked from iamamused/publisher.rb
Last active January 2, 2016 16:19
Show Gist options
  • Save pocketWashburn/8328872 to your computer and use it in GitHub Desktop.
Save pocketWashburn/8328872 to your computer and use it in GitHub Desktop.
module Jekyll
class PostPublisher < Generator
safe false
def replace(filepath, regexp, *args, &block)
content = File.read(filepath).gsub(regexp, *args, &block)
File.open(filepath, 'wb') { |file| file.write(content) }
end
def generate(site)
@files = Dir["#{site.source}/_publish/*"]
@files.each_with_index { |f,i|
now = DateTime.now.strftime("%Y-%m-%d %H:%M:%S")
replace(f, /^date: unpublished/mi) { |match| "date: \"" + now + "\"" }
now = Date.today.strftime("%Y-%m-%d")
File.rename(f, "#{site.source}/_posts/#{now}-#{File.basename(f)}")
}
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment