def read_ref_definition(src, out)
line = src.shift_line
if src.cur_line &&
![:footnote_text, :ref_definition, :definition, :abbreviation].include?(src.cur_line.md_type) &&
(1..3).include?(src.cur_line.number_of_leading_spaces)
line << " " << src.shift_line
end
match = LinkRegex.match(line)
unless match
maruku_error "Link does not respect format: '#{line}'" and return
end
id = match[1]
url = match[2]
title = match[3] || match[4] || match[5]
id = sanitize_ref_id(id)
hash = self.refs[id] = {
:url => url,
:title => title
}
stuff = (match[6] || '')
stuff.split.each do |couple|
k, v = couple.split('=')
v ||= ""
v = v[1..-2] if v.start_with?('"')
hash[k.to_sym] = v
end
out << md_ref_def(id, url, :title => title)
end