Diff for /loncom/xml/lontexconvert.pm between versions 1.83 and 1.85

version 1.83, 2007/06/19 20:10:55 version 1.85, 2008/01/29 11:04:10
Line 85  $Apache::lontexconvert::messedup=0; Line 85  $Apache::lontexconvert::messedup=0;
 # into the safe space since opcode checks only occur at compile time  # into the safe space since opcode checks only occur at compile time
 sub convert_real {  sub convert_real {
     my ($texstring)=@_;      my ($texstring)=@_;
       &Apache::lonnet::logthis("convert_real converting '$$texstring");
     my ($xmlstring,$errorstring);      my ($xmlstring,$errorstring);
     local $SIG{SEGV}=sub { $Apache::lontexconvert::messedup=1; die; };      local $SIG{SEGV}=sub { $Apache::lontexconvert::messedup=1; die; };
     local $SIG{ALRM}=sub {       local $SIG{ALRM}=sub { 
Line 95  sub convert_real { Line 96  sub convert_real {
     };      };
     &Apache::lonxml::start_alarm();      &Apache::lonxml::start_alarm();
     if ($env{'browser.mathml'}) {      if ($env{'browser.mathml'}) {
    &Apache::lonnet::logthis("mathml translation");
  $xmlstring=&tth::ttm($$texstring);   $xmlstring=&tth::ttm($$texstring);
  $xmlstring=~s/\<math\>/\<math xmlns=\"\&mathns\;\"\>/g;   $xmlstring=~s/\<math\>/\<math xmlns=\"\&mathns\;\"\>/g;
  $xmlstring=~s/\<br\>/\<br\/\>/g;   $xmlstring=~s/\<br\>/\<br\/\>/g;
  $xmlstring=~s/\<p\>/\<p\>\<\/p\>/g;   $xmlstring=~s/\<p\>/\<p\>\<\/p\>/g;
  $errorstring.=&tth::ttmerror();   $errorstring.=&tth::ttmerror();
     } else {      } else {
    &Apache::lonnet::logthis("tth translation");
  $xmlstring=&tth::tth($$texstring);   $xmlstring=&tth::tth($$texstring);
  $errorstring.=&tth::ttherror();   $errorstring.=&tth::ttherror();
  $xmlstring=~s-</font(\s*)>-</font>-g;   $xmlstring=~s-</font(\s*)>-</font>-g;
Line 108  sub convert_real { Line 111  sub convert_real {
     $xmlstring=~s/^\s*\<br clear\=\"all\"/\<br/s;      $xmlstring=~s/^\s*\<br clear\=\"all\"/\<br/s;
     $xmlstring=~s/^\s*//;      $xmlstring=~s/^\s*//;
     $xmlstring=~s/\s*$//;      $xmlstring=~s/\s*$//;
       #
       # \rightleftharpoons is not converted by tth but maps
       # reasonably well to &#8660;.  If we get many more of these,
       # we're going to need to have a translation sub.
       #
       $xmlstring=~s/\\rightleftharpoons/\&\#8660;/g;
   
       &Apache::lonnet::logthis("Final result: $xmlstring");
     &Apache::lonxml::end_alarm();      &Apache::lonxml::end_alarm();
     return ($xmlstring,$errorstring);      return ($xmlstring,$errorstring);
 }  }
Line 203  sub jsMath_converted { Line 214  sub jsMath_converted {
  return "\n".   return "\n".
     '<script type="text/javascript">jsMath.Process()</script>'."\n";      '<script type="text/javascript">jsMath.Process()</script>'."\n";
     }      }
       sub jsMath_state {
    my ($level) = @_;
    return $jsMath_sent_header[$level];
       }
 }  }
   
 sub tex_engine {  sub tex_engine {
Line 220  sub tex_engine { Line 235  sub tex_engine {
 }  }
   
 sub init_math_support {  sub init_math_support {
       my ($inherit_jsmath) = @_;
     &init_tth();      &init_tth();
     &Apache::lontexconvert::jsMath_push();      &Apache::lontexconvert::jsMath_push();
     if (lc(&tex_engine()) eq 'jsmath') {      if (lc(&tex_engine()) eq 'jsmath' ||
    ($inherit_jsmath && &jsMath_state(-2))) {
  return &Apache::lontexconvert::jsMath_header();   return &Apache::lontexconvert::jsMath_header();
     }      }
     return;      return;

Removed from v.1.83  
changed lines
  Added in v.1.85


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>