.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Encode::Arabic 3pm" .TH Encode::Arabic 3pm "2010-01-18" "perl v5.10.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Encode::Arabic \- Encodings of Arabic .SH "REVISION" .IX Header "REVISION" .Vb 1 \& $Revision: 808 $ $Date: 2009\-02\-10 00:19:07 +0100 (Tue, 10 Feb 2009) $ .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& use Encode::Arabic; # imports just like \*(Aquse Encode\*(Aq even with options would \& \& while ($line = <>) { # renders the ArabTeX notation for Arabic both in the .. \& \& print encode \*(Aqutf8\*(Aq, decode \*(Aqarabtex\*(Aq, $line; # .. Arabic script proper and the \& print encode \*(Aqutf8\*(Aq, decode \*(Aqarabtex\-zdmg\*(Aq, $line; # .. Latin phonetic transcription \& } \& \& # \*(Aquse Encode::Arabic ":modes"\*(Aq would export the functions controlling the conversion modes \& \& Encode::Arabic::demode \*(Aqarabtex\*(Aq, \*(Aqdefault\*(Aq; \& Encode::Arabic::enmode \*(Aqbuckwalter\*(Aq, \*(Aqfull\*(Aq, \*(Aqxml\*(Aq, \*(Aqstrip off kashida\*(Aq; \& \& # Arabic in lower ASCII transliterations <\-\-> Arabic script in Perl\*(Aqs internal encoding \& \& $string = decode \*(AqArabTeX\*(Aq, $octets; \& $octets = encode \*(AqBuckwalter\*(Aq, $string; \& \& $string = decode \*(AqBuckwalter\*(Aq, $octets; \& $octets = encode \*(AqArabTeX\*(Aq, $string; \& \& # Arabic in lower ASCII transliterations <\-\-> Latin phonetic transcription, Perl\*(Aqs utf8 \& \& $string = decode \*(AqBuckwalter\*(Aq, $octets; \& $octets = encode \*(AqArabTeX\*(Aq, $string; \& \& $string = decode \*(AqArabTeX\-ZDMG\*(Aq, $octets; \& $octets = encode \*(Aqutf8\*(Aq, $string; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module is a wrapper for various implementations of the encoding systems used for the Arabic language and covering even some non-Arabic extensions to the Arabic script. The included modules fit in the philosophy of Encode::Encoding and can be used directly with the Encode module. .SS "\s-1LIST\s0 \s-1OF\s0 \s-1ENCODINGS\s0" .IX Subsection "LIST OF ENCODINGS" .IP "ArabTeX" 4 .IX Item "ArabTeX" ArabTeX multi-character notation for Arabic / Perl's internal format for the Arabic script .Sp Encode::Arabic::ArabTeX, uses Encode::Mapper .IP "ArabTeX-RE" 4 .IX Item "ArabTeX-RE" Deprecated method using sequential regular-expression substitutions. Limited in scope over the ArabTeX notation and non-efficient in data processing, still, not requiring the Encode::Mapper module. .Sp Encode::Arabic::ArabTeX::RE .IP "ArabTeX-Verbatim" 4 .IX Item "ArabTeX-Verbatim" ArabTeX multi-character \fIverbatim\fR notation for Arabic / Perl's internal format for the Arabic script .Sp Encode::Arabic::ArabTeX::Verbatim, uses Encode::Mapper .IP "ArabTeX-ZDMG" 4 .IX Item "ArabTeX-ZDMG" ArabTeX multi-character notation for Arabic / Perl's internal format for the Latin phonetic trascription in the \s-1ZDMG\s0 style .Sp Encode::Arabic::ArabTeX::ZDMG, uses Encode::Mapper .IP "ArabTeX-ZDMG-RE" 4 .IX Item "ArabTeX-ZDMG-RE" Deprecated method using sequential regular-expression substitutions. Limited in scope over the ArabTeX notation and non-efficient in data processing, still, not requiring the Encode::Mapper module. .Sp Encode::Arabic::ArabTeX::ZDMG::RE .IP "Buckwalter" 4 .IX Item "Buckwalter" Buckwalter one-to-one notation for Arabic / Perl's internal format for the Arabic script .Sp Encode::Arabic::Buckwalter .IP "Parkinson" 4 .IX Item "Parkinson" Parkinson one-to-one notation for Arabic / Perl's internal format for the Arabic script .Sp Encode::Arabic::Parkinson .PP There are generic aliases to these provided by Encode. Case does not matter and all characters of the class \f(CW\*(C`[ _\-]\*(C'\fR are interchangeable. .PP Note that the standard Encode module already deals with several other single-byte encoding schemes for Arabic popular with whichever operating system, be it *n*x, Windows, \s-1DOS\s0 or Macintosh. See Encode::Supported and Encode::Byte for their identification names and aliases. .SS "\s-1EXPORTS\s0 & \s-1MODES\s0" .IX Subsection "EXPORTS & MODES" The module exports as if \f(CW\*(C`use Encode\*(C'\fR also appeared in the calling package. The \f(CW\*(C`import\*(C'\fR options are just delegated to Encode and imports performed properly, with the exception of the \&\f(CW\*(C`:modes\*(C'\fR option coming first in the list. In such a case, the following functions will be introduced into the namespace of the importing package: .ie n .IP "enmode ($enc, @list)" 4 .el .IP "enmode ($enc, \f(CW@list\fR)" 4 .IX Item "enmode ($enc, @list)" Calls the \f(CW\*(C`enmode\*(C'\fR method associated with the given \f(CW$enc\fR encoding, and passes the \f(CW@list\fR to it. The idea is similar to the \f(CW\*(C`encode\*(C'\fR functions and methods of the Encode and Encode::Encoding modules, respectively. Used for control over the modes of conversion. .ie n .IP "demode ($enc, @list)" 4 .el .IP "demode ($enc, \f(CW@list\fR)" 4 .IX Item "demode ($enc, @list)" Analogous to \f(CW\*(C`enmode\*(C'\fR, but calling the appropriate \f(CW\*(C`demode\*(C'\fR method. See the individual implementations of the listed encodings. .SH "SEE ALSO" .IX Header "SEE ALSO" Encode::Arabic Online Interface .PP Encode Arabic Project .PP ElixirFM Online Interface .PP ElixirFM Project .PP Klaus Lagally's ArabTeX .PP Tim Buckwalter's Qamus .PP Arabeyes Arabic Unix Project .PP Lecture Notes on Arabic \s-1NLP\s0 .PP Encode, Encode::Encoding, Encode::Mapper, Encode::Byte .PP Locale::Recode .PP MARC::Charset .PP Lingua::AR::MacArabic, Lingua::AR::Word .PP Text::TransMetaphone .SH "AUTHOR" .IX Header "AUTHOR" Otakar Smrz, .PP .Vb 1 \& eval { \*(AqE\*(Aq . ( join \*(Aq.\*(Aq, qw \*(Aqotakar smrz\*(Aq ) . "\ex40" . ( join \*(Aq.\*(Aq, qw \*(Aqmff cuni cz\*(Aq ) . \*(AqE\*(Aq } .Ve .PP Perl is also designed to make the easy jobs not that easy ;) .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright 2003\-2009 by Otakar Smrz .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.