summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx')
-rw-r--r--Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx543
1 files changed, 148 insertions, 395 deletions
diff --git a/Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx b/Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx
index 513dc3081cd..dbcaca303db 100644
--- a/Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx
+++ b/Master/texmf-dist/source/xelatex/arabxetex/arabxetex.dtx
@@ -2,7 +2,7 @@
%
%!TEX encoding = UTF-8 Unicode
%
-% Copyright © 2007-2010 by François Charette <firmicus at gmx dot net>
+% Copyright © 2007-2015 by François Charette <firmicus04 at gmail dot com>
%
% Distributable under the LaTeX Project Public License,
% version 1.3c or higher (your choice). The latest version of
@@ -24,14 +24,14 @@
____________________________
The arabxetex package
- © 2007–2010 François Charette
+ © 2007–2015 François Charette
License information appended
\endpreamble
\postamble
-Copyright © 2007–2010 by François Charette <firmicus at gmx dot net>
+Copyright © 2007–2015 by François Charette <firmicus04 at gmail dot com>
Distributable under the LaTeX Project Public License,
version 1.3c or higher (your choice). The latest version of
@@ -69,7 +69,7 @@ as well as an extensive collection of TECKit files
%
%<*readme>
--------------------------
-THE ARABXETEX PACKAGE v1.1.4
+THE ARABXETEX PACKAGE v1.2.1
This package provides a convenient ArabTeX-like user-interface for typesetting
languages using the Arabic script in XeLaTeX, with flexible access to font
@@ -84,7 +84,7 @@ The TECkit fontmapping files (*.map and *.tec) should be copied to
-------------------------
François Charette
-© 2007–2010
+© 2007–2015
%</readme>
%
% \fi
@@ -94,7 +94,7 @@ François Charette
%
% \GetFileInfo{\jobname.sty}
%
-% \title{~\hfil {\color{IslamicGreen}\arabxetex \hfil \arabxetexAr}\hfil~\\
+% \title{~\hfil {\color{IslamicGreen}\arabxetex}\hfil~\\
% An \arabtex-like interface for typesetting languages in Arabic script with \XeLaTeX}
% \author{François Charette}
% \date{\filedate \qquad \fileversion}
@@ -119,7 +119,10 @@ François Charette
%
% \section{Introduction}
%
-% Since the early 1990s, \TeX\ users who wished to typeset in Arabic script
+%
+% Since the early 1990s,\footnote{ ^^A
+% This introduction reflects the state of things in 2007 when \arabxetex\ was initially released.}
+% \TeX\ users who wished to typeset in Arabic script
% have relied on Klaus Lagally's excellent \arabtex\ system.\footnote{ ^^A
% \url{ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm}.
% Version 2.00 was released in April 1992 and version 3.00 in November of
@@ -144,18 +147,6 @@ François Charette
% (It is only fair to state, however, that Prof.~Lagally has been extremely
% responsive to ideas, suggestions and wishes by users in the past).
%
-% The introduction of Omega in \ca 1996, a \TeX\ extension for multilingual,
-% multidirectional typesetting based on Unicode, raised of course many hopes, but
-% these have by now completely dissipated since the project has been moribund for
-% several years and is now probably defunct. Aleph, a more humble attempt to reach
-% some of the goals set by Omega, has been equally unsuccessful.\footnote{ ^^A
-% Based on Omega 1.15 and \eTeX, Aleph attempted to provide a usable and
-% stable branch. See
-% \url{http://www.tug.org/TUGboat/Articles/tb25-1/bilotta.pdf}.
-% Unfortunately the project is currently dormant.}
-% Both engines suffered of numerous bugs and never reached a stable and usable
-% state, \textit{at least according to my own subjective experience}.
-%
% After completion of the initial alpha version of \arabxetex, I came across the
% package \pkg{Arabi} by Youssef Jabri on CTAN.\footnote{ ^^A
% \url{http://www.ctan.org/tex-archive/language/arabic/arabi/}}
@@ -166,10 +157,9 @@ François Charette
%
% With the availability of Jonathan Kew's \XeTeX, users can now rely on a very
% up-to-date typesetting engine based on the integration of \eTeX, Unicode, and
-% modern font-rendering technology (AAT and ICU), without the complex hassle of
+% modern font-rendering technology, without the complex hassle of
% font installation.\footnote{ ^^A
-% \url{http://scripts.sil.org/xetex}. \XeTeX\ was originally developed
-% for the Mac~OS~X platform, but Linux and WIN32 ports are now available.}
+% \url{http://xetex.sourceforge.net}.}
%
% \section{Description}
%
@@ -184,12 +174,7 @@ François Charette
% \arabxetex\ introduces several additions, and a few minor modifications,
% to \arabtex's conventions. These are documented in tabular form in
% Section~\ref{conventiontable}. \arabxetex\ relies on the package \pkg{bidi}
-% which contains the macros necessary for bidirectional typesetting --
-% using \eTeX's \cmd{\beginR} \ldots \cmd{\endR}, \cmd{\beginL} \ldots \cmd{\endL}
-% primitives. The main code in \pkg{bidi.sty} is essentially borrowed,
-% with minor adaptations, from the file \pkg{rlbabel.def} in the Babel
-% distribution (where it serves for typesetting Hebrew). Some improvements
-% in the beta version were inspired by Youssef Jabri's \pkg{Arabi}.
+% which contains the macros necessary for bidirectional typesetting.
%
% Languages supported at present are the same as in \arabtex, namely: Arabic,
% Maghribi Arabic, Farsi (Persian), Urdu, Sindhi, Kashmiri, Ottoman Turkish,
@@ -206,14 +191,14 @@ François Charette
% can use keymaps or keyboard utilities to achieve the same, so why bother?
% An expert in Arabic mathematical linguistic and author of the Perl module
% \pkg{Encode::Arabic::ArabTeX}, Otakar Srmž, has this to say about the
-% virtues of \arabtex\ \ASCII\ encoding:
+% virtues of \arabtex\ \ASCII\ encoding:\footnote{ ^^A
+% \url{http://search.cpan.org/~smrz/Encode-Arabic/lib/Encode/Arabic/ArabTeX.pm\#DESCRIPTION}.
+% See also \url{http://ufal.mff.cuni.cz/~smrz/ICFP2006/icfp-encode.pdf}.}
% \begin{quote}
% “ArabTeX is an excellent extension to TeX/LaTeX designed for
% typesetting the right-to-left scripts of the Orient. It comes up with
% very intuitive and comprehensible lower \ASCII\ transliterations, the
-% expressive power of which is even better than that of the scripts.”^^A\footnote{ %
-% [Source: \url{http://search.cpan.org/~smrz/Encode-Arabic-1.16/ArabTeX/ArabTeX.pm#DESCRIPTION}.
-% See also \url{http://ufal.mff.cuni.cz/~smrz/ICFP2006/icfp-encode.pdf}]^^A}
+% expressive power of which is even better than that of the scripts.”
% \end{quote}
% There are indeed several advantages in using \arabtex\ input convention for
% typesetting in the Arabic script, besides ease and legibility. First it is
@@ -233,7 +218,7 @@ François Charette
% \DescribeMacro{\textarab}\DescribeMacro{\textfarsi}\marginpar{\raggedleft\small etc.}
% where ¦<language>¦ is one of the following (alternative names are given in brackets):
% \begin{compactitem}[\textbf{·}]
-% \item ¦arab¦ (¦Arabic¦),\footnote{ ^^A
+% \item ¦arab¦ (¦arabic¦),\footnote{ ^^A
% Since the command \cmd\arabic\ is already defined in \LaTeX, we chose
% the environment ¦arab¦ and the command \cmd\textarab\ instead,
% but the equivalent environment ¦Arabic¦ and the command
@@ -276,11 +261,7 @@ François Charette
%
% Left-to-right insertions in Latin script within an Arabic environment
% can be made by means of the \DescribeMacro{\textLR}
-% command \cmd\textLR¦{…}¦.\new{1.1.2}\footnote{ %
-% In version 1.0 this was called \cmd\textlatin, which was renamed \cmd\textroman
-% in version 1.1. But the former conflicted with \pkg{Babel},
-% and the latter with \pkg{Beamer}. Hopefully \cmd\textLR\
-% won't be as short-lived!}
+% command \cmd\textLR¦{…}¦.
% Emphasis in Arabic is traditionally indicated by
% overlining the text, and this can be achieved with the command
% \DescribeMacro{\aemph}
@@ -316,15 +297,17 @@ François Charette
% \newfontfamily\arabicfont[Script=Arabic]{<fontname>}
% \end{Verbatim}
% If not, then a warning is issued and \arabxetex\ will attempt to load
-% the font \textbf{Scheherazade} (designed by Bob Halissy and
-% Jonathan Kew of SIL International).\footnote{
-% Available from \url{http://scripts.sil.org/ArabicFonts}. For
+% the font \textbf{Amiri} (by Khaled Hosny).\footnote{
+% Available from \url{http://www.amirifont.org}.
+% Prior to version 1.2.0, the default font was \textbf{Scheherazade} (designed by Bob Halissy and
+% Jonathan Kew of SIL International),
+% available from \url{http://scripts.sil.org/ArabicFonts}. For
% typesetting Sindhi and Kashmiri, the font \textbf{Lateef}, available at
% the same place, is also recommended.}
-% You can also define specific fonts \new{1.1} for all other languages, by similarly defining
+% You can also define specific fonts for all other languages, by similarly defining
% ¦\<language>font¦, such as for example:
% \begin{Verbatim}[gobble=2,fontsize=\normalsize]
-% \newfontfamily\urdufont[Script=Arabic]{Nafees Pakistani Naskh}
+% \newfontfamily\urdufont[Script=Arabic]{Hussaini Nastaleeq}
% \end{Verbatim}
% So for example if the \cmd\texturdu\ command or the ¦urdu¦ environment is used,
% \arabxetex\ will use the \cmd\urdufont\ if it is defined,
@@ -350,7 +333,7 @@ François Charette
% ^say'uN, ^say'iN, ^say'aN, sA'ala, mas'alaTuN, saw'aTuN, _ha.tI'aTuN,
% jA'a, ridA'uN, ridA'aN, jI'a, radI'iN, sU'uN, .daw'uN, qay'iN, .zim'aN
% , yatasA'alUna, 'a`dA'akum, 'a`dA'ikum, 'a`dA'ukum maqrU'aT, mU'ibAt,
-% taw'am, yas'alu, 'a.sdiq^A$\;$'uh_u, ya^g^I'u, s^U'ila
+% taw'am, yas'alu, 'a.sdiq^A'uh_u, ya^g^I'u, s^U'ila
% \end{arab}
% \end{Verbatim}
%
@@ -361,7 +344,7 @@ François Charette
% ^say'uN, ^say'iN, ^say'aN, sA'ala, mas'alaTuN, saw'aTuN, _ha.tI'aTuN,
% jA'a, ridA'uN, ridA'aN, jI'a, radI'iN, sU'uN, .daw'uN, qay'iN, .zim'aN
% , yatasA'alUna, 'a`dA'akum, 'a`dA'ikum, 'a`dA'ukum maqrU'aT, mU'ibAt,
-% taw'am, yas'alu, 'a.sdiq^A$\;$'uh_u, ya^g^I'u, s^U'ila
+% taw'am, yas'alu, 'a.sdiq^A'uh_u, ya^g^I'u, s^U'ila
% \end{arab}
%
% \subsubsection{Special orthographies}
@@ -386,7 +369,7 @@ François Charette
% \bigskip
%
% \textbf{NB}: For the time being only \textit{miʾa} is supported, but more irregular
-% constructs should be added in later versions.
+% constructs may be added in later versions.
%
% \subsubsection{Typesetting the Holy Qurʾān}
%
@@ -395,62 +378,64 @@ François Charette
% typesetters. Nevertheless, with Open Type fonts that cover the full Unicode range
% for the Arabic script, it is possible to achieve pretty decent results.
% The following examples represent my attempt to reproduce, with the font
-% Scheherazade, the various typographic features of a typical printed edition
-% from Saudi Arabia.
+% Amiri, the various typographic features of a typical printed edition (disregarding those that cannot be achieved
+% by means of Unicode, such as putting the \textit{hamza} directly over the baseline).\footnote{ ^^A
+% In the previous version of the manual, I attempted to mimic that behaviour with a \TeX\ macro \cmd\hamzaB, which happened to work more or less well with the font Scheherazade. With Amiri it does not and I have reverted to standard spellings.}
%
-% In printed Qurʾāns, one frequently encounters typographical oddities that are
-% not taken into account by Unicode, such as the \textit{hamza} placed directly over
-% the baseline instead as over the \textit{alif}.
-% But with a \TeX\ macro it is possible to emulate this rather well:
+% ^^AIn printed Qurʾāns, one frequently encounters typographical oddities that are
+% ^^Anot taken into account by Unicode, such as the \textit{hamza} placed directly over
+% ^^Athe baseline instead as over the \textit{alif}.
+% ^^ABut with a \TeX\ macro it is possible to emulate this rather well:
%
% \begin{Verbatim}[gobble=2,fontsize=\small]
-% \newcommand{\hamzaB}{\char"200D\char"0640\raise-.95ex\hbox{\char"0654}\char"200D}
-%
% \begin{arab}[fullvoc]
-% mina 'l-qur'Ani 'l-karImi, sUraTu 'l-ssajdaTi 15--16:
+% sUraTu 'l-ssajdaTi, 15--16:
%
-% 'innamA yu'minu bi-\hamzaB a|"Ay___atinA 'lla_dIna 'i_dA _dukkirUA bihA
+% 'innamA yu'minu bi-'AyAtinA 'lla_dIna 'i_dA _dukkirUA bihA
% _harrUA sujjadaN wa-sabba.hUA bi-.hamdi rabbihim wa-hum lA yastakbirUna
% SAJDA [[15]] tatajAfY_a junUbuhum `ani 'l-ma.dAji`i yad`Una rabbahum
% _hawfaN wa-.tama`aN wa-mimmA razaqn_ahum yunfiqUna [[16]]
% \end{arab}
%
% \begin{arab}[fullvoc]
-% sUraTu 'l-baqaraTi 71--72:
+% sUraTu 'l-baqaraTi, 71--72:
%
% qAla 'innahu, yaqUlu 'innahA baqaraTuN llA _dalUluN tu_tIru 'l-'ar.da wa-lA
-% tasq.I 'l-.har_ta musallamaTuN llA ^siyaTa fIhA|^JIM qAluW" 'l-\hamzaB a___ana
+% tasq.I 'l-.har_ta musallamaTuN llA ^siyaTa fIhA|^JIM qAluW" 'l-'Ana
% ji'ta bi-'l-.haqqi|^JIM fa_daba.hUhA wa-mA kAdduW" yaf`alUna [[71]] wa-'i_d
-% qataltum nafsaN fa-udda$\,$_ara|'|_i"tum fIhA|^SLY wa-al-ll_ahu mu_hrijuN mmA
+% qataltum nafsaN fa-udda_ara|'|_i"tum fIhA|^SLY wa-al-ll_ahu mu_hrijuN mmA
% kun"tum taktumUna [[72]]
% \end{arab}
% \end{Verbatim}
-%
+% ^^A\let\stdarabicfont\arabicfont
+% ^^A\let\arabicfont\amiriquran
% \begin{arab}[fullvoc]
-% mina 'l-qur'Ani 'l-karImi, sUraTu 'l-ssajdaTi 15--16:
+% sUraTu 'l-ssajdaTi, 15--16:
%
-% 'innamA yu'minu bi-\hamzaB a|"Ay___atinA 'lla_dIna 'i_dA _dukkirUA bihA _harrUA
-% sujjadaN wa-sabba.hUA bi-.hamdi rabbihim wa-hum lA yastakbirUna SAJDA [[15]]
-% tatajAfY_a junUbuhum `ani 'l-ma.dAji`i yad`Una rabbahum _hawfaN wa-.tama`aN
-% wa-mimmA razaqn_ahum yunfiqUna [[16]]
+% 'innamA yu'minu bi-'AyAtinA 'lla_dIna 'i_dA _dukkirUA bihA
+% _harrUA sujjadaN wa-sabba.hUA bi-.hamdi rabbihim wa-hum lA yastakbirUna
+% SAJDA [[15]] tatajAfY_a junUbuhum `ani 'l-ma.dAji`i yad`Una rabbahum
+% _hawfaN wa-.tama`aN wa-mimmA razaqn_ahum yunfiqUna [[16]]
% \end{arab}
-%
+%
+% \bigskip
% \begin{arab}[fullvoc]
-% sUraTu 'l-baqaraTi 71--72:
+% sUraTu 'l-baqaraTi, 71--72:
%
% qAla 'innahu, yaqUlu 'innahA baqaraTuN llA _dalUluN tu_tIru 'l-'ar.da wa-lA
-% tasq.I 'l-.har_ta musallamaTuN llA ^siyaTa fIhA|^JIM qAluW" 'l-\hamzaB a___ana
+% tasq.I 'l-.har_ta musallamaTuN llA ^siyaTa fIhA|^JIM qAluW" 'l-'Ana
% ji'ta bi-'l-.haqqi|^JIM fa_daba.hUhA wa-mA kAdduW" yaf`alUna [[71]] wa-'i_d
-% qataltum nafsaN fa-udda$\,$_ara|'|_i"tum fIhA|^SLY wa-al-ll_ahu mu_hrijuN mmA
+% qataltum nafsaN fa-udda_ara|'|_i"tum fIhA|^SLY wa-al-ll_ahu mu_hrijuN mmA
% kun"tum taktumUna [[72]]
% \end{arab}
-%
+% ^^A\let\arabicfont\stdarabicfont
% \subsubsection{Farsi}
%
% These are some of the Persian examples in the \arabtex\ documentation,
-% typeset with the font Simple Farsi Bold:
+% typeset with the font IranNastaliq:\footnote{ ^^A
+% \url{http://www.scict.ir/portal/File/ShowFile.aspx?ID=29bc4b98-bfd0-428d-b56b-63e36de8c9b5}}
% \begin{Verbatim}[gobble=2,fontsize=\normalsize]
-% \begin{farsi}[voc]
+% \begin{farsi}[novoc]
% _hwAb, xwI^s, _hwod, ^ceH, naH, yal_aH, _hAneH, _hAneHhA, _hAneH-hA,
% ketAb-e, U, rAh-e, t_U, nAmeH-i, man, bInI-e, An, mard, pA-i, In,
% zan, bAzU-i, In, zan, dAr-_i, man, _hU-_i, t_U, nAmeH-_i, sormeH-_i,
@@ -461,7 +446,7 @@ François Charette
% \end{farsi}
% \end{Verbatim}
%
-% \begin{farsi}[voc]
+% \begin{farsi}[novoc]
% _hwAb, xwI^s, _hwod, ^ceH, naH, yal_aH, _hAneH, _hAneHhA, _hAneH-hA,
% ketAb-e, U, rAh-e, t_U, nAmeH-i, man, bInI-e, An, mard, pA-i, In,
% zan, bAzU-i, In, zan, dAr-_i, man, _hU-_i, t_U, nAmeH-_i, sormeH-_i,
@@ -473,8 +458,9 @@ François Charette
%
% \subsubsection{Urdu}
%
-% An Urdu example, typeset with Nafees Pakistani Naskh:\footnote{ ^^A
-% The example is borrowed from
+% An Urdu example, typeset with Hussaini Nastaleeq:\footnote{ ^^A
+% \url{https://github.com/khaledhosny/hussaini-nastaleeq}.
+% The example is borrowed from
% \url{http://tabish.freeshell.org/u-trans/urducode.html}}
% \begin{Verbatim}[gobble=2,fontsize=\normalsize]
% \begin{urdu}[novoc]
@@ -501,127 +487,12 @@ François Charette
% \renewcommand{\urdufont}{\arabicfont}
% \renewcommand{\farsifont}{\arabicfont}
%
-% \subsection{Special considerations}
-% \parindenton
-% \subsubsection{The name of God} \label{allahliga}
-%
-% The glyph \textsf{FDF2}, defined as ‘\textsc{arabic ligature allah isolated form}’
-% by the Unicode Consortium, is a source of great confusion.
-% It is displayed in the Unicode Book with an initial alif and thus represents the
-% name of God, Allāh, which in Arabic is always written as a special ligature
-% (\ie {\tradarabic اﷲ} and not {\arabicfont الله}).\footnote{ ^^A
-% The glyph {\tradarabic اﷲ} is taken from the font Traditional Arabic.
-% In Scheherazade its design is rather suboptimal: {\arabicfont\char"FDF2}.}
-%
-% However, a substantial portion of real-world fonts rather represent that
-% ligature \textit{without} the initial alif.\footnote{ ^^A
-% My research on Arabic fonts available or known to me yields the following picture:
-% The fonts that do not display the initial alif in the ligature \textsf{FDF2}
-% include those provided by \href{http://www.linotype.com/2517/arabicfonts.html}{Linotype};
-% the great majority of those licensed to or developed by
-% \href{http://www.microsoft.com/typography/links/FontPortal.aspx?PID=8}{Microsoft}
-% (I could verify it for Times New Roman, Arial, Courier New, Microsoft Sans Serif,
-% Arabic Transparent, Simplified Arabic, Simplified Arabic Fixed,
-% WinSoft Serif Pro, Traditional Arabic, Andalus, Old Antic Bold,
-% Old Antic Decorated and Farsi Simple Bold); the fonts distributed by
-% \href{http://www.arabeyes.org}{Arabeyes.org};
-% \href{http://scripts.sil.org/ArabicFonts}{SIL}'s Lateef;
-% and the fonts developed by \href{www.crulp.org}{CRULP} in Pakistan.
-% The Unicode-conformant fonts, on the other hand, are:
-% \href{http://scripts.sil.org/ArabicFonts}{SIL}'s Scheherazade,
-% \href{http://www.tdc.org/news/2006Results/AdobeArabic.html}{Adobe Arabic}
-% (distributed with the \href{http://www.adobe.com/ceea/}{Middle-Eastern version}
-% of the latest \href{http://www.adobe.com/products/acrobat/readermain.html}{Adobe Reader 7}),
-% Arial Unicode MS, and \href{http://sakkal.com/type/typesetting.html}{Arabic Typesetting}
-% (distributed with \href{http://www.microsoft.com/typography/VOLT.mspx}{VOLT}
-% and with \href{http://www.microsoft.com/office/editions/prodinfo/language/proofingtools.mspx}{Microsoft Office Proofing Tools 2003}).}
-% The confusion probably has to do with Unicode’s omission to include the ALLAH
-% ligature without the initial alif, which is imperatively required for typesetting
-% expressions like \textit{al-ḥamdu li-llāh} \RL{\tradarabic الحمد ﷲ}.
-% Many fonts code the ligature {\tradarabic ﷲ} in the Private Use Area
-% and make it accessible as a default ligature for the sequence \textit{lām-lām-hāʾ}.
-% In such a case it can be generated from the input ¦\textarab{l|lh}¦
-% (the vertical bar here tells \arabxetex\ not to interpret the sequence ¦ll¦
-% as \textit{lām} with \textit{shadda}).\footnote{ ^^A
-% This currently does not work with Scheharazade, but the
-% developers are aware of the issue.}
-% Besides not being a standard \arabtex\ input sequence, the trouble is that
-% there is no way to know a priori whether the font provides the glyph {\tradarabic ﷲ}
-% at all, and whether it is defined as a default ligature from the above input.
-%
-% To solve this problem with \arabxetex, we had no choice but provide two classes of
-% font mappings, one for each of the above two categories of Arabic fonts.\footnote{ ^^A
-% This has the unfortunate consequence of doubling the number of mappings shipped
-% with \arabxetex. But since their size is small, it is more an esthetic annoyance
-% than a practical one.}
-% By default we assume the canonical situation where \textsf{U+FDF2} corresponds to
-% {\tradarabic اﷲ}, but the user can change this by choosing one of the package options
-% ¦fdf2alif¦ or ¦fdf2noalif¦; it can also be changed locally by means of the commands
-% \DescribeMacro{\SetAllahWithAlif}
-% \DescribeMacro{\SetAllahWithoutAlif}
-% \cmd\SetAllahWithAlif\ and \cmd\SetAllahWithoutAlif\ \textit{before} making use of
-% \cmd\arabicfont. In a future version we might perhaps implement a database of Arabic fonts
-% within \arabxetex, so that this would work automatically in the most common cases.
-%
-% The font Adobe Arabic has in addition the ligature \textit{fa-li-llāh}:
-% \textit{fā fatḥa lām kasra lām hāʾ} $\rightarrow$ {\adobearabic فَلِله}, which can be
-% entered in \arabtex\ notation as ¦\textarab{falilh}¦. In this particular case we also
-% provide the input convention ¦FALILLAH¦.
-%
-%
-% ^^ATEST Scheherazade: \textarab{l|lh}
-% ^^A
-% ^^A\renewcommand{\arabicfont}{\tradarabic}
-% ^^ATEST Trad Arabic: \textarab{l|lh}
-%
-% ^^ALinotype: \\
-% ^^ALotus Linotype {\lotusfont\char"FDF2} ---
-% ^^AAlHarfAlJadid Linotype One {\fontspec[Scale=1.5]{AlHarfAlJadid Linotype One}\char"FDF2} ---
-% ^^AAlHarfAlJadid Linotype Two {\fontspec[Scale=1.5]{AlHarfAlJadid Linotype Two}\char"FDF2} ---
-% ^^AMariam Linotype {\fontspec[Scale=1.5]{Mariam Linotype}\char"FDF2} ---
-% ^^AQadi Linotype {\fontspec[Scale=1.5]{Qadi Linotype}\char"FDF2}
-% ^^A
-% ^^AFonts from or licensed to Microsoft: \\
-% ^^ATimes New Roman {\fontspec[Scale=1.5]{Times New Roman}\char"FDF2} ---
-% ^^AArial {\fontspec[Scale=1.5]{Arial}\char"FDF2} ---
-% ^^ACourier New {\fontspec[Scale=1.5]{Courier New}\char"FDF2} ---
-% ^^AMicrosoft Sans Serif {\fontspec[Scale=1.5]{Microsoft Sans Serif}\char"FDF2} ---
-% ^^AArial Unicode MS {\arialuni\char"FDF2} ---
-% ^^AArabic Transparent {\fontspec[Scale=1.5]{Arabic Transparent}\char"FDF2} ---
-% ^^ASimplified Arabic {\fontspec[Scale=1.5]{Simplified Arabic}\char"FDF2} ---
-% ^^ASimplified Arabic Fixed {\fontspec[Scale=1.5]{Simplified Arabic Fixed}\char"FDF2} ---
-% ^^AWinSoft Serif Pro {\fontspec[Scale=1.5]{WinSoft Serif Pro}\char"FDF2} ---
-% ^^ATraditional Arabic {\fontspec[Scale=1.5]{Traditional Arabic}\char"FDF2} ---
-% ^^AArabic Typesetting {\arabtype\char"FDF2} ---
-% ^^AAndalus {\fontspec[Scale=1.5]{Andalus}\char"FDF2} ---
-% ^^AOld Antic Bold {\fontspec[Scale=1.5]{Old Antic Bold}\char"FDF2} ---
-% ^^AFarsi Simple Bold {\fontspec[Scale=1.5]{Farsi Simple Bold}\char"FDF2}
-% ^^A
-% ^^A
-% ^^AAdobe:\\
-% ^^AAdobe Arabic {\adobearabic\char"FDF2} ---
-% ^^A
-% ^^ASIL: \\
-% ^^AScheherazade {\arabicfont\char"FDF2} ---
-% ^^ALateef {\fontspec{Lateef}\char"FDF2}
-% ^^A
-% ^^A%CRULP:\\
-% ^^A%Nafees Nastaleeq {\fontspec{Nafees Nastaleeq}\char"FDF2} ---
-% ^^A%{\fontspec{Nafees Pakistani Naskh}\char"FDF2}
-% ^^A
-% ^^AArabeyes:\\
-% ^^AKacstBook {\fontspec{KacstBook}\char"FDF2}
-% ^^AKacstFarsi {\fontspec{KacstFarsi}\char"FDF2}
-%
-%
-%
-%
% \subsection{Transliteration}
%
% At the moment transliteration mappings are provided for Arabic, Persian, Urdu,
% Sindhi and Pashto. The rest may be provided in a future version.
% As a rule the default conventions provided are those of the Library of Congress.
-% \new{1.1.2}For Arabic the alternative transliteration of the
+% For Arabic the alternative transliteration of the
% \href{http://www.orientasia.info/download/arab_trans.pdf}{Deutsche Morgenländische Gesellschaft}
% is also available (but should be still considered experimental).
% You can set it with the command \DescribeMacro{\SetTranslitConvention}
@@ -648,10 +519,7 @@ François Charette
% \end{arab}
% Note that the article \textit{al-} is automatically skipped.
% Note also that since the transliteration is coded in Unicode at the level of
-% the font-mapping, it is necessary that the font contains all required glyphs.\footnote{ ^^A
-% See Appendix~\ref{latinextfonts} for a list of recommended Unicode fonts that cover the
-% full \textsc{latin extended additional} plane.}
-%
+% the font-mapping, it is necessary that the font contains all required glyphs.
% ^^AIf your default roman font does not have the required
% ^^Adiacritics, you can declare for instance
% ^^A¦\SetTranslitStyle{\fontspec{Gentium}\itshape}¦.
@@ -939,7 +807,7 @@ François Charette
% ^^A06BC -> 0646 0631
% ^^A0689 -> 0688
% ^^A
-%
+% \newpage
% \section{Unicode-Encoding concordance}
% \parindent 0pt
% \let\oldbaselineskip=\baselineskip
@@ -1217,134 +1085,32 @@ François Charette
% \textsf{076A} \> {\arabicfont\char"076A} \\
% \textsf{076B} \> {\arabicfont\char"076B} \\
% \textsf{076C} \> {\arabicfont\char"076C} \\
-% \textsf{076D} \> {\arabicfont\char"076D} \\
-% \textbf{Presentation Forms} * \\
+% \textsf{076D} \> {\arabicfont\char"076D} \\
+% ~~~ \> ~~~  \\
+% \textbf{Presentation Forms} \\
% \textsf{FD3E} \> {\arabicfont\char"FD3E} \> ¦))¦ \\
% \textsf{FD3F} \> {\arabicfont\char"FD3F} \> ¦((¦ \\
-% \textsf{FDF0} \> {\arialuni\char"FDF0} \> ¦SALLASTOP¦ \\
-% \textsf{FDF1} \> {\arialuni\char"FDF1} \> ¦QALA¦ \\
-% \textsf{FDF2} \> {\arabicfont\char"FDF2} \> ¦al-ll_ah¦ or ¦ALLAH¦ ** \\
-% \textsf{FDF3} \> {\arialuni\char"FDF3} \> ¦AKBAR¦ \\
-% \textsf{FDF4} \> {\arialuni\char"FDF4} \> ¦MUHAMMAD¦ \\
-% \textsf{FDF5} \> {\arialuni\char"FDF5} \> ¦SALAM¦ \\
-% \textsf{FDF6} \> {\arialuni\char"FDF6} \> ¦RASUL¦ or ¦RASOUL¦ \\
-% \textsf{FDF7} \> {\arialuni\char"FDF7} \> ¦ALAYHI¦ or ¦ALAYHE¦ \\
-% \textsf{FDF8} \> {\arialuni\char"FDF8} \> ¦WASALLAM¦ \\
-% \textsf{FDF9} \> {\arialuni\char"FDF9} \> ¦SALLA¦ \\
-% \textsf{FDFA} \> {\adobearabic\char"FDFA} \> ¦SLM¦ \\
-% \textsf{FDFB} \> {\arialuni\char"FDFB} \> ¦JALLA¦ \\
+% \textsf{FDF0} \> {\arabicfont\char"FDF0} \> ¦SALLASTOP¦ \\
+% \textsf{FDF1} \> {\arabicfont\char"FDF1} \> ¦QALA¦ \\
+% \textsf{FDF3} \> {\arabicfont\char"FDF3} \> ¦AKBAR¦ \\
+% \textsf{FDF4} \> {\arabicfont\char"FDF4} \> ¦MUHAMMAD¦ \\
+% \textsf{FDF5} \> {\arabicfont\char"FDF5} \> ¦SALAM¦ \\
+% \textsf{FDF6} \> {\arabicfont\char"FDF6} \> ¦RASUL¦ or ¦RASOUL¦ \\
+% \textsf{FDF7} \> {\arabicfont\char"FDF7} \> ¦ALAYHI¦ or ¦ALAYHE¦ \\
+% \textsf{FDF8} \> {\arabicfont\char"FDF8} \> ¦WASALLAM¦ \\
+% \textsf{FDF9} \> {\arabicfont\char"FDF9} \> ¦SALLA¦ \\
+% \textsf{FDFA} \> {\arabicfont\char"FDFA} \> ¦SLM¦ \\
+% \textsf{FDFB} \> {\arialuni\char"FDFB} \> ¦JALLA¦ \\ ^^A fixme not available in Amiri
% \textsf{FDFC} \> {\arabicfont\char"FDFC} \> ¦RIYAL¦ \\
-% \textsf{FDFD} \> {\Huge\arabesque\char"F050} \> ¦BASMALA¦ \\
-% \textbf{Non-Unicode Ligatures} \\
-% \> {\tradarabic\char"FDF2} \> ¦ll_ah¦ or ¦LLAH¦ ** \\
-% \> {\adobearabic فَلِله} \> ¦FALILLAH¦ ***
+% \textsf{FDFD} \> {\arabicfont\char"FDFD} \>\hspace*{100pt} ¦BASMALA¦ \\
+% \textbf{Special Combinations} \\
+% \> {\arabicfont الله} \> ¦al-ll_ah¦ or ¦ALLAH¦ \\
+% \> {\arabicfont لله} \> ¦ll_ah¦ or ¦LLAH¦ or ¦LLH¦ \\
+% \> {\arabicfont فَلِله} \> ¦FALILLAH¦
% \end{tabbing}
% \end{multicols}
% \parindentoff
%
-% \baselineskip 14pt
-% \textit{Notes}\\
-% * Since most of these glyphs are not present in Scheherazade
-% (and, with a few exceptions, are very rarely featured in other fonts),
-% for illustration purposes we have taken \textsf{FDF0}, \textsf{FDF1},
-% \textsf{FDF3}--\textsf{FDF9} and \textsf{FDFB} from Arial Unicode MS,
-% \textsf{FDFA} from Adobe Arabic, and \textsf{FDFD} from AGA Arabesque.
-%
-% ** See §~\ref{allahliga}
-%
-% *** Specific to the font Adobe Arabic
-%
-% \newpage
-% \appendix
-% \small
-% \section{Notes on available free and commercial fonts for the Perso-Arabic script}
-% \label{arabicfont}
-%
-% \textcolor{red}{NB: This list is incomplete and has not been updated since 2007.}
-%
-% ^^AThere are few free good quality fonts that support the Arabic script.
-% \begin{compactitem}[\textbf{·}]
-% \item ‘Scheherazade’ and ‘Lateef’ from SIL
-%
-% \item ‘Adobe Arabic’
-%
-% \item Free fonts from \href{http://www.arabeyes.org}{Arabeyes.org}
-%
-% \item \ldots
-%
-% ^^AAdobe Arabic, dlig: (discretionary ligatures)
-% ^^A
-% ^^Aﻓ َ ﻠ ِ ﻠ ﻪ falilh > uni0641064E0644065006440647
-% ^^A
-% ^^Aﻟ ﻠ ﻪ l-l-h > uni064406440647
-% ^^A
-% ^^AA-l-l-h > FDF2
-%
-% \item Arabic fonts on Mac~OS~X: ‘Geeza Pro’, ‘DecoType Naskh’, \ldots more?
-%
-% \item ‘Arabic Typesetting’ and other Arabic fonts licensed to Microsoft
-%
-% \item Commercial fonts by vendors:
-% \begin{compactitem}[\textbf{--}]
-% \item Linotype GmbH: \ldots
-% \item AGFA Monotype: \ldots
-% \item ParaType: \ldots
-% \item \ldots
-% \end{compactitem}
-% \end{compactitem}
-%
-%
-%
-% \section{Recommended Unicode fonts for transliterating Oriental languages}
-% \label{latinextfonts}
-%
-% Here follows a list of open source and freeware fonts with full
-% \textsc{Latin Extended Additional} coverage.\footnote{ ^^A
-% See this \href{http://www.alanwood.net/unicode/fonts.html\#general}{webpage} for more details.}
-% \textcolor{red}{NB: This list has not been updated since 2007.}
-% \begin{compactitem}[\textbf{·}]
-% \item Gentium, Doulos, Charis: \url{http://scripts.sil.org/FontDownloads}
-%
-% \item Junicode: \url{http://junicode.sourceforge.net/}
-%
-% \item Libertine: \url{http://linuxlibertine.sourceforge.net/}
-%
-% \item DejaVu Serif / Sans / Sans Mono: \url{http://dejavu.sourceforge.net/wiki/index.php/Main_Page}
-%
-% \item Lucida Grande: Mac~OS~X
-%
-% \item TITUS Cyberbit Basic: \url{http://titus.fkidg1.uni-frankfurt.de/unicode/tituut.asp}
-%
-% \item Thryomanes: \url{ftp://ftp.io.com/pub/usr/hmiller/fonts/Thryomanes12.zip}
-%
-% \item jGaramond: \url{http://www.janthor.de/jGaramond/}
-%
-% \item Everson Mono Unicode (shareware): \url{http://www.evertype.com/emono/}
-%
-% \item Arial Unicode MS: Windows
-%
-% \item Microsoft Sans Serif: Windows
-%
-% \item FreeSerif / FreeSans / FreeMono: \url{http://savannah.nongnu.org/projects/freefont/}
-%
-% \item Roman Unicode: \url{http://everywitchway.net/linguistics/fonts/roman.html}
-%
-% \item Chrisanthi Unicode: \url{http://everywitchway.net/linguistics/fonts/chrysuni.html}
-%
-% \item HindSight Unicode (not very nice): \url{http://dartcanada.tripod.com/Objets/Zips/HindUnic.zip}
-%
-% \item AbRoman: \url{http://www.languagegeek.com/font/fontdownload.html}
-%
-% \item Garava: \url{http://www.aimwell.org/Fonts/fonts.html}
-%
-% \item Verajja (based on Bitstream Vera Sans, so very similar to DejaVu Sans):
-% \url{http://www.aimwell.org/Fonts/fonts.html}
-%
-% \item Legendum: \url{http://home.kabelfoon.nl/~slam/fonts/fonts.html}
-%
-% \item Code2000 (shareware): \url{http://www.code2000.net}
-% \end{compactitem}
-%
%
% \section{Implementation}
%\iffalse
@@ -1353,18 +1119,18 @@ François Charette
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{arabxetex}
- [2010/03/04 v1.1.4 ArabTeX-like interface for XeLaTeX]
+ [2015/09/04 v1.2.1 ArabTeX-like interface for XeLaTeX]
%
\DeclareOption{fullvoc}{\def\ax@mode{fullvoc}}
\DeclareOption{voc}{\def\ax@mode{voc}}
\DeclareOption{novoc}{\def\ax@mode{novoc}}
\DeclareOption{trans}{\def\ax@mode{trans}}
\DeclareOption{utf}{\def\ax@mode{utf}}
-\DeclareOption{fdf2alif}{\def\ax@font@allah{fdf2alif}}
-\DeclareOption{fdf2noalif}{\def\ax@font@allah{fdf2noalif}}
+\DeclareOption{fdf2alif}{} % deprecated
+\DeclareOption{fdf2noalif}{} % deprecated
\newif\ifmirror@punct\mirror@punctfalse
\DeclareOption{mirrorpunct}{\mirror@puncttrue}
-\ExecuteOptions{novoc,fdf2alif}
+\ExecuteOptions{novoc}
\ProcessOptions
\def\ax@mode@fullvoc{fullvoc}
\def\ax@mode@voc{voc}
@@ -1383,14 +1149,14 @@ François Charette
\RequirePackage{fontspec}
\RequirePackage{bidi}
\AtBeginDocument{\ifdefined\arabicfont\relax\else
- \PackageWarning{arabxetex}{\string\arabicfont\ is not defined!^^JI will try to load Scheherazade (scaled 1.5)}%
- \newfontfamily\arabicfont[Script=Arabic,Scale=1.5]{Scheherazade}\fi}%
+ \PackageWarning{arabxetex}{\string\arabicfont\ is not defined!^^JI will try to load Amiri}%
+ \newfontfamily\arabicfont[Script=Arabic]{Amiri}\fi}%
\def\ax@trans@style{\itshape}%
\newcommand{\SetTranslitStyle}[1]{\def\ax@trans@style{#1}}
\newcommand{\SetTranslitConvention}[1]{\def\ax@trans@convention{#1}}
\def\ax@trans@convention{loc}% Library of Congress is default
-\newcommand{\SetAllahWithAlif}{\def\ax@font@allah{fdf2alif}}
-\newcommand{\SetAllahWithoutAlif}{\def\ax@font@allah{fdf2noalif}}
+\newcommand{\SetAllahWithAlif}{} % deprecated
+\newcommand{\SetAllahWithoutAlif}{} % deprecated
\def\utf@fontfeature{\ifmirror@punct\addfontfeature{Mapping=mirrorpunct}\else\relax\fi}
\def\arabtex@codes{\catcode`^=11\relax\catcode`_=11\relax}
\def\UC{\char"E000} % This is used to capitalize the following letter (ignoring
@@ -1421,12 +1187,12 @@ François Charette
\par\setRL\arabicfont\utf@fontfeature%
\else
\par\setRL\arabicfont\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-\@tempa}%
+ \addfontfeature{Mapping=arabtex-\@tempa}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\arabicfont\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-\ax@mode}%
\fi}
{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par}
\let\Arabic=\arab%
@@ -1444,12 +1210,12 @@ François Charette
\par\setRL\ax@maghribi@font\utf@fontfeature%
\else
\par\setRL\ax@maghribi@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\@tempa}%
+ \addfontfeature{Mapping=arabtex-maghribi-\@tempa}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@maghribi@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-maghribi-\ax@mode}%
\fi}
{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par}
%%%
@@ -1466,12 +1232,12 @@ François Charette
\par\setRL\ax@farsi@font\utf@fontfeature%
\else
\par\setRL\ax@farsi@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\@tempa}%
+ \addfontfeature{Mapping=arabtex-farsi-\@tempa}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@farsi@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-farsi-\ax@mode}%
\fi}
{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par}
\let\persian=\farsi
@@ -1489,12 +1255,12 @@ François Charette
\par\setRL\ax@urdu@font\addfontfeature{Language=Urdu}%Mapping=arabtex-utf}%
\else
\par\setRL\ax@urdu@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\@tempa}%
+ \addfontfeature{Mapping=arabtex-urdu-\@tempa}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@urdu@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-urdu-\ax@mode}%
\fi}
{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par}
%%%
@@ -1511,12 +1277,12 @@ François Charette
\par\setRL\ax@pashto@font\utf@fontfeature%
\else
\par\setRL\ax@pashto@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\@tempa}%
+ \addfontfeature{Mapping=arabtex-pashto-\@tempa}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@pashto@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-pashto-\ax@mode}%
\fi}
{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par}
%%%
@@ -1533,12 +1299,12 @@ François Charette
\par\setRL\ax@sindhi@font\addfontfeature{Language=Sindhi}%Mapping=arabtex-utf}%
\else
\par\setRL\ax@sindhi@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\@tempa,Language=Sindhi}%
+ \addfontfeature{Mapping=arabtex-sindhi-\@tempa,Language=Sindhi}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@sindhi@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\ax@mode,Language=Sindhi}%
+ \addfontfeature{Mapping=arabtex-sindhi-\ax@mode,Language=Sindhi}%
\fi}
{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par}
%%%
@@ -1555,12 +1321,12 @@ François Charette
\par\setRL\ax@ottoman@font\utf@fontfeature%
\else
\par\setRL\ax@ottoman@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\@tempa}%
+ \addfontfeature{Mapping=arabtex-turk-\@tempa}%
\fi%\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@ottoman@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-turk-\ax@mode}%
\fi}
{%\ifx\@tempa\ax@mode@trans\relax\else
\unsetRL%\fi
@@ -1578,7 +1344,7 @@ François Charette
\par\setRL\ax@kurdish@font\addfontfeature{Language=Kurdish}%Mapping=arabtex-utf}%
\else
\par\setRL\ax@kurdish@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-kurdish,Language=Kurdish}%
+ \addfontfeature{Mapping=arabtex-kurdish,Language=Kurdish}%
\fi}
{%\ifx\@tempa\ax@mode@trans\relax\else
\unsetRL%\fi
@@ -1591,18 +1357,18 @@ François Charette
\ifax@mode@defined%
%\ifx\@tempa\ax@mode@trans%
% \par\arabtex@codes\ax@trans@style%
- % \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-trans-\ax@trans@convention}%
+ % \addfontfeature{Mapping=arabtex-kashmiri-trans-\ax@trans@convention}%
%\else
\ifx\@tempa\ax@mode@utf%
\par\setRL\ax@kashmiri@font\utf@fontfeature%
\else
\par\setRL\ax@kashmiri@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\@tempa}%
+ \addfontfeature{Mapping=arabtex-kashmiri-\@tempa}%
\fi%\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@kashmiri@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-kashmiri-\ax@mode}%
\fi}
{%\ifx\@tempa\ax@mode@trans\relax\else
\unsetRL%\fi
@@ -1621,12 +1387,12 @@ François Charette
\par\setRL\ax@malay@font\utf@fontfeature%
\else
\par\setRL\ax@malay@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\@tempa}%
+ \addfontfeature{Mapping=arabtex-malay-\@tempa}%
\fi%\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
\par\setRL\ax@malay@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\ax@mode}%
+ \addfontfeature{Mapping=arabtex-malay-\ax@mode}%
\fi}
{%\ifx\@tempa\ax@mode@trans\relax\else
\unsetRL%\fi
@@ -1644,7 +1410,7 @@ François Charette
\par\setRL\ax@uighur@font\utf@fontfeature%
\else
\par\setRL\ax@uighur@font\arabtex@codes%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-uighur}%
+ \addfontfeature{Mapping=arabtex-uighur}%
\fi}
{%\ifx\@tempa\ax@mode@trans\relax\else
\unsetRL%\fi
@@ -1671,16 +1437,16 @@ François Charette
\ax@ismode@defined{\@tempa}%
\ifax@mode@defined%
\ifx\@tempa\ax@mode@trans%
- {\ax@trans@style\addfontfeature{Mapping=arabtex-trans-\ax@trans@convention}#2}%
+ {\ax@trans@style\addfontfeature{Mapping=arabtex-trans-\ax@trans@convention}\scantokens{#2\noexpand}}%
\else
\ifx\@tempa\ax@mode@utf%
\RL{\arabicfont\utf@fontfeature #2}%
\else
- \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-\@tempa}#2}%
+ \RL{\arabicfont\addfontfeature{Mapping=arabtex-\@tempa}\scantokens{#2\noexpand}}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-\ax@mode}#2}%
+ \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@mode}\scantokens{#2\noexpand}}%
\fi\egroup}
\newcommand\text@maghribi[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1694,11 +1460,11 @@ François Charette
\RL{\ax@maghribi@font\utf@fontfeature #2}%
\else
\RL{\ax@maghribi@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\@tempa}#2}%
+ \addfontfeature{Mapping=arabtex-maghribi-\@tempa}#2}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@maghribi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\ax@mode}#2}%
+ \RL{\ax@maghribi@font\addfontfeature{Mapping=arabtex-maghribi-\ax@mode}#2}%
\fi\egroup}
\newcommand\text@farsi[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1712,11 +1478,11 @@ François Charette
\RL{\ax@farsi@font\utf@fontfeature #2}%
\else
\RL{\ax@farsi@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\@tempa}#2}%
+ \addfontfeature{Mapping=arabtex-farsi-\@tempa}#2}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@farsi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\ax@mode}#2}%
+ \RL{\ax@farsi@font\addfontfeature{Mapping=arabtex-farsi-\ax@mode}#2}%
\fi\egroup}
\newcommand\text@urdu[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1730,11 +1496,11 @@ François Charette
\RL{\ax@urdu@font\addfontfeature{Language=Urdu}#2}%eventually Mapping=arabtex-utf
\else
\RL{\ax@urdu@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\@tempa,Language=Urdu}#2}%
+ \addfontfeature{Mapping=arabtex-urdu-\@tempa,Language=Urdu}#2}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@urdu@font\addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\ax@mode,Language=Urdu}#2}%
+ \RL{\ax@urdu@font\addfontfeature{Mapping=arabtex-urdu-\ax@mode,Language=Urdu}#2}%
\fi\egroup}
\newcommand\text@sindhi[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1748,11 +1514,11 @@ François Charette
\RL{\ax@sindhi@font\addfontfeature{Language=Sindhi} #2}%eventually Mapping=arabtex-utf
\else
\RL{\ax@sindhi@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\@tempa,Language=Sindhi}#2}%
+ \addfontfeature{Mapping=arabtex-sindhi-\@tempa,Language=Sindhi}#2}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@sindhi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\ax@mode,Language=Sindhi}#2}%
+ \RL{\ax@sindhi@font\addfontfeature{Mapping=arabtex-sindhi-\ax@mode,Language=Sindhi}#2}%
\fi\egroup}
\newcommand\text@pashto[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1766,11 +1532,11 @@ François Charette
\RL{\ax@pashto@font\utf@fontfeature #2}%
\else
\RL{\ax@pashto@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\@tempa}#2}%
+ \addfontfeature{Mapping=arabtex-pashto-\@tempa}#2}%
\fi\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@pashto@font\addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\ax@mode}#2}%
+ \RL{\ax@pashto@font\addfontfeature{Mapping=arabtex-pashto-\ax@mode}#2}%
\fi\egroup}
\newcommand\text@ottoman[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1785,11 +1551,11 @@ François Charette
\RL{\ax@ottoman@font\utf@fontfeature #2}%
\else
\RL{\ax@ottoman@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\@tempa}#2}%
+ \addfontfeature{Mapping=arabtex-turk-\@tempa}#2}%
\fi%\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@ottoman@font\addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\ax@mode}#2}%
+ \RL{\ax@ottoman@font\addfontfeature{Mapping=arabtex-turk-\ax@mode}#2}%
\fi\egroup}
\newcommand\text@kurdish[2][]{%
\edef\@tempa{#1}%
@@ -1802,7 +1568,7 @@ François Charette
\RL{\ax@kurdish@font\utf@fontfeature #2}%
\else
\RL{\ax@kurdish@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-kurdish,Language=Kurdish}#2}%
+ \addfontfeature{Mapping=arabtex-kurdish,Language=Kurdish}#2}%
\fi%\fi
\egroup}
\newcommand\text@kashmiri[2][\ax@mode]{%
@@ -1818,11 +1584,11 @@ François Charette
\RL{\ax@kashmiri@font\utf@fontfeature #2}%
\else
\RL{\ax@kashmiri@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\@tempa}#2}%
+ \addfontfeature{Mapping=arabtex-kashmiri-\@tempa}#2}%
\fi%\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}%
- \RL{\ax@kashmiri@font\addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\ax@mode}#2}%
+ \RL{\ax@kashmiri@font\addfontfeature{Mapping=arabtex-kashmiri-\ax@mode}#2}%
\fi\egroup}
\newcommand\text@malay[2][\ax@mode]{%
\edef\@tempa{#1}%
@@ -1837,11 +1603,11 @@ François Charette
\RL{\ax@malay@font\utf@fontfeature #2}%
\else
\RL{\ax@malay@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\@tempa}#2}%
+ \addfontfeature{Mapping=arabtex-malay-\@tempa}#2}%
\fi%\fi
\else
\PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}%
- \RL{\ax@malay@font\addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\ax@mode}#2}%
+ \RL{\ax@malay@font\addfontfeature{Mapping=arabtex-malay-\ax@mode}#2}%
\fi\egroup}
\newcommand\text@uighur[2][]{%
\edef\@tempa{#1}%
@@ -1854,12 +1620,12 @@ François Charette
\RL{\ax@uighur@font\utf@fontfeature #2}%
\else
\RL{\ax@uighur@font%
- \addfontfeature{Mapping=arabtex-\ax@font@allah-uighur}#2}%
+ \addfontfeature{Mapping=arabtex-uighur}#2}%
\fi%\fi
\egroup}
%
\newcommand{\textLR}[1]{\LR{\rmfamily #1}}
-\newcommand{\aemph}[1]{%
+\providecommand*{\aemph}[1]{%
\edef\@tempb{\expandafter\noexpand\csname text\ax@lang\endcsname}%
$\overline{\text{\@tempb{#1}}}$}
% \end{macrocode}
@@ -1879,8 +1645,6 @@ François Charette
% ^^A- hamza directly above baseline (for Qur'an) : 0654 is too high!
% ^^A \def\hamzaB{\raisebox[-1ex]{\char"0654} is ok
% ^^A
-% ^^A- U+FDF2: codify the LLAH ligature as well?
-% ^^A Perhaps the FALILLAH ligature could be added as well?
%
% ^^A\clearpage
% ^^A\PrintChanges
@@ -1894,16 +1658,16 @@ François Charette
%<*dtx-style>
% \begin{macrocode}
\ProvidesPackage{arabxetex-dtx-style}
-\usepackage{fontspec,xltxtra}
+\usepackage[silent]{fontspec}
+\usepackage{hologo}
\usepackage{array,supertabular,xspace,multicol,fancyvrb,paralist}
-\usepackage[voc]{arabxetex}
-\usepackage[dvipdfm]{color}
+\usepackage{color}
\definecolor{myblue}{rgb}{0.02,0.04,0.48}
\definecolor{myred}{rgb}{0.65,0.04,0.07}
\definecolor{darkgray}{gray}{0.3}
\definecolor{lightgray}{gray}{0.6}
\definecolor{IslamicGreen}{rgb}{0,.43,0}
-\usepackage[dvipdfm,
+\usepackage[
bookmarks=true,
colorlinks=true,
linkcolor=myblue,
@@ -1912,11 +1676,12 @@ François Charette
hyperindex=false,
hyperfootnotes=false,
pdftitle={The ArabXeTeX package},
- pdfauthor={F Charette <firmicus@gmx.net>},
+ pdfauthor={F Charette <firmicus04@gmail.com>},
pdfsubject={An ArabTeX-like interface for typesetting languages in Arabic script with XeLaTeX},
pdfkeywords={ArabTeX, XeTeX, XeLaTeX, Arabic, Maghribi, Persian, Farsi, Urdu, Sindhi,
Pashto, Turkish, Ottoman, Kurdish, Kashmiri, Malay, Jawi, Uighur}
]{hyperref}
+\usepackage[voc]{arabxetex}
% NB some of this preamble is taken or adapted from fontspec-doc-style.sty
\newcommand*\pkg[1]{\textsf{#1}}
\def\eg{\textit{e.g.,}\xspace}
@@ -1925,19 +1690,13 @@ François Charette
\def\Eg{\textit{E.g.,}\xspace}
\def\Ie{\textit{I.e.,}\xspace}
\def\etc{\@ifnextchar.{\textit{etc}}{\textit{etc.}\@\xspace}}
-
+\def\eTeX{\hologo{eTeX}}
\newlength{\oldparindent}
\newcommand{\parindentoff}{\setlength{\oldparindent}{\parindent} \setlength{\parindent}{0pt}}
\newcommand{\parindenton}{\setlength{\parindent}{\oldparindent}}
-%% LOGOS, tuned for Palatino:
-\makeatletter
-\TeX@logo@spacing{-0.12em}{-0.12em}%
- {0.5ex}{-0.3em}{-0.12em}{-0.1em}
-\makeatother
\def\arabxetex{Arab\XeTeX}
\def\arabtex{Arab\TeX}
-\def\arabxetexAr{\RL{\fontspec[Script=Arabic,Scale=1.5]{DecoType Thuluth} عرب زيتخ}}
\def\MacOSX{Mac~OS~X}
\def\ASCII{\textsc{ascii}} % ii small caps does not work with Junicode!
@@ -1965,21 +1724,15 @@ François Charette
%%%
%% fontspec declarations:
-\setromanfont[Mapping=tex-text]{Junicode}%{FPL Neu}
+\setmainfont[Ligatures=TeX]{Junicode}
\defaultfontfeatures{Scale=MatchLowercase}
-\setmonofont{Inconsolata}%{Latin Modern Typewriter Proportional}%{Luxi Mono}%{Courier New}
+\setmonofont{Consolas}%{Inconsolata}
\setsansfont{Lucida Sans Unicode}
-\newfontfamily\arabicfont[Script=Arabic,Scale=1.5]{Scheherazade}
-\newfontfamily\urdufont[Script=Arabic,Scale=1.2]{Nafees Pakistani Naskh}%Nafees Nastaleeq does not work well
-\newfontfamily\farsifont[Script=Arabic,Scale=1.33]{Farsi Simple Bold}
-\newfontfamily\lateeffont[Script=Arabic,Scale=1.5]{Lateef}
-\newfontfamily\lotusfont[Script=Arabic,Scale=1.5]{Lotus Linotype}
-\newfontfamily\arabtype[Script=Arabic,Scale=1.5]{Arabic Typesetting}
-\newfontfamily\adobearabic[Script=Arabic,Scale=1.5]{Adobe Arabic}
-\newfontfamily\tradarabic[Script=Arabic,Scale=1.5]{Traditional Arabic}
-\newfontfamily\arabesque{AGA Arabesque}
-\newfontfamily\arialuni{Arial Unicode MS}
-\newfontfamily\gentium{Gentium}
+\newfontfamily\arabicfont[Script=Arabic,Scale=1]{Amiri}
+\newfontfamily\amiriquran[Script=Arabic,Scale=1]{Amiri Quran}
+\newfontfamily\arialuni[Script=Arabic,Scale=1]{Arial Unicode MS}
+\newfontfamily\urdufont[Script=Arabic,Scale=1.2]{Hussaini Nastaleeq}
+\newfontfamily\farsifont[Script=Arabic,Scale=1.33]{IranNastaliq}
\linespread{1.05}
\frenchspacing