summaryrefslogtreecommitdiff
path: root/config/initializers/markdown_handler.rb
diff options
context:
space:
mode:
Diffstat (limited to 'config/initializers/markdown_handler.rb')
-rw-r--r--config/initializers/markdown_handler.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/config/initializers/markdown_handler.rb b/config/initializers/markdown_handler.rb
new file mode 100644
index 0000000..b9e73ba
--- /dev/null
+++ b/config/initializers/markdown_handler.rb
@@ -0,0 +1,19 @@
+#
+# This adds support for markdown in views. Just name the template with ".md"
+# erb expansion is supported.
+#
+
+require 'rdiscount'
+
+module MarkdownHandler
+ def self.erb
+ @erb ||= ActionView::Template.registered_template_handler(:erb)
+ end
+
+ def self.call(template)
+ compiled_source = erb.call(template)
+ "RDiscount.new(begin;#{compiled_source};end, :generate_toc, :smart, :autolink).to_html"
+ end
+end
+
+ActionView::Template.register_template_handler :md, MarkdownHandler