Browse code

Render partial now automatically stirps out yaml front matter

Brandon Mathis authored on 22/07/2011 at 15:46:55
Showing 1 changed files
... ...
@@ -1,7 +1,7 @@
1 1
 # Title: Render Partial Tag for Jekyll
2 2
 # Author: Brandon Mathis http://brandonmathis.com
3 3
 # Description: Import files on your filesystem into any blog post and render them inline.
4
-# Note: Paths are relative to the source directory
4
+# Note: Paths are relative to the source directory, if you import a file with yaml front matter, the yaml will be stripped out.
5 5
 #
6 6
 # Syntax {% render_partial path/to/file %}
7 7
 #
... ...
@@ -19,6 +19,7 @@
19 19
 # This might be useful if you want to have a page for a project's README without having
20 20
 # to duplicated the contents
21 21
 #
22
+#
22 23
 
23 24
 require 'pathname'
24 25
 
... ...
@@ -40,7 +41,11 @@ module Jekyll
40 40
       end
41 41
 
42 42
       Dir.chdir(file_path) do
43
-        partial = Liquid::Template.parse(file.read)
43
+        contents = file.read
44
+        if contents =~ /\A-{3}.+[^\A]-{3}\n(.+)/m
45
+          contents = $1.lstrip
46
+        end
47
+        partial = Liquid::Template.parse(contents)
44 48
         context.stack do
45 49
           partial.render(context)
46 50
         end