module RedCloth::Formatters::HTML

Constants

BASIC_TAGS

HTML cleansing stuff

Public Instance Methods

acronym(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 21
def acronym(opts)
  opts[:block] = true
  "<acronym#{pba(opts)}>#{caps(:text => opts[:text])}</acronym>"
end
amp(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 196
def amp(opts)
  "&amp;"
end
apos(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 224
def apos(opts)
  "&#39;"
end
arrow(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 169
def arrow(opts)
  "&#8594;"
end
bc_close(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 99
def bc_close(opts)
  "</pre>\n"
end
bc_open(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 94
def bc_open(opts)
  opts[:block] = true
  "<pre#{pba(opts)}>"
end
bq_close(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 109
def bq_close(opts)
  "</blockquote>\n"
end
bq_open(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 103
def bq_open(opts)
  opts[:block] = true
  cite = opts[:cite] ? " cite=\"#{ escape_attribute opts[:cite] }\"" : ''
  "<blockquote#{cite}#{pba(opts)}>\n"
end
br(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 208
def br(opts)
  if hard_breaks == false
    "\n"
  else
    "<br#{pba(opts)} />\n"
  end
end
caps(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 26
def caps(opts)
  if no_span_caps
    opts[:text]
  else
    opts[:class] = 'caps'
    span(opts)
  end
end
del(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 35
def del(opts)
  opts[:block] = true
  "<del#{pba(opts)}>#{opts[:text]}</del>"
end
dim(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 173
def dim(opts)
  opts[:text].gsub!('x', '&#215;')
  opts[:text].gsub!("'", '&#8242;')
  opts[:text].gsub!('"', '&#8243;')
  opts[:text]
end
dl_close(opts=nil) click to toggle source
# File lib/redcloth/formatters/html.rb, line 63
def dl_close(opts=nil)
  "</dl>\n"
end
dl_open(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 58
def dl_open(opts)
  opts[:block] = true
  "<dl#{pba(opts)}>\n"
end
ellipsis(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 157
def ellipsis(opts)
  "#{opts[:text]}&#8230;"
end
emdash(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 161
def emdash(opts)
  "&#8212;"
end
endash(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 165
def endash(opts)
  " &#8211; "
end
entity(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 192
def entity(opts)
  "&#{opts[:text]};"
end
fn(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 134
def fn(opts)
  no = opts[:id]
  opts[:id] = "fn#{no}"
  opts[:class] = ["footnote", opts[:class]].compact.join(" ")
  "<p#{pba(opts)}><a href=\"#fnr#{no}\"><sup>#{no}</sup></a> #{opts[:text]}</p>\n"
end
footno(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 129
def footno(opts)
  opts[:id] ||= opts[:text]
  %Q{<sup class="footnote" id=\"fnr#{opts[:id]}\"><a href=\"#fn#{opts[:id]}\">#{opts[:text]}</a></sup>}
end
gt(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 200
def gt(opts)
  "&gt;"
end
hr(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 17
def hr(opts)
  "<hr#{pba(opts)} />\n"
end
html(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 228
def html(opts)
  "#{opts[:text]}\n"
end
html_block(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 232
def html_block(opts)
  inline_html(:text => "#{opts[:indent_before_start]}#{opts[:start_tag]}#{opts[:indent_after_start]}") + 
  "#{opts[:text]}" +
  inline_html(:text => "#{opts[:indent_before_end]}#{opts[:end_tag]}#{opts[:indent_after_end]}")
end
ignored_line(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 254
def ignored_line(opts)
  opts[:text] + "\n"
end
image(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 121
def image(opts)
  opts.delete(:align)
  opts[:alt] = opts[:title]
  img = "<img src=\"#{escape_attribute opts[:src]}\"#{pba(opts)} alt=\"#{escape_attribute opts[:alt].to_s}\" />"  
  img = "<a href=\"#{escape_attribute opts[:href]}\">#{img}</a>" if opts[:href]
  img
end
inline_html(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 246
def inline_html(opts)
  if filter_html
    html_esc(opts[:text], :html_escape_preformatted)
  else
    "#{opts[:text]}" # nil-safe
  end
end
li_close(opts=nil) click to toggle source
# File lib/redcloth/formatters/html.rb, line 54
def li_close(opts=nil)
  "</li>\n"
end
li_open(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 50
def li_open(opts)
  "#{"\t" * opts[:nest]}<li#{pba(opts)}>#{opts[:text]}"
end
lt(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 204
def lt(opts)
  "&lt;"
end
multi_paragraph_quote(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 153
def multi_paragraph_quote(opts)
  "&#8220;#{opts[:text]}"
end
notextile(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 238
def notextile(opts)
  if filter_html
    html_esc(opts[:text], :html_escape_preformatted)
  else
    opts[:text]
  end
end
quot(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 216
def quot(opts)
  "&quot;"
end
quote1(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 145
def quote1(opts)
  "&#8216;#{opts[:text]}&#8217;"
end
quote2(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 149
def quote2(opts)
  "&#8220;#{opts[:text]}&#8221;"
end
registered(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 184
def registered(opts)
  "&#174;"
end
snip(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 141
def snip(opts)
  "<pre#{pba(opts)}><code>#{opts[:text]}</code></pre>\n"
end
squot(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 220
def squot(opts)
  "&#8217;"
end
table_close(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 90
def table_close(opts)
  "</table>\n"
end
table_open(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 86
def table_open(opts)
  "<table#{pba(opts)}>\n"
end
td(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 73
def td(opts)
  tdtype = opts[:th] ? 'th' : 'td'
  "\t\t<#{tdtype}#{pba(opts)}>#{opts[:text]}</#{tdtype}>\n"
end
tr_close(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 82
def tr_close(opts)
  "\t</tr>\n"
end
tr_open(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 78
def tr_open(opts)
  "\t<tr#{pba(opts)}>\n"
end
trademark(opts) click to toggle source
# File lib/redcloth/formatters/html.rb, line 180
def trademark(opts)
  "&#8482;"
end