Prarupa
Prarupa is plugin for Rails 3 that provides the textilize
, textilize_without_paragraph
and markdown
helpers. These were extracted from Rails and have been modified slightly. Instead of using BlueCloth
for markdown
, Prarupa uses RDiscount
which is supposed to be faster and better maintained. Other minor internal tweaks have been made.
Install
You can either install Prarupa as a gem or plugin. Installing as a gem is the preferred choice.
Install as a gem
Simply add prarupa
to the Gemfile. Also add RedCloth
for textilize & textilize_without_paragraph and/or add rdiscount
for markdown. Now just bundle install
and you should be good to go. Note that installing prarupa
will also install rdiscount
and markdown
as dependencies.
Install as a plugin
To install as a plugin simply do rails plugin install git://github.com/rohit/prarupa.git
Example
In your views you can do the following.
The textilize
and textilize_without_paragraph
helpers
The textilize
helper accepts a string of Textile and optionally one or more options.
Without any options:
textilize("This is *how* we _textilize_ in Rails!")
# => "<p>This is <strong>how</strong> we <em>textilize</em> in Rails!</p>"
With options:
textilize("This is *how* we <em>textilize</em> in Rails!", :filter_html)
# => "<p>This is <strong>how</strong> we <em>textilize</em> in Rails!</p>"
Note that you can provide multiple options like textilize("text", :filter_html, :lite_mode)
The textilize_without_paragraph
is similar to textilize
, except that the surrounding <p> and </p> tags are removed. It accepts options just like textilize
textilize_without_paragraph("This is *how* we _textilize_ in Rails!")
# => "This is <strong>how</strong> we <em>textilize</em> in Rails!"
The markdown
helper
The markdown
helper accepts a string of Markdown and optionally one or more options.
Without any options:
markdown("This is *how* we **markdown** in Rails!")
# => "<p>This is <em>how</em> we <strong>markdown</strong> in Rails!</p>"
With options:
markdown("Greedy urls are here! http://rohitarondekar.com", :autolink)
# => "<p>Greedy urls are here! <a href=\"http://rohitarondekar.com\">http://rohitarondekar.com</a></p>"
To be :safe
Being Rails text helpers, all three methods accept the :safe
option that tells the helpers that the input text need not be escaped.
Credits
David Trasbo for making the awesome (official?) plugin formatize which extracts the helpers without any modification. I liberally used his gem as reference.
Todo
- Tidy up the rdocs
Copyright (c) 2010 Rohit Arondekar, released under the MIT license