The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Encode::Arabic::Parkinson - Dil Parkinson's transliteration of Arabic

REVISION

    $Revision: 179 $        $Date: 2007-01-14 01:23:25 +0100 (Sun, 14 Jan 2007) $

SYNOPSIS

    use Encode::Arabic::Parkinson;          # imports just like 'use Encode' would, plus more

    while ($line = <>) {                    # Dil Parkinson's mapping into the Arabic script

        print encode 'utf8', decode 'parkinson', $line;
    }

    # shell filter of data, e.g. in *n*x systems instead of viewing the Arabic script proper

    % perl -MEncode::Arabic::Parkinson -pe '$_ = encode "parkinson", decode "utf8", $_'

    # employing the modes of conversion for filtering and trimming

    Encode::Arabic::enmode 'parkinson', 'nosukuun', 'LWE xml';
    Encode::Arabic::Parkinson->demode(undef, undef, 'strip _');

    $decode = "AiqoraLo hRvaA Ol_n~a_S~a bi___OnotibaAhI.";
    $encode = encode 'parkinson', decode 'parkinson', $decode;

    # $encode eq "AiqraL hRvaA Aln~aS~a biAntibaAhI."

DESCRIPTION

Dil Parkinson's notation is a one-to-one transliteration of the Arabic script for Modern Standard Arabic, using lower ASCII characters to encode the graphemes of the original script.

IMPLEMENTATION

Similar to that in Encode::Arabic::Buckwalter.

EXPORTS & MODES

The module exports as if use Encode also appeared in the package. The other import options are just delegated to Encode and imports performed properly.

The conversion modes of this module allow to override the setting of the :xml option, in addition to filtering out diacritical marks and stripping off kashida. The modes and aliases relate like this:

    our %Encode::Arabic::Parkinson::modemap = (

            'default'       => 0,   'undef'         => 0,

            'fullvocalize'  => 0,   'full'          => 0,

            'nowasla'       => 4,

            'vocalize'      => 3,   'nosukuun'      => 3,

            'novocalize'    => 2,   'novowels'      => 2,   'none'          => 2,

            'noshadda'      => 1,   'noneplus'      => 1,
        );
enmode ($obj, $mode, $xml, $kshd)
demode ($obj, $mode, $xml, $kshd)

These methods can be invoked directly or through the respective functions of Encode::Arabic. The meaning of the extra parameters follows from the examples of usage.

SEE ALSO

Encode::Arabic, Encode, Encode::Encoding

Xerox Arabic Home Page http://www.arabic-morphology.com/

AUTHOR

Otakar Smrz, http://ufal.mff.cuni.cz/~smrz/

    eval { 'E<lt>' . ( join '.', qw 'otakar smrz' ) . "\x40" . ( join '.', qw 'mff cuni cz' ) . 'E<gt>' }

Perl is also designed to make the easy jobs not that easy ;)

COPYRIGHT AND LICENSE

Copyright 2006-2007 by Otakar Smrz

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.