aboutsummaryrefslogtreecommitdiffstats
path: root/guides/rails_guides
diff options
context:
space:
mode:
authorPrem Sichanugrist <s@sikac.hu>2012-09-17 00:46:26 -0400
committerPrem Sichanugrist <s@sikac.hu>2012-09-17 15:55:17 -0400
commit1fa5c3b39f5d0bb23c8c3d60b023613386629946 (patch)
tree35b41a14bcc2d59643d86dcd2e4049e1c225a6bb /guides/rails_guides
parentfd56c3a72e261c7c5432f3ee040c8cb5091fe4f1 (diff)
downloadrails-1fa5c3b39f5d0bb23c8c3d60b023613386629946.tar.gz
rails-1fa5c3b39f5d0bb23c8c3d60b023613386629946.tar.bz2
rails-1fa5c3b39f5d0bb23c8c3d60b023613386629946.zip
Fix footnote format
Markdown has footnote, but Redcarpet doesn't support it.
Diffstat (limited to 'guides/rails_guides')
-rw-r--r--guides/rails_guides/markdown/renderer.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/guides/rails_guides/markdown/renderer.rb b/guides/rails_guides/markdown/renderer.rb
index d76ec53b34..2f36af1fb3 100644
--- a/guides/rails_guides/markdown/renderer.rb
+++ b/guides/rails_guides/markdown/renderer.rb
@@ -25,13 +25,24 @@ HTML
def paragraph(text)
if text =~ /^(TIP|IMPORTANT|CAUTION|WARNING|NOTE|INFO|TODO)[.:](.*?)/
convert_notes(text)
+ elsif text =~ /^\[<sup>(\d+)\]:<\/sup> (.+)$/
+ linkback = %(<a href="#footnote-#{$1}-ref"><sup>#{$1}</sup></a>)
+ %(<p class="footnote" id="footnote-#{$1}">#{linkback} #{$2}</p>)
else
+ text = convert_footnotes(text)
"<p>#{text}</p>"
end
end
private
+ def convert_footnotes(text)
+ text.gsub(/\[<sup>(\d+)\]<\/sup>/i) do
+ %(<sup class="footnote" id="footnote-#{$1}-ref">) +
+ %(<a href="#footnote-#{$1}">#{$1}</a></sup>)
+ end
+ end
+
def brush_for(code_type)
case code_type
when 'ruby', 'sql', 'plain'