Module: Filters::PreFilter
- Included in:
- ExtendedMarkdownFilter
- Defined in:
- lib/filters/pre/helper.rb,
lib/filters/pre/command-line.rb
Instance Method Summary collapse
Instance Method Details
#format_command_line(text) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 |
# File 'lib/filters/pre/command-line.rb', line 3 def format_command_line(text) text.gsub /\n?``` command-line(.+?)```/m do |block| block.gsub! /^``` command-line/, '<pre class="command-line">' block.gsub! /^```$/, "</pre>\n" block.gsub!(/^\$ (.+)$/) { %Q|<span class="command">#{$1.rstrip}</span>| } block.gsub!(/^(\# .+)$/) { %Q|<span class="comment">#{$1.rstrip}</span>| } block.gsub!(/^> (.+)$/) { %Q|<span class="output"><span># </span>#{$1.rstrip}</span>| } block end end |
#format_helper(text) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/filters/pre/helper.rb', line 3 def format_helper(text) prefix = '<p' text.gsub /\n?``` helper(.+?)```/m do |block| block.gsub! /^``` helper\s*/, '' block.gsub! /^```$/, '' header = '' block.gsub! /^#### (.+?)$/ do header = $1.strip '' end content = block.strip content = "<p>#{content}</p>" unless content[0, prefix.length] == prefix content = "<div class='helper'><h4 class='header'><a href='#'>#{header}</a></h4><div class='content'>#{content}</div></div>" end end |