version 1.2, 2010/04/27 17:07:35
|
version 1.4, 2010/05/04 19:45:05
|
Line 545 sub process_outgoing_html {
|
Line 545 sub process_outgoing_html {
|
my $parser = HTML::LCParser->new(\$input); |
my $parser = HTML::LCParser->new(\$input); |
while (my $token = $parser->get_token()) { |
while (my $token = $parser->get_token()) { |
if ($token->[0] eq 'T') { |
if ($token->[0] eq 'T') { |
$output .= $token->[1]; |
if ($self->{target} ne 'tex') { |
} elsif ($token->[0] eq 'D' || $token->[0] eq 'C') { |
$output .= &Apache::lontexconvert::smiley($token->[1]); |
|
} else { |
|
my $t = $token->[1]; |
|
$t =~ s/([^\n\r\t &<>!\#%\(-;=?-~])/num_entity($1)/ge; |
|
$output .= $t; |
|
} |
|
} elsif ($token->[0] eq 'D' || $token->[0] eq 'C') { |
$output .= $token->[1]; |
$output .= $token->[1]; |
} elsif ($token->[0] eq 'PI' || $token->[0] eq 'E') { |
} elsif ($token->[0] eq 'PI' || $token->[0] eq 'E') { |
$output .= $token->[2]; |
$output .= $token->[2]; |
Line 561 sub process_outgoing_html {
|
Line 567 sub process_outgoing_html {
|
} |
} |
} |
} |
} |
} |
|
|
return $output; |
return $output; |
} |
} |
|
|
Line 633 sub get_block_level_tags {
|
Line 638 sub get_block_level_tags {
|
return \@block; |
return \@block; |
} |
} |
|
|
|
sub num_entity { |
|
sprintf "&#x%X;", ord($_[0]); |
|
} |
|
|
############################################## |
############################################## |
############################################## |
############################################## |
|
|
Line 712 sub parse_algebra_tag {
|
Line 721 sub parse_algebra_tag {
|
# decoding it first. we also just get the tex, and |
# decoding it first. we also just get the tex, and |
# feed it through as if it were an <mi> tag. |
# feed it through as if it were an <mi> tag. |
$input = &HTML::Entities::decode($input); |
$input = &HTML::Entities::decode($input); |
my $algebra = &Apache::lontexconvert::algebra($input, 'tex'); |
my $algebra = &Apache::lontexconvert::algebra($input, 'tth', 'tex'); |
return &parse_m_tag($self, $algebra); |
return &parse_m_tag($self, $algebra); |
} |
} |
|
|
Line 731 sub parse_md_tag {
|
Line 740 sub parse_md_tag {
|
sub parse_m_tag { |
sub parse_m_tag { |
my $self = shift; |
my $self = shift; |
my $input = shift; |
my $input = shift; |
return &Apache::lontexconvert::to_convert($input, $self->{target}); |
if ($self->{target} ne 'tex') { |
|
return &Apache::lontexconvert::to_convert($input, $self->{target}); |
|
} else { |
|
return '<m>'.$input.'</m>'; |
|
} |
} |
} |
|
|
sub parse_chem_tag { |
sub parse_chem_tag { |