mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
let TIP and friends handle a multiline paragraph
Normally I would have done this in master, but there was already a guide with wrapped content, so worked here. I am going to cross-merge now.
This commit is contained in:
parent
50ca6f06c7
commit
598eab90ff
2 changed files with 19 additions and 18 deletions
|
@ -204,7 +204,7 @@ module RailsGuides
|
|||
t = RedCloth.new(body)
|
||||
t.hard_breaks = false
|
||||
t.lite_mode = lite_mode
|
||||
t.to_html(:notestuff, :plusplus, :code, :tip)
|
||||
t.to_html(:notestuff, :plusplus, :code)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -3,23 +3,24 @@ require 'active_support/core_ext/object/inclusion'
|
|||
module RailsGuides
|
||||
module TextileExtensions
|
||||
def notestuff(body)
|
||||
body.gsub!(/^(IMPORTANT|CAUTION|WARNING|NOTE|INFO)[.:](.*)$/) do |m|
|
||||
css_class = $1.downcase
|
||||
css_class = 'warning' if css_class.in?(['caution', 'important'])
|
||||
|
||||
result = "<div class='#{css_class}'><p>"
|
||||
result << $2.strip
|
||||
result << '</p></div>'
|
||||
result
|
||||
end
|
||||
end
|
||||
|
||||
def tip(body)
|
||||
body.gsub!(/^TIP[.:](.*)$/) do |m|
|
||||
result = "<div class='info'><p>"
|
||||
result << $1.strip
|
||||
result << '</p></div>'
|
||||
result
|
||||
# The following regexp detects special labels followed by a
|
||||
# paragraph, perhaps at the end of the document.
|
||||
#
|
||||
# It is important that we do not eat more than one newline
|
||||
# because formatting may be wrong otherwise. For example,
|
||||
# if a bulleted list follows the first item is not rendered
|
||||
# as a list item, but as a paragraph starting with a plain
|
||||
# asterisk.
|
||||
body.gsub!(/^(TIP|IMPORTANT|CAUTION|WARNING|NOTE|INFO)[.:](.*?)(\n(?=\n)|\Z)/m) do |m|
|
||||
css_class = case $1
|
||||
when 'CAUTION', 'IMPORTANT'
|
||||
'warning'
|
||||
when 'TIP'
|
||||
'info'
|
||||
else
|
||||
$1.downcase
|
||||
end
|
||||
%Q(<div class="#{css_class}"><p>#{$2.strip}</p></div>)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue