def self.parse_section_title(reader, document)
line1 = reader.get_line
sect_id = nil
sect_title = nil
sect_level = -1
single_line = true
if (line1.start_with?('=') || (COMPLIANCE[:markdown_syntax] && line1.start_with?('#'))) &&
(match = line1.match(REGEXP[:section_title]))
sect_id = match[3]
sect_title = match[2]
sect_level = single_line_section_level match[1]
else
line2 = reader.peek_line
if !line2.nil? && SECTION_LEVELS.has_key?(line2[0..0]) && line2.match(REGEXP[:section_underline]) &&
(name_match = line1.match(REGEXP[:section_name])) &&
(line1.chomp.size - line2.chomp.size).abs <= 1
if anchor_match = name_match[1].match(REGEXP[:anchor_embedded])
sect_id = anchor_match[2]
sect_title = anchor_match[1]
else
sect_title = name_match[1]
end
sect_level = section_level line2
single_line = false
reader.get_line
end
end
if sect_level >= 0
sect_level += document.attr('leveloffset', 0).to_i
end
[sect_id, sect_title, sect_level, single_line]
end