version 1.68, 2003/10/23 13:56:07
|
version 1.69, 2004/02/18 22:49:32
|
Line 498 sub format {
|
Line 498 sub format {
|
} |
} |
|
|
sub prettyprint { |
sub prettyprint { |
my ($value,$fmt)=@_; |
my ($value,$fmt,$target)=@_; |
my $result; |
my $result; |
my $dollarmode; |
my $dollarmode; |
|
if (!$target) { $target = $external::target; } |
if ($fmt =~ /^\$(.*)/) { $fmt=$1; $dollarmode=1; } |
if ($fmt =~ /^\$(.*)/) { $fmt=$1; $dollarmode=1; } |
if ($fmt) { $value=sprintf('%.'.$fmt,$value); } |
if ($fmt) { $value=sprintf('%.'.$fmt,$value); } |
if ($value =~ /([0-9\.\-\+]+)E([0-9\-\+]+)/i ) { |
if ($value =~ /([0-9\.\-\+]+)E([0-9\-\+]+)/i ) { |
Line 512 sub prettyprint {
|
Line 513 sub prettyprint {
|
$exponent=~s/^-0*/-/; |
$exponent=~s/^-0*/-/; |
if ($exponent eq '-') { undef($exponent); } |
if ($exponent eq '-') { undef($exponent); } |
if ($exponent) { |
if ($exponent) { |
if ($external::target eq 'web') { |
if ($target eq 'web') { |
$result=$frac.'×10<sup>'.$exponent.'</sup>'; |
$result=$frac.'×10<sup>'.$exponent.'</sup>'; |
} elsif ($external::target eq 'tex') { |
} elsif ($target eq 'tex') { |
$result='\ensuremath{'.$frac.'\times 10^{'.$exponent.'}}'; |
$result='\ensuremath{'.$frac.'\times 10^{'.$exponent.'}}'; |
} else { |
} else { |
$result=$value; |
$result=$value; |
Line 524 sub prettyprint {
|
Line 525 sub prettyprint {
|
} |
} |
} else { |
} else { |
$result=$value; |
$result=$value; |
if ($dollarmode) { $result=&dollarformat($result); } |
if ($dollarmode) { $result=&dollarformat($result,$target); } |
} |
} |
return $result; |
return $result; |
} |
} |
|
|
sub dollarformat { |
sub dollarformat { |
my ($number) = @_; |
my ($number,$target) = @_; |
|
if (!$target) { $target = $external::target; } |
if ($number =~ /\./) { |
if ($number =~ /\./) { |
while ($number =~ /([^\.,]+)([^\.,][^\.,][^\.,])([,0-9]*\.[0-9]*$)/) { |
while ($number =~ /([^\.,]+)([^\.,][^\.,][^\.,])([,0-9]*\.[0-9]*$)/) { |
$number = $1.','.$2.$3; |
$number = $1.','.$2.$3; |
Line 540 sub dollarformat {
|
Line 542 sub dollarformat {
|
$number = $1.','.$2.$3; |
$number = $1.','.$2.$3; |
} |
} |
} |
} |
if ($external::target eq 'tex') { |
if ($target eq 'tex') { |
$number='\$'.$number; #' stupid emacs |
$number='\$'.$number; #' stupid emacs |
} else { |
} else { |
$number='$'.$number; #' stupid emacs |
$number='$'.$number; #' stupid emacs |