def parse_doc(s)
s = s.sub(/^\xEF\xBB\xBF/u, '')
meta2 = parse_email_headers(s)
data = meta2.delete :data
self.attributes.merge! meta2
??
enc = self.attributes.delete(:encoding) || 'utf-8'
if enc.downcase != 'utf-8'
if data.respond_to?(:encode!)
data.encode!('UTF-8', enc)
else
require 'iconv'
data = Iconv.new('utf-8', enc).iconv(data)
end
end
@children = parse_text_as_markdown(data)
if markdown_extra?
self.search_abbreviations
self.substitute_markdown_inside_raw_html
end
self.toc = create_toc
self.attributes[:title] ||= toc.header_element.children.join if toc.header_element
each_element do |e|
if default = self.ald[e.node_type.to_s]
expand_attribute_list(default, e.attributes)
end
expand_attribute_list(e.al, e.attributes)
end
??
if Maruku::Globals[:unsafe_features]
self.execute_code_blocks
end
end