Skip to content

Instantly share code, notes, and snippets.

@stephencelis
Created August 29, 2011 05:54
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save stephencelis/1177847 to your computer and use it in GitHub Desktop.
Save stephencelis/1177847 to your computer and use it in GitHub Desktop.
Redcarpet (Markdown) template handler for Rails 3.1.
# config/initializers/redcarpet.rb
class ActionView::Template
class Redcarpet < Handler
include Handlers::Compilable
def compile template
::Redcarpet.new(template.source).to_html.inspect
end
end
register_template_handler :markdown, Redcarpet
end
@avand
Copy link

avand commented Sep 20, 2011

Slick. Is there a way to wire the markdown file up so you can do ERB-like stuff (like iterating over objects), etc.?

@stephencelis
Copy link
Author

As long as you name the template {template_name}.html.markdown.erb, it should let you embed ERB tags into the Markdown document.

@sjoonk
Copy link

sjoonk commented Sep 26, 2011

FYI, I changed my template name as {template_name}.html.markdown.erb, but didn't work. "No such page" error occurred.

@dgmstuart
Copy link

This mostly worked for me (Awesome!) but the generated html ended up being escaped. I used the following (copied from the markdown-rails gem) instead:

 markdown.render(template.source).inspect + '.html_safe'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment