m-chrzan.xyz
aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMarcin Chrzanowski <marcin.j.chrzanowski@gmail.com>2019-08-12 21:06:13 -0700
committerMarcin Chrzanowski <marcin.j.chrzanowski@gmail.com>2019-08-12 21:16:35 -0700
commit59447261a889b1b65f32e325894ef6fc2b9288c6 (patch)
tree548614e0ee9cdd7000562f87a4be0c46d6a78e60 /lib
parentd24ac544f910da9d4d4f9dd7db0e24248257f9a7 (diff)
Change post ids in pather
Diffstat (limited to 'lib')
-rw-r--r--lib/blog.rb13
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/blog.rb b/lib/blog.rb
index 96e79dd..fe552e5 100644
--- a/lib/blog.rb
+++ b/lib/blog.rb
@@ -3,12 +3,22 @@ require 'date'
def parse_post filename
file_raw = File.read(src filename).force_encoding('UTF-8').split('---')
post = YAML.load file_raw[0]
+
post['date'] = DateTime.parse(post['date'])
- post['content'] = file_raw[1].strip
+ post['raw_content'] = file_raw[1].strip
post['filename'] = filename
+ post['id'] = "blog_#{basename_no_extension filename}"
post
end
+def basename_no_extension filename
+ File.basename filename.sub(/\.[\w.]*$/, '')
+end
+
+def compile_post post
+ post['content'] = ERB.new(post['raw_content']).result binding
+end
+
def generate_blog_post post
ERB.new(File.read(src 'post-template.html.erb')).result binding
end
@@ -27,6 +37,7 @@ end
def write_blog_files
posts.each do |post|
+ compile_post post
content = ERB.new(File.read(src 'post-template.html.erb')).result binding
write_templated content, post['filename'], head_title: post['title'], h1_title: 'Blog.'
end