version 1.7, 2000/10/30 20:34:25
|
version 1.33, 2001/11/06 00:02:25
|
Line 2
|
Line 2
|
# Tags Default Definition Module |
# Tags Default Definition Module |
# |
# |
# last modified 06/26/00 by Alexander Sakharuk |
# last modified 06/26/00 by Alexander Sakharuk |
|
# 11/6,11/30,02/01/01,5/4 Gerd Kortemeyer |
|
|
package Apache::londefdef; |
package Apache::londefdef; |
|
|
Line 9 use strict;
|
Line 10 use strict;
|
use Apache::lonxml; |
use Apache::lonxml; |
|
|
sub BEGIN { |
sub BEGIN { |
&Apache::lonxml::register('Apache::londefdef',('m','html','head','map','applet','select','option','input','textarea','form','meta','title','body','center','b','strong','table','dt','h1','h2','h3','h4','h5','h6','cite','i','address','dd','dl','dir','ol','ul','menu','dfn','kbd','tt','code','em','q','p','br','big','small','basefont','font','s','sub','strike','sup','hr','a','li','u')); |
|
|
&Apache::lonxml::register('Apache::londefdef',('m','html','head','map','select','option','input','textarea','form','meta','title','body','center','b','strong','table','dt','h1','h2','h3','h4','h5','h6','cite','i','address','dd','dl','dir','ol','ul','menu','dfn','kbd','tt','code','em','q','p','br','big','small','basefont','font','s','sub','strike','sup','hr','a','li','u','output','param','applet','img','embed','tr','td','allow','frameset')); |
|
|
} |
} |
|
|
#===================================================================== TAG SUBROUTINES |
#===================================================================== TAG SUBROUTINES |
|
#-- <output> |
|
sub start_output { |
|
my ($target) = @_; |
|
if ($target eq 'meta') { $Apache::lonxml::metamode--; } |
|
return ''; |
|
} |
|
sub end_output { |
|
my ($target) = @_; |
|
if ($target eq 'meta') { $Apache::lonxml::metamode++; } |
|
return ''; |
|
} |
#-- <m> tag |
#-- <m> tag |
sub start_m { |
sub start_m { |
my ($target,$token,$parstack,$parser) = @_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'meta') { |
if ($target eq 'web') { |
my $inside = &Apache::lonxml::get_all_text("/m",$$parser[$#$parser]); |
my $inside = &Apache::lonxml::get_all_text("/m",$$parser[-1]); |
$currentstring =''; |
$inside ='\\documentstyle{article}'.$inside; |
} |
#&Apache::lonxml::debug("M is starting with:$inside:"); |
if ($target eq 'web') { |
my $eval=&Apache::lonxml::get_param('eval',$parstack,$safeeval); |
my $inside = &Apache::lonxml::get_all_text("/m",$$parser[$#$parser]); |
if ($eval eq 'on') { |
$inside ='\\documentstyle{article}'.$inside; |
$inside=&Apache::run::evaluate($inside,$safeeval,$$parstack[-1]); |
# &Apache::lonxml::debug($inside); |
#&Apache::lonxml::debug("M is evaulated to:$inside:"); |
$currentstring = &Apache::lontexconvert::converted(\$inside); |
} |
# &Apache::lonxml::debug($currentstring); |
$currentstring = &Apache::lontexconvert::converted(\$inside); |
|
#&Apache::lonxml::debug("M is ends with:$currentstring:"); |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = ""; |
$currentstring = ""; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
sub end_m { |
sub end_m { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = ""; |
$currentstring = ""; |
} elsif ($target eq 'meta') { |
} elsif ($target eq 'meta') { |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
#-------------------------------------------------------------------------- <html> tag |
#-------------------------------------------------------------------------- <html> tag |
sub start_html { |
sub start_html { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = &Apache::lonxml::xmlbegin(). |
|
&Apache::lonxml::fontsettings(); |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 56 sub BEGIN {
|
Line 71 sub BEGIN {
|
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[2]; |
$currentstring = &Apache::lonxml::xmlend(); |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 73 sub BEGIN {
|
Line 88 sub BEGIN {
|
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[2]; |
$currentstring = &Apache::lonxml::registerurl(). |
|
$token->[2]; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 94 sub BEGIN {
|
Line 110 sub BEGIN {
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
#------------------------------------------------------------------------ <applet> tag |
|
sub start_applet { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_applet { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} |
|
return $currentstring; |
|
} |
|
#------------------------------------------------------------------------ <select> tag |
#------------------------------------------------------------------------ <select> tag |
sub start_select { |
sub start_select { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
Line 203 sub BEGIN {
|
Line 203 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} |
} |
|
if ($target eq 'meta') { |
|
$currentstring='<title>'; |
|
&start_output(); |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
sub end_title { |
sub end_title { |
Line 210 sub BEGIN {
|
Line 214 sub BEGIN {
|
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[2]; |
$currentstring = $token->[2]; |
|
} |
|
if ($target eq 'meta') { |
|
&end_output(); |
|
$currentstring='</title>'; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
#-------------------------------------------------------------------------- <meta> tag |
#-------------------------------------------------------------------------- <meta> tag |
sub start_meta { |
sub start_meta { |
my ($target,$token) = @_; |
my ($target,$token,$tagstack,$parstack,$parser) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
my $args=''; |
|
if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; } |
|
if ($args eq '') { |
|
&Apache::lonxml::get_all_text("/meta",$$parser[$#$parser]); |
|
} else { |
|
$currentstring = $token->[4]; |
|
} |
|
} |
|
if ($target eq 'meta') { |
|
unless ($token->[2]->{'http-equiv'}) { |
|
my $name=$token->[2]->{'name'}; |
|
$name=~tr/A-Z/a-z/; |
|
$name=~s/\s/\_/g; |
|
if ($name) { |
|
$currentstring='<'.$name.'>'. |
|
$token->[2]->{'content'}. |
|
'</'.$name.'>'; |
|
} |
|
} |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
sub end_meta { |
sub end_meta { |
my ($target,$token) = @_; |
my ($target,$token,$tagstack,$parstack,$parser) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[2]; |
my $args=''; |
} |
if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; } |
return $currentstring; |
if ($args ne '') { |
} |
$currentstring = $token->[4]; |
|
} |
|
} |
|
return $currentstring; |
|
} |
#-------------------------------------------------------------------------- <body> tag |
#-------------------------------------------------------------------------- <body> tag |
sub start_body { |
sub start_body { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
if (!$Apache::lonxml::registered) { |
} elsif ($target eq 'tex') { |
$currentstring.='<head>'.&Apache::lonxml::registerurl().'</head>'; |
|
} |
|
my $onLoad=''; |
|
foreach my $key (keys(%{$token->[2]})) { |
|
if ($key =~ /^onload$/i) { |
|
$onLoad.=$token->[2]->{$key}.';'; |
|
delete($token->[2]->{$key}); |
|
} |
|
} |
|
$token->[2]->{'onLoad'}=$onLoad.&Apache::lonxml::loadevents(); |
|
my $onUnload=''; |
|
foreach my $key (keys(%{$token->[2]})) { |
|
if ($key =~ /^onunload$/i) { |
|
$onUnload.=$token->[2]->{$key}.';'; |
|
delete($token->[2]->{$key}); |
|
} |
|
} |
|
$token->[2]->{'onUnload'}=$onUnload. |
|
&Apache::lonxml::unloadevents(); |
|
|
|
$currentstring .= '<'.$token->[1]; |
|
map { |
|
$currentstring.=' '.$_.'="'.$token->[2]->{$_}.'"'; |
|
} keys %{$token->[2]}; |
|
$currentstring.='>'; |
|
} elsif ($target eq 'tex') { |
$currentstring = " \\begin{document} "; |
$currentstring = " \\begin{document} "; |
} |
} |
return $currentstring; |
return $currentstring; |
Line 259 sub BEGIN {
|
Line 314 sub BEGIN {
|
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = " \\begin{center} "; |
$currentstring = " \\begin{center} "; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring = " \\begin{center} "; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 269 sub BEGIN {
|
Line 326 sub BEGIN {
|
$currentstring = $token->[2]; |
$currentstring = $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = " \\end{center}"; |
$currentstring = " \\end{center}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring = " \\end{center}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 279 sub BEGIN {
|
Line 338 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = " {\\bf "; |
$currentstring = " \\textbf{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring = " \\textbf{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 290 sub BEGIN {
|
Line 351 sub BEGIN {
|
$currentstring = $token->[2]; |
$currentstring = $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = "}"; |
$currentstring = "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring = "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 300 sub BEGIN {
|
Line 363 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = " {\\bf "; |
$currentstring = " \\textbf{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring = " \\textbf{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 312 sub BEGIN {
|
Line 377 sub BEGIN {
|
$currentstring = $token->[2]; |
$currentstring = $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = "}"; |
$currentstring = "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring = "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 323 sub BEGIN {
|
Line 390 sub BEGIN {
|
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "\\chapter{ "; |
$currentstring .= "\\chapter{ "; |
} |
} elsif ($target eq 'meta') { |
|
$currentstring='<subject>'; |
|
&start_output(); |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
sub end_h1 { |
sub end_h1 { |
Line 333 sub BEGIN {
|
Line 403 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
} |
} elsif ($target eq 'meta') { |
|
&end_output(); |
|
$currentstring='</subject>'; |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
#---------------------------------------------------------------------------- <h2> tag |
#---------------------------------------------------------------------------- <h2> tag |
Line 448 sub BEGIN {
|
Line 521 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\it "; |
$currentstring .= "\\textit{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\textit{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 459 sub BEGIN {
|
Line 534 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 469 sub BEGIN {
|
Line 546 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\it "; |
$currentstring .= "\\textit{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\textit{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 480 sub BEGIN {
|
Line 559 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 490 sub BEGIN {
|
Line 571 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\it "; |
$currentstring .= "\\textit{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\textit{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 501 sub BEGIN {
|
Line 584 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 511 sub BEGIN {
|
Line 596 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\it "; |
$currentstring .= "\\textit{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\textit{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 522 sub BEGIN {
|
Line 609 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 532 sub BEGIN {
|
Line 621 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\tt "; |
$currentstring .= "\\texttt{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\texttt{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 543 sub BEGIN {
|
Line 634 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
} |
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
#---------------------------------------------------------------------------- <kbd> tag |
#---------------------------------------------------------------------------- <kbd> tag |
Line 553 sub BEGIN {
|
Line 646 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\tt "; |
$currentstring .= "\\texttt"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\texttt{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 564 sub BEGIN {
|
Line 659 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 595 sub BEGIN {
|
Line 692 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\emph "; |
$currentstring .= "\\emph{"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\emph{"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 606 sub BEGIN {
|
Line 705 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
} |
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
#----------------------------------------------------------------------------- <q> tag |
#----------------------------------------------------------------------------- <q> tag |
Line 616 sub BEGIN {
|
Line 717 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{ \\emph "; |
$currentstring .= "\\emph{"; |
} |
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\emph{"; |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
sub end_q { |
sub end_q { |
Line 627 sub BEGIN {
|
Line 730 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "}"; |
$currentstring .= "}"; |
} |
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
#----------------------------------------------------------------------------- <p> tag |
#----------------------------------------------------------------------------- <p> tag |
Line 638 sub BEGIN {
|
Line 743 sub BEGIN {
|
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{\\par "; |
$currentstring .= "{\\par "; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "{\\par "; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 647 sub BEGIN {
|
Line 754 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= " }"; |
$currentstring .= "}"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 659 sub BEGIN {
|
Line 768 sub BEGIN {
|
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "\\\\"; |
$currentstring .= "\\\\"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "\\\\"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 678 sub BEGIN {
|
Line 789 sub BEGIN {
|
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{\\large "; |
$currentstring .= "{\\large "; |
} |
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "{\\large "; |
|
} |
return $currentstring; |
return $currentstring; |
} |
} |
sub end_big { |
sub end_big { |
Line 688 sub BEGIN {
|
Line 801 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= " }"; |
$currentstring .= " }"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= " }"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 699 sub BEGIN {
|
Line 814 sub BEGIN {
|
$currentstring .= $token->[4]; |
$currentstring .= $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= "{\\footnotesize "; |
$currentstring .= "{\\footnotesize "; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= "{\\footnotesize "; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 709 sub BEGIN {
|
Line 826 sub BEGIN {
|
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= " }"; |
$currentstring .= " }"; |
|
} elsif ($target eq 'latexsource') { |
|
$currentstring .= " }"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
#---------------------------------------------------------------------- <basefont> tag |
#---------------------------------------------------------------------- <basefont> tag |
sub start_basefont { |
sub start_basefont { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
|
sub end_basefont { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} |
|
return $currentstring; |
|
} |
#-------------------------------------------------------------------------- <font> tag |
#-------------------------------------------------------------------------- <font> tag |
sub start_font { |
sub start_font { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
Line 853 sub BEGIN {
|
Line 980 sub BEGIN {
|
return $currentstring; |
return $currentstring; |
} |
} |
sub end_a { |
sub end_a { |
my ($target,$token,$stackref) = @_; |
my ($target,$token,$tagstack,$stackref) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
Line 861 sub BEGIN {
|
Line 988 sub BEGIN {
|
my $tempor_var = $stackref->[$#$stackref]; |
my $tempor_var = $stackref->[$#$stackref]; |
if (index($tempor_var,'name') != -1 ) { |
if (index($tempor_var,'name') != -1 ) { |
$tempor_var =~ s/name=([^,]*),/$1/g; |
$tempor_var =~ s/name=([^,]*),/$1/g; |
$currentstring .= " \\label{$tempor_var}"; |
# $currentstring .= " \\label{$tempor_var}"; |
} elsif (index($tempor_var,'href') != -1 ) { |
} elsif (index($tempor_var,'href') != -1 ) { |
$tempor_var =~ s/href=([^,]*),/$1/g; |
$tempor_var =~ s/href=([^,]*),/$1/g; |
$currentstring .= " \\ref{$tempor_var}"; |
$currentstring .= " \\ref{$tempor_var}"; |
Line 871 sub BEGIN {
|
Line 998 sub BEGIN {
|
} |
} |
#---------------------------------------------------------------------------- <li> tag |
#---------------------------------------------------------------------------- <li> tag |
sub start_li { |
sub start_li { |
my ($target,$token,$stackref) = @_; |
my ($target,$token,$tagstack,$stackref) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
my $tempor_var = $stackref->[$#$stackref-1]; |
my $tempor_var = $stackref->[$#$stackref]; |
if (index($tempor_var,'circle') != -1 ) { |
if (index($tempor_var,'circle') != -1 ) { |
$currentstring .= " \\item[o] "; |
$currentstring .= " \\item[o] "; |
} elsif (index($tempor_var,'square') != -1 ) { |
} elsif (index($tempor_var,'square') != -1 ) { |
$currentstring .= " \\item[$\Box$] "; |
$currentstring .= " \\item[$\Box$] "; |
} else { |
} elsif ($tempor_var ne '') { |
|
$_ = $tempor_var; |
|
m/my\s*([^=]*)=/; |
|
$currentstring .= " \\item[$1] "; |
|
} else { |
$currentstring .= " \\item "; |
$currentstring .= " \\item "; |
} |
} |
} |
} |
Line 1066 sub BEGIN {
|
Line 1197 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = " \\begin{tabular} "; |
$currentstring = ""; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 1076 sub BEGIN {
|
Line 1207 sub BEGIN {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[2]; |
$currentstring = $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = " \\end{tabular}"; |
$currentstring = ""; |
|
} |
|
return $currentstring; |
|
} |
|
#------------------------------------------------------------------------- <tr> tag |
|
sub start_tr { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = ''; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_tr { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = ""; |
|
} |
|
return $currentstring; |
|
} |
|
#------------------------------------------------------------------------- <td> tag |
|
sub start_td { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = ''; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_td { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = ""; |
|
} |
|
return $currentstring; |
|
} |
|
# -------------------------------------------------------------------------- <img> tag |
|
|
|
sub start_img { |
|
my ($target,$token) = @_; |
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'src'}; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\begin{figure} "; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_img { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\end{figure}"; |
|
} |
|
return $currentstring; |
|
} |
|
# ----------------------------------------------------------------------- <applet> tag |
|
|
|
sub start_applet { |
|
my ($target,$token) = @_; |
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'code'}; |
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'archive'}; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\begin{figure} "; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_applet { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\end{figure}"; |
|
} |
|
return $currentstring; |
|
} |
|
|
|
# ------------------------------------------------------------------------ <embed> tag |
|
|
|
sub start_embed { |
|
my ($target,$token) = @_; |
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'src'}; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\begin{figure} "; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_embed { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\end{figure}"; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
|
|
|
# ------------------------------------------------------------------------ <param> tag |
|
|
|
sub start_param { |
|
my ($target,$token) = @_; |
|
if ($token->[2]->{'name'} eq 'cabbase') { |
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'value'}; |
|
} |
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'src'}; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[4]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\begin{figure} "; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_param { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
$currentstring = " \\end{figure}"; |
|
} |
|
return $currentstring; |
|
} |
|
|
|
# ------------------------------------------------------------------------ <allow> tag |
|
|
|
sub start_allow { |
|
my ($target,$token) = @_; |
|
|
|
$Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]= |
|
$token->[2]->{'src'}; |
|
|
|
return ''; |
|
} |
|
sub end_allow { |
|
return ''; |
|
} |
|
|
|
# ------------------------------------------------------------------------- Frames |
|
sub start_frameset { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
if (!$Apache::lonxml::registered) { |
|
$currentstring.='<head>'.&Apache::lonxml::registerurl().'</head>'; |
|
} |
|
$currentstring .= $token->[4]; |
|
} |
|
return $currentstring; |
|
} |
|
sub end_frameset { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring = $token->[2]; |
|
} |
|
return $currentstring; |
|
} |
1; |
1; |
__END__ |
__END__ |