92 lines
2.8 KiB
Perl
92 lines
2.8 KiB
Perl
##
|
|
## Greek tables
|
|
##
|
|
## Traditional date format is: DoW DD{eta} MoY Year (%A %o %B %Y)
|
|
##
|
|
## Matthew Musgrove <muskrat@mindless.com>
|
|
## Translations gratiously provided by Menelaos Stamatelos <men@kwsn.net>
|
|
## This module returns unicode (utf8) encoded characters. You will need to
|
|
## take the necessary steps for this to display correctly.
|
|
##
|
|
|
|
package Date::Language::Greek;
|
|
|
|
use utf8;
|
|
use Date::Language ();
|
|
use vars qw(@ISA @DoW @DoWs @MoY @MoYs @AMPM @Dsuf %MoY %DoW $VERSION);
|
|
@ISA = qw(Date::Language);
|
|
$VERSION = "1.00";
|
|
|
|
@DoW = (
|
|
"\x{039a}\x{03c5}\x{03c1}\x{03b9}\x{03b1}\x{03ba}\x{03ae}",
|
|
"\x{0394}\x{03b5}\x{03c5}\x{03c4}\x{03ad}\x{03c1}\x{03b1}",
|
|
"\x{03a4}\x{03c1}\x{03af}\x{03c4}\x{03b7}",
|
|
"\x{03a4}\x{03b5}\x{03c4}\x{03ac}\x{03c1}\x{03c4}\x{03b7}",
|
|
"\x{03a0}\x{03ad}\x{03bc}\x{03c0}\x{03c4}\x{03b7}",
|
|
"\x{03a0}\x{03b1}\x{03c1}\x{03b1}\x{03c3}\x{03ba}\x{03b5}\x{03c5}\x{03ae}",
|
|
"\x{03a3}\x{03ac}\x{03b2}\x{03b2}\x{03b1}\x{03c4}\x{03bf}",
|
|
);
|
|
|
|
@MoY = (
|
|
"\x{0399}\x{03b1}\x{03bd}\x{03bf}\x{03c5}\x{03b1}\x{03c1}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{03a6}\x{03b5}\x{03b2}\x{03c1}\x{03bf}\x{03c5}\x{03b1}\x{03c1}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{039c}\x{03b1}\x{03c1}\x{03c4}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{0391}\x{03c0}\x{03c1}\x{03b9}\x{03bb}\x{03af}\x{03c5}",
|
|
"\x{039c}\x{03b1}\x{0390}\x{03bf}\x{03c5}",
|
|
"\x{0399}\x{03bf}\x{03c5}\x{03bd}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{0399}\x{03bf}\x{03c5}\x{03bb}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{0391}\x{03c5}\x{03b3}\x{03bf}\x{03cd}\x{03c3}\x{03c4}\x{03bf}\x{03c5}",
|
|
"\x{03a3}\x{03b5}\x{03c0}\x{03c4}\x{03b5}\x{03bc}\x{03c4}\x{03bf}\x{03c5}",
|
|
"\x{039f}\x{03ba}\x{03c4}\x{03c9}\x{03b2}\x{03c1}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{039d}\x{03bf}\x{03b5}\x{03bc}\x{03b2}\x{03c1}\x{03af}\x{03bf}\x{03c5}",
|
|
"\x{0394}\x{03b5}\x{03ba}\x{03b5}\x{03bc}\x{03b2}\x{03c1}\x{03bf}\x{03c5}",
|
|
);
|
|
|
|
@DoWs = (
|
|
"\x{039a}\x{03c5}",
|
|
"\x{0394}\x{03b5}",
|
|
"\x{03a4}\x{03c1}",
|
|
"\x{03a4}\x{03b5}",
|
|
"\x{03a0}\x{03b5}",
|
|
"\x{03a0}\x{03b1}",
|
|
"\x{03a3}\x{03b1}",
|
|
);
|
|
@MoYs = (
|
|
"\x{0399}\x{03b1}\x{03bd}",
|
|
"\x{03a6}\x{03b5}",
|
|
"\x{039c}\x{03b1}\x{03c1}",
|
|
"\x{0391}\x{03c0}\x{03c1}",
|
|
"\x{039c}\x{03b1}",
|
|
"\x{0399}\x{03bf}\x{03c5}\x{03bd}",
|
|
"\x{0399}\x{03bf}\x{03c5}\x{03bb}",
|
|
"\x{0391}\x{03c5}\x{03b3}",
|
|
"\x{03a3}\x{03b5}\x{03c0}",
|
|
"\x{039f}\x{03ba}",
|
|
"\x{039d}\x{03bf}",
|
|
"\x{0394}\x{03b5}",
|
|
);
|
|
|
|
@AMPM = ("\x{03c0}\x{03bc}", "\x{03bc}\x{03bc}");
|
|
|
|
@Dsuf = ("\x{03b7}" x 31);
|
|
|
|
@MoY{@MoY} = (0 .. scalar(@MoY));
|
|
@MoY{@MoYs} = (0 .. scalar(@MoYs));
|
|
@DoW{@DoW} = (0 .. scalar(@DoW));
|
|
@DoW{@DoWs} = (0 .. scalar(@DoWs));
|
|
|
|
# Formatting routines
|
|
|
|
sub format_a { $DoWs[$_[0]->[6]] }
|
|
sub format_A { $DoW[$_[0]->[6]] }
|
|
sub format_b { $MoYs[$_[0]->[4]] }
|
|
sub format_B { $MoY[$_[0]->[4]] }
|
|
sub format_h { $MoYs[$_[0]->[4]] }
|
|
sub format_o { sprintf("%2d%s",$_[0]->[3],"\x{03b7}") }
|
|
sub format_p { $_[0]->[2] >= 12 ? $AMPM[1] : $AMPM[0] }
|
|
|
|
1;
|
|
|
|
|
|
|