package Unicode::Indic::Tamil;
use strict;
use Unicode::Indic::Phonetic;
our $VERSION = 0.01;
our @ISA = qw (Unicode::Indic::Phonetic);
use constant U => 0x0b80;
my $Map = {
A => chr(U+0x3e),
B => chr(U+0x2a),
C => chr(U+0x1a),
Ch => chr(U+0x1a),
D => chr(U+0x1f),
Dh => chr(U+0x1f),
E => chr(U+0x47),
G => chr(U+0x15),
H => chr(U+0x3),
I => chr(U+0x40),
J => chr(U+0x1a),
K => chr(U+0x15),
L => chr(U+0x33),
M => chr(U+0x2),
N => chr(U+0x23),
O => chr(U+0x4b),
P => chr(U+0x2a),
R => chr(U+0x43),
Ri => chr(U+0x43),
Ru => chr(U+0x43),
RR => chr(U+0x44),
RI => chr(U+0x44),
RU => chr(U+0x44),
S => chr(U+0x38),
T => chr(U+0x1f),
Th => chr(U+0x1f),
U => chr(U+0x42),
_A => chr(U+0x6),
_E => chr(U+0xf),
_I => chr(U+0x8),
_O => chr(U+0x13),
_R => chr(U+0x30).chr(U+0x41), #chr(U+0xb) is reserved.
_Ri => chr(U+0x30).chr(U+0x3f), #chr(U+0xb) is reserved.
_Ru => chr(U+0x30).chr(U+0x41), #chr(U+0xb) is reserved.
_RR => chr(U+0x30).chr(U+0x42), # reserved :chr(U+0x60),
_RI => chr(U+0x30).chr(U+0x40), # reserved :chr(U+0x60),
_RU => chr(U+0x30).chr(U+0x42), # reserved :chr(U+0x60),
_U => chr(U+0xa),
_a => chr(U+0x5),
_aa => chr(U+0x6),
_ai => chr(U+0x10),
_au => chr(U+0x14),
_e => chr(U+0xe),
_ee => chr(U+0x8),
_i => chr(U+0x7),
_ii => chr(U+0x8),
_o => chr(U+0x12),
_oo => chr(U+0xa),
_u => chr(U+0x9),
_uu => chr(U+0xa),
_ue => chr(U+0xc),
_ui => chr(U+0x61),
a => 0,
aa => chr(U+0x3e),
ai => chr(U+0x48),
au => chr(U+0x4c),
b => chr(U+0x2a),
bh => chr(U+0x2a),
c => chr(U+0x1a),
ch => chr(U+0x1a),
d => chr(U+0x24),
dh => chr(U+0x24),
e => chr(U+0x46),
ee => chr(U+0x40),
f => chr(U+0x28),
g => chr(U+0x15),
gh => chr(U+0x15),
h => chr(U+0x39),
i => chr(U+0x3f),
ii => chr(U+0x40),
j => chr(U+0x1a),
jh => chr(U+0x1a),
k => chr(U+0x15),
kh => chr(U+0x15),
l => chr(U+0x32),
m => chr(U+0x2e),
n => chr(U+0x28),
o => chr(U+0x4a),
oo => chr(U+0x42),
p => chr(U+0x2a),
ph => chr(U+0x2a),
r => chr(U+0x30),
s => chr(U+0x38),
sh => chr(U+0x37),
t => chr(U+0x24),
th => chr(U+0x24),
u => chr(U+0x41),
uu => chr(U+0x42),
v => chr(U+0x35),
ue => chr(U+0xc),
ui => chr(U+0x61),
w => chr(U+0x35),
y => chr(U+0x2f),
'~d' => chr(U+0x1f), # Same as D same as T
'~D' => chr(U+0x1f), # Same as Dh same as T
'~f' => chr(U+0x28), # Sane as f
'~g' => chr(U+0x15), # Sane as g same as k
'~j' => chr(U+0x1c), # Same as j
'~k' => chr(U+0x15), # Same as k
'~K' => chr(U+0x15), # Same as K
'~y' => chr(U+0x2f), # Same as y
'~m' => chr(U+0x19),
'~n' => chr(U+0x1e),
'~r' => chr(U+0x31),
'~N' => chr(U+0x29),
'~L' => chr(U+0x34),
virama=> chr(U+0x4d),
base => chr(U),
};
sub new{
my $proto = shift;
my $class = ref($proto)||$proto;
my $self = { Map => $Map };
bless $self, $class;
}
1;
__END__
=head1 NAME
Unicode::Indic::Tamil -Perl module for the Tamil language.
=head1 SYNOPSIS
use Unicode::Indic::Tamil;
=head1 DESCRIPTION
This perl module is used for transliteration of text from qwerty keyboard characters to Unicode Tamil font characters and versa.
=head1 DIAGNOSTICS
None!
head1 AUTHOR
Syamala Tadigadapa
=head1 COPYRIGHT
Copyright (c) 2003, Syamala Tadigadapa. All Rights Reserved.
This module is free software. It may be used, redistributed
and/or modified under the terms of the Perl Artistic License
(see http://www.perl.com/perl/misc/Artistic.html)