def parse(data, parser=nil)
parser = latex_parser unless parser
(data.math_list.size...data.msrc_list.size).each do |i|
begin
@params[:math_envs]=~data.msrc_list[i]
data.math_list[i] = parser.parse($+)
rescue MathML::LaTeX::ParseError => e
if @rescue_proc
data.math_list[i] = @rescue_proc.call(e)
else
data.math_list[i] = error_to_html(e)
end
end
end
(data.dmath_list.size...data.dsrc_list.size).each do |i|
begin
@params[:dmath_envs]=~data.dsrc_list[i]
data.dmath_list[i] = parser.parse($+, true)
rescue MathML::LaTeX::ParseError => e
if @rescue_proc
data.dmath_list[i] = @rescue_proc.call(e)
else
data.dmath_list[i] = error_to_html(e)
end
end
end
end