]> source.dussan.org Git - redmine.git/commitdiff
Fixed 10061 problem with textilize and :hard_breaks (Pavol Murin)
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 22 Apr 2007 10:10:56 +0000 (10:10 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 22 Apr 2007 10:10:56 +0000 (10:10 +0000)
git-svn-id: http://redmine.rubyforge.org/svn/trunk@464 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/helpers/application_helper.rb

index 3e078475d8aeef369aab724f7bc05d178e8614e2..47dbadfb725e7eb7fa85acd1733986e16be580e0 100644 (file)
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
+class RedCloth
+  # Patch for RedCloth.  Fixed in RedCloth r128 but _why hasn't released it yet.
+  # <a href="http://code.whytheluckystiff.net/redcloth/changeset/128">http://code.whytheluckystiff.net/redcloth/changeset/128</a>
+  def hard_break( text ) 
+    text.gsub!( /(.)\n(?!\n|\Z| *([#*=]+(\s|$)|[{|]))/, "\\1<br />" ) if hard_breaks 
+  end 
+end
+
 module ApplicationHelper
 
   # Return current logged in user or nil
@@ -139,7 +147,7 @@ module ApplicationHelper
    
     # finally textilize text
     @do_textilize ||= (Setting.text_formatting == 'textile') && (ActionView::Helpers::TextHelper.method_defined? "textilize")
-    text = @do_textilize ? auto_link(RedCloth.new(text).to_html) : simple_format(auto_link(h(text)))
+    text = @do_textilize ? auto_link(RedCloth.new(text, [:hard_breaks]).to_html) : simple_format(auto_link(h(text)))
   end
   
   def error_messages_for(object_name, options = {})