version 1.18, 2003/10/04 18:13:36
|
version 1.22, 2003/10/08 18:21:38
|
Line 169 use POSIX qw(locale_h);
|
Line 169 use POSIX qw(locale_h);
|
require Exporter; |
require Exporter; |
|
|
our @ISA = qw (Exporter); |
our @ISA = qw (Exporter); |
our @EXPORT = qw(mt); |
our @EXPORT = qw(mt mtn ns); |
|
|
my $reroute; |
my $reroute; |
|
|
Line 210 sub mt (@) {
|
Line 210 sub mt (@) {
|
# ============================================================== What language? |
# ============================================================== What language? |
|
|
sub current_language { |
sub current_language { |
my $lang=$lh->maketext('language_code'); |
if ($lh) { |
return ($lang eq 'language_code'?'en':$lang); |
my $lang=$lh->maketext('language_code'); |
|
return ($lang eq 'language_code'?'en':$lang); |
|
} |
|
return 'en'; |
} |
} |
|
|
# ============================================================== What encoding? |
# ============================================================== What encoding? |
Line 303 sub locallocaltime {
|
Line 306 sub locallocaltime {
|
} |
} |
$year+=1900; |
$year+=1900; |
my $twelve=$twentyfour; |
my $twelve=$twentyfour; |
|
my $ampm; |
if ($twelve>12) { |
if ($twelve>12) { |
$twelve-=12; |
$twelve-=12; |
$twelve.=$lh->maketext('date_pm'); |
$ampm=$lh->maketext('date_pm'); |
} else { |
} else { |
$twelve.=$lh->maketext('date_am'); |
$ampm=$lh->maketext('date_am'); |
} |
} |
foreach |
foreach |
('seconds','minutes','twentyfour','twelve','day','year', |
('seconds','minutes','twentyfour','twelve','day','year', |
'month','weekday') { |
'month','weekday','ampm') { |
$format=~s/\$$_/eval('$'.$_)/gse; |
$format=~s/\$$_/eval('$'.$_)/gse; |
} |
} |
return $format; |
return $format; |
Line 328 sub normalize_string {
|
Line 332 sub normalize_string {
|
my $s = shift; |
my $s = shift; |
$s =~ s/\s+/ /g; |
$s =~ s/\s+/ /g; |
$s =~ s/<[^>]+>//g; |
$s =~ s/<[^>]+>//g; |
|
# Pop off beginning or ending spaces, which aren't good |
|
$s =~ s/^\s+//; |
|
$s =~ s/\s+$//; |
return $s; |
return $s; |
} |
} |
|
|
|
# alias for normalize_string; recommend using it only in the lexicon |
|
sub ns { |
|
return normalize_string(@_); |
|
} |
|
|
|
# mtn: call the mt function and the normalization function easily. |
|
# Returns original non-normalized string if there was no translation |
|
sub mtn (@) { |
|
my @args = @_; # don't want to modify caller's string; if we |
|
# didn't care about that we could set $_[0] |
|
# directly |
|
$args[0] = normalize_string($args[0]); |
|
my $translation = &mt(@args); |
|
if ($translation ne $args[0]) { |
|
return $translation; |
|
} else { |
|
return $_[0]; |
|
} |
|
} |
|
|
1; |
1; |
|
|
__END__ |
__END__ |