version 1.2, 2000/06/27 19:35:32
|
version 1.31, 2001/07/03 20:58:27
|
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; |
|
|
use strict; |
use strict; |
|
use Apache::lonxml; |
|
|
|
sub BEGIN { |
|
|
|
&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 |
#----------------------------------------------------------------------------- <m> tag |
#-- <output> |
sub start_mfirst { |
sub start_output { |
my ($target,$token) = @_; |
my ($target) = @_; |
my $currentstring = ''; |
if ($target eq 'meta') { $Apache::lonxml::metamode--; } |
if ($target eq 'web') { |
return ''; |
$currentstring = "\$out = lontexconvert::converted(\$in = '\\documentstyle{article}'.'\$'.\""; |
} |
} elsif ($target eq 'tex') { |
sub end_output { |
$currentstring = "\$"; |
my ($target) = @_; |
} |
if ($target eq 'meta') { $Apache::lonxml::metamode++; } |
return $currentstring; |
return ''; |
} |
} |
|
#-- <m> tag |
sub start_m { |
sub start_m { |
my ($target,$token) = @_; |
my ($target,$token,$tagstack,$parstack,$parser) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = "\$out = lontexconvert::converted(\$in = '\$'.\""; |
my $inside = &Apache::lonxml::get_all_text("/m",$$parser[$#$parser]); |
|
$inside ='\\documentstyle{article}'.$inside; |
|
# &Apache::lonxml::debug($inside); |
|
$currentstring = &Apache::lontexconvert::converted(\$inside); |
|
# &Apache::lonxml::debug($currentstring); |
|
|
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = "\$"; |
$currentstring = ""; |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 34 use strict;
|
Line 47 use strict;
|
my ($target,$token) = @_; |
my ($target,$token) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = "\".'\$') "; |
|
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = "\$"; |
$currentstring = ""; |
|
} elsif ($target eq 'meta') { |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 45 use strict;
|
Line 58 use strict;
|
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 53 use strict;
|
Line 67 use strict;
|
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 70 use strict;
|
Line 84 use strict;
|
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 91 use strict;
|
Line 106 use strict;
|
} |
} |
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 200 use strict;
|
Line 199 use strict;
|
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 207 use strict;
|
Line 210 use strict;
|
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>'; |
|
} |
|
$token->[2]->{'onLoad'}.=&Apache::lonxml::loadevents(); |
|
$token->[2]->{'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 256 use strict;
|
Line 295 use strict;
|
$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 266 use strict;
|
Line 307 use strict;
|
$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 276 use strict;
|
Line 319 use strict;
|
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 287 use strict;
|
Line 332 use strict;
|
$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 297 use strict;
|
Line 344 use strict;
|
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 309 use strict;
|
Line 358 use strict;
|
$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 320 use strict;
|
Line 371 use strict;
|
$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 330 use strict;
|
Line 384 use strict;
|
$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 445 use strict;
|
Line 502 use strict;
|
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 456 use strict;
|
Line 515 use strict;
|
$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 466 use strict;
|
Line 527 use strict;
|
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 477 use strict;
|
Line 540 use strict;
|
$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 487 use strict;
|
Line 552 use strict;
|
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 498 use strict;
|
Line 565 use strict;
|
$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 508 use strict;
|
Line 577 use strict;
|
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 519 use strict;
|
Line 590 use strict;
|
$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 529 use strict;
|
Line 602 use strict;
|
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 540 use strict;
|
Line 615 use strict;
|
$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 550 use strict;
|
Line 627 use strict;
|
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 561 use strict;
|
Line 640 use strict;
|
$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 592 use strict;
|
Line 673 use strict;
|
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 603 use strict;
|
Line 686 use strict;
|
$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 613 use strict;
|
Line 698 use strict;
|
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 624 use strict;
|
Line 711 use strict;
|
$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 635 use strict;
|
Line 724 use strict;
|
$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 644 use strict;
|
Line 735 use strict;
|
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 656 use strict;
|
Line 749 use strict;
|
$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 675 use strict;
|
Line 770 use strict;
|
$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 685 use strict;
|
Line 782 use strict;
|
$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 696 use strict;
|
Line 795 use strict;
|
$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 706 use strict;
|
Line 807 use strict;
|
$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 830 use strict;
|
Line 941 use strict;
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
|
sub end_hr { |
|
my ($target,$token) = @_; |
|
my $currentstring = ''; |
|
if ($target eq 'web') { |
|
$currentstring .= $token->[2]; |
|
} elsif ($target eq 'tex') { |
|
} |
|
return $currentstring; |
|
} |
#----------------------------------------------------------------------------- <a> tag |
#----------------------------------------------------------------------------- <a> tag |
sub start_a { |
sub start_a { |
my ($target,$token) = @_; |
my ($target,$token) = @_; |
Line 841 use strict;
|
Line 961 use strict;
|
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 849 use strict;
|
Line 969 use strict;
|
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 859 use strict;
|
Line 979 use strict;
|
} |
} |
#---------------------------------------------------------------------------- <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 1054 use strict;
|
Line 1178 use strict;
|
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 1064 use strict;
|
Line 1188 use strict;
|
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; |
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; |
|
} |
|
|
|
# ------------------------------------------------------------------------ <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__ |