Everytime I do to_html with RedCloth it wraps the entire thing in <p> which is really annoying. I've looked all over for an answer on how to disable this but I've found nothing. I'm surprised that I'm the only one that doesn't want my stuff wrapped in <p> tags. Does anyone know how to disable this?
on 2009-01-13 00:05
on 2009-01-13 01:22
This may or may not help you depending on which RedCloth functionality you need. From http://redcloth.rubyforge.org/classes/RedCloth/Tex... lite_mode [RW] Accessor for toggling lite mode. In lite mode, block-level rules are ignored. This means that tables, paragraphs, lists, and such aren't available. Only the inline markup for bold, italics, entities and so on. r = RedCloth.new( "And then? She *fell*!", [:lite_mode] ) r.to_html #=> "And then? She <strong>fell</strong>!"
on 2009-01-13 21:13
Thanks, that's getting closer to what I want. :) But I'd still like things enabled such as lists...does that have further options like a whitelist? On Jan 12, 4:21 pm, "Adam Kittelson" <adam.kittel...@apathydrive.com>
on 2009-01-13 22:05
Well... you could remove the <p> tags with a regular expression, but that would remove all <p> tags, even ones caused intentionally via p. or having two lines. ie: foo.to_html.gsub(/<\/?p>/, '')
on 2009-01-13 23:04
Hmm Yeah I guess so but I do want some <p> tags in there, just not appended all the time. I looked around and found that I could just manually remove the p tags if they're there, but it caused a bunch of other problems like not being XSS safe anymore. Now I'm using RedCloth with a white_list plugin and it works, but I'm still worried about the performance. On Jan 13, 1:04 pm, "Adam Kittelson" <adam.kittel...@apathydrive.com>
on 2009-02-20 05:32
Mike Chai wrote: > Everytime I do to_html with RedCloth it wraps the entire thing in <p> > which is really annoying. I've looked all over for an answer on how to > disable this but I've found nothing. I'm surprised that I'm the only > one that doesn't want my stuff wrapped in <p> tags. Does anyone know > how to disable this? Have you tried 'textilize_without_paragraph(text)'? taken from: http://api.rubyonrails.com/classes/ActionView/Help...
on 2009-02-20 05:59
Also if you don't want to use the textilize helper because you want to include your own options then you can make your own helper using the same code from the textilize helper and throw in your options. ie: def textilize_with_filter_no_paragraph(text) if text.blank? "" else textilized = RedCloth.new(text, [:filter_html]) textilized.hard_breaks = true if textilized.respond_to?(:hard_breaks=) textiled = textilized.to_html if textiled[0..2] == "<p>" then textiled = textiled[3..-1] end if textiled[-4..-1] == "</p>" then textiled = textiled[0..-5] end return textiled end end