mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
733bfa63f5
After a long list of discussion about the performance problem from using varargs and the reason that we can't find a great pair for it, it would be best to remove support for it for now. It will come back if we can find a good pair for it. For now, Bon Voyage, `#among?`.
43 lines
1.1 KiB
Ruby
43 lines
1.1 KiB
Ruby
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
|
|
end
|
|
end
|
|
|
|
def plusplus(body)
|
|
body.gsub!(/\+(.*?)\+/) do |m|
|
|
"<notextile><tt>#{$1}</tt></notextile>"
|
|
end
|
|
|
|
# The real plus sign
|
|
body.gsub!('<plus>', '+')
|
|
end
|
|
|
|
def code(body)
|
|
body.gsub!(%r{<(yaml|shell|ruby|erb|html|sql|plain)>(.*?)</\1>}m) do |m|
|
|
es = ERB::Util.h($2)
|
|
css_class = $1.in?(['erb', 'shell']) ? 'html' : $1
|
|
%{<notextile><div class="code_container"><code class="#{css_class}">#{es}</code></div></notextile>}
|
|
end
|
|
end
|
|
end
|
|
end
|