       { strftime: strftime }
     )
 
-    meta.processed = ejs.render meta.src, locals: meta
-    meta.content = md( meta.processed )
+    try
+      meta.processed = ejs.render meta.src, locals: meta
+      meta.content = md( meta.processed )
+    catch e
+      Logger.error "Could not process file: #{meta.permalink} - #{e}"
+      return
 
     fs.readFile "#{CWD}/_inc/layout.jade", ( err, layout ) ->
       tmpl = jade.compile layout.toString(), meta

          newest = sortedPosts()[0]
          # and make it the index
          Logger.debug "  index: #{newest.permalink}"
          Builder.render newest.permalink, 'post', 'index.html'
    )

    if Config.DEV

        if Config.DEV || !meta.draft
          if meta.permalink == Config.index
            Logger.debug "  index: #{meta.permalink}"
            Builder.render( meta.thing, kind, 'index.html' )
          Logger.debug( "  #{kind}: #{meta.permalink}" )
          Builder.render meta.thing, kind
        else
          Logger.debug( "  skipped: #{thing}" )
    process = ( kind ) ->
