From ced53342f3cb2c76e09f7c7c352f47406c5676a1 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 12 May 2007 22:29:17 +0000 Subject: arabxetex 1.1 (10may07) git-svn-id: svn://tug.org/texlive/trunk@4277 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/xelatex/arabxetex/README | 2 +- .../doc/xelatex/arabxetex/arabtex-kurdish.maps | 6 +- .../texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx | 397 ++++++++++++--------- .../texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf | Bin 286083 -> 309450 bytes 4 files changed, 242 insertions(+), 163 deletions(-) (limited to 'Master/texmf-dist/doc/xelatex') diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/README b/Master/texmf-dist/doc/xelatex/arabxetex/README index ce0357d4654..8ea6b913ff2 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/README +++ b/Master/texmf-dist/doc/xelatex/arabxetex/README @@ -1,5 +1,5 @@ -------------------------- -THE ARABXETEX PACKAGE v1.0 +THE ARABXETEX PACKAGE v1.1 This package provides a convenient ArabTeX-like user-interface for typesetting languages using the Arabic script in XeLaTeX, with flexible access to font diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps b/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps index 5a990a2d077..75e4da0ebd0 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps +++ b/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps @@ -156,8 +156,8 @@ z z > U+0632 U+0651 ;;SHADDA z > U+0632 Y Y > U+0649 U+0651 ;;SHADDA Y > U+0649 -w w > U+06CB U+0651 ;;SHADDA -w > U+06CB +w w > U+0648 U+0651 ;;SHADDA +w > U+0648 y y > U+064A U+0651 ;;SHADDA y > U+064A v v > U+06A4 U+0651 ;;SHADDA @@ -221,6 +221,8 @@ c c > U+062C U+0651 ;;SHADDA c > U+062C x x > U+062E U+0651 ;;SHADDA x > U+062E +j j > U+0698 U+0651 ;;SHADDA +j > U+0698 UL h UL h > U+062E U+0651 ;;SHADDA UL h > U+062E P h P h > U+062D U+0651 ;;SHADDA diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx index 047cf0247c5..fa6f619778a 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx +++ b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx @@ -68,7 +68,7 @@ as well as an extensive collection of TECKit files % %<*readme> -------------------------- -THE ARABXETEX PACKAGE v1.0 +THE ARABXETEX PACKAGE v1.1 This package provides a convenient ArabTeX-like user-interface for typesetting languages using the Arabic script in XeLaTeX, with flexible access to font @@ -180,7 +180,7 @@ François Charette % For details on \arabtex\ and its input convention the reader is referred to % Lagally's detailed manual.\footnote{ ^^A % \url{http://129.69.218.213/arabtex/doc/arabdoc.pdf}} -% \arabxetex introduces several additions, and a few minor modifications, +% \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 -- @@ -229,7 +229,8 @@ François Charette % \section{Usage} % % For short insertions (say within a LR text), use ¦\text[option]{...}¦ -% where ¦¦ is one of the following: +% \DescribeMacro{\textarab}\DescribeMacro{\textfarsi}\marginpar{\raggedleft\small etc.} +% where ¦¦ is one of the following (alternative names are given in brackets): % \begin{compactitem}[\textbf{·}] % \item ¦arab¦ (¦Arabic¦),\footnote{ ^^A % Since the command \cmd\arabic\ is already defined in \LaTeX, we chose @@ -240,13 +241,14 @@ François Charette % \item ¦urdu¦, % \item ¦sindhi¦, % \item ¦pashto¦, -% \item ¦turk¦ (¦ottoman¦), +% \item ¦ottoman¦ (¦turk¦), % \item ¦kurdish¦, % \item ¦kashmiri¦, % \item ¦malay¦ (¦jawi¦), and % \item ¦uighur¦. % \end{compactitem} % For typesetting whole paragraphs in Arabic script, use +% \DescribeMacro{\begin\{arab\}}\DescribeMacro{\begin\{farsi\}}\marginpar{\raggedleft\small etc.} % \begin{Verbatim}[gobble=2,fontsize=\normalsize] % \begin{}[option] % ... @@ -272,8 +274,14 @@ François Charette % easy access to special glyphs and some useful features. See further below. % % Latin (LR) insertions within Arabic environment can be made by means of the -% command \cmd\textlatin¦{…}¦. Emphasis in Arabic is traditionally indicated by +% \DescribeMacro{\textroman} +% command \cmd\textroman¦{…}¦.\new{1.1}\footnote{ % +% In version 1.0 this was called \cmd\textlatin. The latter still works +% but its usage is deprecated, because \pkg{babel} defines a command +% of the same name.} +% Emphasis in Arabic is traditionally indicated by % overlining the text, and this can be achieved with the command +% \DescribeMacro{\aemph} % \cmd\aemph:\footnote{ ^^A % This macro makes use of the mathematical command \cmd\overline, % which explains why \pkg{arabxetex} requires the \pkg{amsmath} package. @@ -296,32 +304,41 @@ François Charette % \end{arab} % \end{minipage} % \medskip -% -% \textbf{Important:} \arabxetex\ requires that the user has defined an -% \cmd\arabicfont\ in the preamble. -% The recommended procedure by means of \pkg{fontspec} is to define it as follows: +% +%\subsection{Font setup} +% +% \arabxetex\ requires the user to define an \cmd\arabicfont\ in the preamble. +% \DescribeMacro{\arabicfont} +% The recommended procedure, by means of \pkg{fontspec}, is to define it as follows: % \begin{Verbatim}[gobble=2,fontsize=\normalsize] % \newfontfamily\arabicfont[Script=Arabic]{} % \end{Verbatim} -% If not, then the font \textbf{Scheherazade} (designed by Bob Halissy and -% Jonathan Kew of SIL International) is taken as default.\footnote{ ^^A +% 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 -% typesetting Sindhi and Kashmiri the font \textbf{Lateef}, available at +% 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 +% ¦\font¦, such as for example: +% \begin{Verbatim}[gobble=2,fontsize=\normalsize] +% \newfontfamily\urdufont[Script=Arabic]{Nafees Pakistani Naskh} +% \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, +% and the \cmd\arabicfont\ if not. In the same manner one can define +% \cmd\maghribifont, \cmd\ottomanfont, \cmd\uighurfont, etc. % -% \textbf{NB:} In a later version we may define more general and flexible font commands, -% perhaps by having individual font families for each language (\cmd\farsifont, -% \cmd\urdufont, etc.) % -% ^^A¦TODO:¦ Include links to other open source, freeware and commercial Arabic fonts available. -% ^^A see appendix % % % \subsection{Examples} % -% \texttt{THIS SECTION IS INCOMPLETE} -% % \subsubsection{Contextual analysis of \textit{hamza}} +% +% As with \arabtex, a contextual analysis of the input encoding is performed +% (at the font-mapping level) to automatically determine the carrier of the +% \textit{hamza}, as illustrated by the following examples: % % \begin{Verbatim}[gobble=2,fontsize=\normalsize] % \begin{arab} @@ -370,29 +387,32 @@ François Charette % constructs should be added in later versions. % % \subsubsection{Typesetting the Holy Qurʾān} +% +% High-quality typesetting of the Holy Qurʾān (\textarab{al-qur'An al-karIm}) is a +% most complex and demanding task, which probably should be left to professional +% 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. +% +% 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: % -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \begin{arab}[fullvoc] -% mina 'l-qur'Ani 'l-karImi, sUraTu 'l-ssajdaTi 15--16: -% -% 'innamA yu'minu bi-B"'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]] -% \end{arab} -% \end{Verbatim} -% +% \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: % -% 'innamA yu'minu bi-B"'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-\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]] % \end{arab} -% -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \newcommand{\hamzaB}{\char"200D\char"0640\raise-.95ex\hbox{\char"0654}\char"200D} +% % \begin{arab}[fullvoc] % sUraTu 'l-baqaraTi 71--72: % @@ -405,6 +425,15 @@ François Charette % \end{Verbatim} % % \begin{arab}[fullvoc] +% mina 'l-qur'Ani 'l-karImi, 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]] +% \end{arab} +% +% \begin{arab}[fullvoc] % sUraTu 'l-baqaraTi 71--72: % % qAla 'innahu, yaqUlu 'innahA baqaraTuN llA _dalUluN tu_tIru 'l-'ar.da wa-lA @@ -415,7 +444,9 @@ François Charette % \end{arab} % % \subsubsection{Farsi} -% These are some of the Persian examples in the \arabtex\ documentation: +% +% These are some of the Persian examples in the \arabtex\ documentation, +% typeset with the font Simple Farsi Bold: % \begin{Verbatim}[gobble=2,fontsize=\normalsize] % \begin{farsi}[voc] % _hwAb, xwI^s, _hwod, ^ceH, naH, yal_aH, _hAneH, _hAneHhA, _hAneH-hA, @@ -440,8 +471,9 @@ François Charette % % \subsubsection{Urdu} % -% Urdu example:\footnote{ ^^A -% Borrowed from \url{http://tabish.freeshell.org/u-trans/urducode.html}} +% An Urdu example, typeset with Nafees Pakistani Naskh:\footnote{ ^^A +% The example is borrowed from +% \url{http://tabish.freeshell.org/u-trans/urducode.html}} % \begin{Verbatim}[gobble=2,fontsize=\normalsize] % \begin{urdu}[novoc] % ,ham `i^sq kE mArO.n kA itnA ,hI fasAna,h ,hae @@ -464,7 +496,9 @@ François Charette % % ^^Aﻳﹷﻪ ﻛﹻﺴﲀ ﺗﹷﺼﹷﻮﹽﹸﺭ ﮨﹷﮯ ﻳﹷﻪ ﻛﹻﺴﲀ ﻓﹷﺴﺎﻧﹷﻪ ﮨﹷﮯ % ^^Aﺟﻮ ﺍﺷﻚ ﮨﹷﮯ ﺁﻧﻜﮭﻮﮞ ﻣﻴﮟ ﺗﹷﺴﺒﹻﻴﺢ ﰷ ﺩﺍﻧﺎ ﮨﹷﮯ -% +% \renewcommand{\urdufont}{\arabicfont} +% \renewcommand{\farsifont}{\arabicfont} +% % \subsection{Special considerations} % \parindenton % \subsubsection{The name of God} \label{allahliga} @@ -507,7 +541,7 @@ François Charette % (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 problem.} +% 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. @@ -518,10 +552,12 @@ François Charette % 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 -% {\adobearabic\char"FDF2}, but the user can change this by choosing one of the package options +% {\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 hope to implement a database of Arabic fonts +% \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}: @@ -584,14 +620,16 @@ François Charette % It is also planned to implement alternative transliteration conventions % for each language, as with \arabtex, \eg ZDMG, Encyclopedia Iranica, etc. % Transliteration is set in italics by default. This can be changed by declaring, e.g., -% ¦\SetTransliterationStyle{\upshape}¦. +% \DescribeMacro{\SetTranslitStyle} +% ¦\SetTranslitStyle{\upshape}¦. % To transliterate proper nouns with capitals, prefix the words to be capitalized with \cmd\UC: +% \DescribeMacro{\UC} % \begin{Verbatim}[gobble=2,fontsize=\normalsize] % \begin{arab}[trans] % al-^say_h al-`Alim \UC na.sIr \UC al-dIn \UC al-.tUsI % \end{arab} % \end{Verbatim} -% ^^A\SetTransliterationStyle{\gentium\itshape} +% ^^A\SetTranslitStyle{\gentium\itshape} % \begin{arab}[trans] % \noindent al-^say_h al-`Alim \UC na.sIr \UC al-dIn \UC al-.tUsI % \end{arab} @@ -604,7 +642,7 @@ François Charette % ^^AThe above example was set in Gentium (since FPL Neu does not provide all % ^^Arequired glyphs) If your default roman font does not have the required % ^^Adiacritics, you can declare for instance -% ^^A¦\SetTransliterationStyle{\fontspec{Gentium}\itshape}¦. +% ^^A¦\SetTranslitStyle{\fontspec{Gentium}\itshape}¦. % % ^^A\section{TODO} % ^^A @@ -662,14 +700,14 @@ François Charette % %Custom macros to enter variants, additions, omissions, illegible passages, % % text above the line, marginal notes, lacunae, and restorations: % \newcommand{\VAR}[2]{\Anote{\textarab{#1}}{\textarab{#2}}} -% \newcommand{\ADD}{\textlatin{\textbf{+}}\,}% or \textarab{zAyid fI}\ -% \newcommand{\OM}{\textlatin{\textbf{\char"2013}}\,}% or \textarab{nAqi.s fI}\ +% \newcommand{\ADD}{\textroman{\textbf{+}}\,}% or \textarab{zAyid fI}\ +% \newcommand{\OM}{\textroman{\textbf{\char"2013}}\,}% or \textarab{nAqi.s fI}\ % \newcommand{\ILLEG}{\textarab{.gayr maqrU' fI}\ } % \newcommand{\BLANK}{\textarab{bayA.d fI}\ } % \newcommand{\SUPERLIN}{\textarab{ta.ht al-sa.tr fI}\ } % \newcommand{\MARG}{\textarab{bi-al-hAmi^s fI}\ } -% \newcommand{\LACUNA}{\textlatin{\textlangle~{\dots}~\textrangle}} -% \newcommand{\RESTOR}[1]{\textlatin{\textrangle}#1\textlatin{\textlangle}} +% \newcommand{\LACUNA}{\textroman{\textlangle~{\dots}~\textrangle}} +% \newcommand{\RESTOR}[1]{\textroman{\textrangle}#1\textroman{\textlangle}} % % to separate lemmas in different manuscripts: % \def\SEP{\enskip$\Vert$\enskip} % \end{Verbatim} @@ -766,8 +804,8 @@ François Charette % ^^A¦.i¦ & \GN{B.i}{}&&&&&&&&&\\ % ¦_i¦ & \GR{B_i}{0656}&&&&&&&&&\\ % ^^A¦:i¦ & \GN{B:i}{}&&&&&&&&&\\ -% ¦j¦ & \GR{j}{062C}&\GG{j}&\GG{j}&\GG{j}&\GG{j}&\GN[turk]{j}{0698}&\GG{j}&\GG{j}&\GG{j}&\GG{j} \\ -% ¦:j¦ & &&&&\GR[sindhi]{:j}{0684}&&&&&\\ ^^A(sindhi) +% ¦j¦ & \GR{j}{062C}&\GG{j}&\GG{j}&\GG{j}&\GG{j}&\GN[turk]{j}{0698}&\GN[kurdish]{j}{0698}&\GG{j}&\GG{j}&\GG{j} \\ +% ¦:j¦ & &&&&\GR[sindhi]{:j}{0684}&&&&&\\ ^^A(sindhi) % ¦jh¦ & &&&&\GN[sindhi]{jh}{06A9}&&&&&\\ % ¦k¦ & \GR{k}{0643}&\GG{k}&\GG{k}&\GG{k}&\GN[sindhi]{k}{06AA}&\GG{k}&\GG{k}&\GG{k}&\GG{k}&\GG{k} \\ % ^^A¦K¦ & \GN{K}{}&&&&&&&&&\\ @@ -808,7 +846,7 @@ François Charette % ¦.r¦ & \GV{.r}{0694*}&&&&&&\GN[kurdish]{.r}{0695}&&&\\ % ¦,r¦ & &&\GR[urdu]{,r}{0691}&\GN[pashto]{,r}{0693}&\GN[sindhi]{,r}{0699}&&\GN[kurdish]{,r}{0694*}&&&\\ % ¦^r¦ & \GV{^r}{06EF*}&&&&&&\GN[kurdish]{^r}{0692*}&&&\\ -% ¦:r¦ & \GV{:r}{0697*}$^c$&&&&&&&&&\\ ^^ADarwa in Dagestan +% ¦:r¦ & \GV{:r}{0697*}$^c$&&&&&&&&&\\ ^^ADargwa in Dagestan % ¦s¦ & \GR{s}{0633}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s} \\ % ^^A¦S¦ & \GN{S}{}&&&&&&&&&\\ % ¦.s¦ & \GR{.s}{0635}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\\ @@ -860,15 +898,15 @@ François Charette % % $^a$ For Western Punjabi (Lahnda).\\ % $^b$ Alternative form of \textmalay{g} in Malay.\\ -% $^c$ For Darwa (language of Dagestan).\\ +% $^c$ For Dargwa (language of Dagestan).\\ % $^d$ For Kirgiz (and Uighur).\\ % $^e$ To transliterate dialects and foreign words.\\ % $^f$ Alternative to ¦_d¦.\\ % \normalsize\bigskip % % Maghribi Arabic is identical to Arabic except for the three letters ¦f¦, ¦q¦ -% and ¦v¦ which yield the glyphs \textmaghribi{f} (U+06A2), \textmaghribi{q} -% (U+06A7), and \textmaghribi{v} (U+06A5), respectively. +% and ¦v¦ which yield the glyphs \textmaghribi{f} (\textsf{U+06A2}), \textmaghribi{q} +% (\textsf{U+06A7}), and \textmaghribi{v} (\textsf{U+06A5}), respectively. % % ^^A TODO : implement the following ?? % ^^A perhaps unnecessary coz it can be coded by means of Urdu @@ -1219,7 +1257,7 @@ François Charette % % \item ‘Adobe Arabic’ % -% \item Free fonts from \href{http://www.arabeyes.org}{Arabeyes.org}: +% \item Free fonts from \href{http://www.arabeyes.org}{Arabeyes.org} % % \item \ldots % @@ -1238,9 +1276,9 @@ François Charette % % \item Commercial fonts by vendors: % \begin{compactitem}[\textbf{--}] -% \item Linotype GmbH: -% \item AGFA Monotype: -% \item ParaType: +% \item Linotype GmbH: \ldots +% \item AGFA Monotype: \ldots +% \item ParaType: \ldots % \item \ldots % \end{compactitem} % \end{compactitem} @@ -1288,10 +1326,10 @@ François Charette % % \item Garava: \url{http://www.aimwell.org/Fonts/fonts.html} % -% \item Verajja (based on Bitstream Vera Sans, so very similar to DejaVu Sans): +% \item Verajja (based on Bitstream Vera Sans, so very similar to DejaVu Sans): % \url{http://www.aimwell.org/Fonts/fonts.html} % -% \item Legendum (by Rogier van Dalen): \url{http://home.kabelfoon.nl/~slam/fonts/fonts.html} +% \item Legendum: \url{http://home.kabelfoon.nl/~slam/fonts/fonts.html} % % \item Code2000 (shareware): \url{http://www.code2000.net} % \end{compactitem} @@ -1304,7 +1342,7 @@ François Charette % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{arabxetex} - [2007/04/14 v1.0 ArabTeX-like interface for XeLaTeX] + [2007/05/10 v1.1 ArabTeX-like interface for XeLaTeX] % \DeclareOption{fullvoc}{\def\ax@mode{fullvoc}} \DeclareOption{voc}{\def\ax@mode{voc}} @@ -1332,14 +1370,29 @@ François Charette \RequirePackage{amsmath}%because of macro \overline used in \aemph \RequirePackage{fontspec} \AtBeginDocument{\ifdefined\arabicfont\relax\else% - \newfontfamily\arabicfont[Script=Arabic,Scale=2]{Scheherazade}\fi}% + \PackageWarning{arabxetex}{\arabicfont is not defined! I will try to load Scheherazade}% + \newfontfamily\arabicfont[Script=Arabic,Scale=2]{Scheherazade}\fi + }% \def\ax@trans@style{\itshape}% -\newcommand{\SetTransliterationStyle}[1]{\def\ax@trans@style{#1}} +\newcommand{\SetTranslitStyle}[1]{\def\ax@trans@style{#1}} \newcommand{\SetAllahWithAlif}{\def\ax@font@allah{fdf2alif}} \newcommand{\SetAllahWithoutAlif}{\def\ax@font@allah{fdf2noalif}} \def\arabtex@codes{\catcode`^=11\relax\catcode`_=11\relax} -\def\UC{\char"E000} % this is used to capitalize the following letter (ignoring article al-) in transliteration -%%% +\def\UC{\char"E000} % This is used to capitalize the following letter (ignoring + % article al-) in transliteration mode +%%%Font setup +\def\ax@farsi@font{\ifdefined\farsifont\farsifont\else\arabicfont\fi} +\def\ax@urdu@font{\ifdefined\urdufont\urdufont\else\arabicfont\fi} +\def\ax@pashto@font{\ifdefined\pashtofont\pashtofont\else\arabicfont\fi} +\def\ax@maghribi@font{\ifdefined\maghribifont\maghribifont\else\arabicfont\fi} +\def\ax@sindhi@font{\ifdefined\sindhifont\sindhifont\else\arabicfont\fi} +\def\ax@kashmiri@font{\ifdefined\kashmirifont\kashmirifont\else\arabicfont\fi} +\def\ax@ottoman@font{\ifdefined\ottomanfont\ottomanfont\else\arabicfont\fi} +\def\ax@kurdish@font{\ifdefined\kurdishfont\kurdishfont\else\arabicfont\fi} +\def\ax@malay@font{\ifdefined\malayfont\malayfont\else\arabicfont\fi} +\def\ax@uighur@font{\ifdefined\uighurfont\uighurfont\else\arabicfont\fi} +\def\ax@urdu@font{\ifdefined\urdufont\urdufont\else\arabicfont\fi} + \newenvironment{arab}[1][\ax@mode]% {\edef\@tempa{#1}% \def\ax@lang{arab}% @@ -1356,7 +1409,7 @@ François Charette \addfontfeature{Mapping=arabtex-\ax@font@allah-\@tempa}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% \par\setRL\arabicfont\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-\ax@mode}% \fi} @@ -1373,14 +1426,14 @@ François Charette \addfontfeature{Mapping=arabtex-trans}% \else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@maghribi@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@maghribi@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\@tempa}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} @@ -1395,14 +1448,14 @@ François Charette \addfontfeature{Mapping=arabtex-farsi-trans}% \else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@farsi@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@farsi@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\@tempa}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} @@ -1418,14 +1471,14 @@ François Charette \addfontfeature{Mapping=arabtex-urdu-trans}% \else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Language=Urdu}%Mapping=arabtex-utf}% + \par\setRL\ax@urdu@font\addfontfeature{Language=Urdu}%Mapping=arabtex-utf}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@urdu@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\@tempa}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} @@ -1440,14 +1493,14 @@ François Charette \addfontfeature{Mapping=arabtex-pashto-trans}% \else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@pashto@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@pashto@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\@tempa}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} @@ -1462,21 +1515,21 @@ François Charette \addfontfeature{Mapping=arabtex-sindhi-trans}% \else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Language=Sindhi}%Mapping=arabtex-utf}% + \par\setRL\ax@sindhi@font\addfontfeature{Language=Sindhi}%Mapping=arabtex-utf}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@sindhi@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\@tempa,Language=Sindhi}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} %%% -\newenvironment{turk}[1][\ax@mode]% +\newenvironment{ottoman}[1][\ax@mode]% {\edef\@tempa{#1}% -\def\ax@lang{turk}% +\def\ax@lang{ottoman}% \ax@ismode@defined{\@tempa}% \ifax@mode@defined% %\ifx\@tempa\ax@mode@trans% @@ -1484,20 +1537,20 @@ François Charette % \addfontfeature{Mapping=arabtex-turk-trans}% %\else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@ottoman@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@ottoman@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\@tempa}% \fi%\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {%\ifx\@tempa\ax@mode@trans\relax\else \unsetRL%\fi \par} -\let\ottoman=\turk +\let\turk=\ottoman %%% \newenvironment{kurdish}[1][]% {\def\ax@lang{kurdish}% @@ -1507,9 +1560,9 @@ François Charette % \addfontfeature{Mapping=arabtex-kurdish-trans}% %\else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Language=Kurdish}%Mapping=arabtex-utf}% + \par\setRL\ax@kurdish@font\addfontfeature{Language=Kurdish}%Mapping=arabtex-utf}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@kurdish@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-kurdish,Language=Kurdish}% \fi} {%\ifx\@tempa\ax@mode@trans\relax\else @@ -1526,14 +1579,14 @@ François Charette % \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-trans}% %\else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@kashmiri@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@kashmiri@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\@tempa}% \fi%\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {%\ifx\@tempa\ax@mode@trans\relax\else @@ -1550,14 +1603,14 @@ François Charette % \addfontfeature{Mapping=arabtex-malay-trans}% %\else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@malay@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@malay@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\@tempa}% \fi%\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \par\setRL\arabicfont\arabtex@codes% + \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}% \fi} {%\ifx\@tempa\ax@mode@trans\relax\else @@ -1573,9 +1626,9 @@ François Charette % \addfontfeature{Mapping=arabtex-uighur-trans}% %\else% \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% + \par\setRL\ax@uighur@font\addfontfeature{Mapping=arabicfixes}% \else% - \par\setRL\arabicfont\arabtex@codes% + \par\setRL\ax@uighur@font\arabtex@codes% \addfontfeature{Mapping=arabtex-\ax@font@allah-uighur}% \fi} {%\ifx\@tempa\ax@mode@trans\relax\else @@ -1590,8 +1643,8 @@ François Charette \def\texturdu{\bgroup\arabtex@codes\text@urdu} \def\textsindhi{\bgroup\arabtex@codes\text@sindhi} \def\textpashto{\bgroup\arabtex@codes\text@pashto} -\def\textturk{\bgroup\arabtex@codes\text@turk} -\let\textottoman=\textturk +\def\textottoman{\bgroup\arabtex@codes\text@ottoman} +\let\textturk=\textottoman \def\textkurdish{\bgroup\arabtex@codes\text@kurdish} \def\textkashmiri{\bgroup\arabtex@codes\text@kashmiri} \def\textmalay{\bgroup\arabtex@codes\text@malay} @@ -1611,7 +1664,7 @@ François Charette \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-\@tempa}#2}% \fi\fi \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-\ax@mode}#2}% \fi\egroup} \newcommand\text@maghribi[2][\ax@mode]{% @@ -1623,14 +1676,14 @@ François Charette {\ax@trans@style\addfontfeature{Mapping=arabtex-trans}#2}% \else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@maghribi@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@maghribi@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\@tempa}#2}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\ax@mode}#2}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% + \RL{\ax@maghribi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\ax@mode}#2}% \fi\egroup} \newcommand\text@farsi[2][\ax@mode]{% \edef\@tempa{#1}% @@ -1641,14 +1694,14 @@ François Charette {\ax@trans@style\addfontfeature{Mapping=arabtex-farsi-trans}#2}% \else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@farsi@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@farsi@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\@tempa}#2}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\ax@mode}#2}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% + \RL{\ax@farsi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\ax@mode}#2}% \fi\egroup} \newcommand\text@urdu[2][\ax@mode]{% \edef\@tempa{#1}% @@ -1659,14 +1712,14 @@ François Charette {\ax@trans@style\addfontfeature{Mapping=arabtex-urdu-trans}#2}% \else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Language=Urdu}#2}%eventually Mapping=arabtex-utf + \RL{\ax@urdu@font\addfontfeature{Language=Urdu}#2}%eventually Mapping=arabtex-utf \else% - \RL{\arabicfont% + \RL{\ax@urdu@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\@tempa,Language=Urdu}#2}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\ax@mode,Language=Urdu}#2}% + \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}% \fi\egroup} \newcommand\text@sindhi[2][\ax@mode]{% \edef\@tempa{#1}% @@ -1677,14 +1730,14 @@ François Charette {\ax@trans@style\addfontfeature{Mapping=arabtex-sindhi-trans}#2}% \else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Language=Sindhi} #2}%eventually Mapping=arabtex-utf + \RL{\ax@sindhi@font\addfontfeature{Language=Sindhi} #2}%eventually Mapping=arabtex-utf \else% - \RL{\arabicfont% + \RL{\ax@sindhi@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\@tempa,Language=Sindhi}#2}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\ax@mode,Language=Sindhi}#2}% + \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}% \fi\egroup} \newcommand\text@pashto[2][\ax@mode]{% \edef\@tempa{#1}% @@ -1695,18 +1748,18 @@ François Charette {\ax@trans@style\addfontfeature{Mapping=arabtex-pashto-trans}#2}% \else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@pashto@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@pashto@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\@tempa}#2}% \fi\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\ax@mode}#2}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% + \RL{\ax@pashto@font\addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\ax@mode}#2}% \fi\egroup} -\newcommand\text@turk[2][\ax@mode]{% +\newcommand\text@ottoman[2][\ax@mode]{% \edef\@tempa{#1}% - \def\ax@lang{turk}% + \def\ax@lang{ottoman}% \ax@ismode@defined{\@tempa}% \ifax@mode@defined% % UNCOMMENT when transliteration mapping is done @@ -1714,14 +1767,14 @@ François Charette % {\ax@trans@style\addfontfeature{Mapping=arabtex-turk-trans}#2}% %\else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@ottoman@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@ottoman@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\@tempa}#2}% \fi%\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\ax@mode}#2}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% + \RL{\ax@ottoman@font\addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\ax@mode}#2}% \fi\egroup} \newcommand\text@kurdish[2][]{% \edef\@tempa{#1}% @@ -1731,9 +1784,9 @@ François Charette % {\ax@trans@style\addfontfeature{Mapping=arabtex-kurdish-trans}#2}% %\else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@kurdish@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@kurdish@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-kurdish,Language=Kurdish}#2}% \fi%\fi% \egroup} @@ -1747,14 +1800,14 @@ François Charette % {\ax@trans@style\addfontfeature{Mapping=arabtex-kashmiri-trans}#2}% %\else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@kashmiri@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@kashmiri@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\@tempa}#2}% \fi%\fi% \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\ax@mode}#2}% + \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% + \RL{\ax@kashmiri@font\addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\ax@mode}#2}% \fi\egroup} \newcommand\text@malay[2][\ax@mode]{% \edef\@tempa{#1}% @@ -1766,14 +1819,14 @@ François Charette % {\ax@trans@style\addfontfeature{Mapping=arabtex-malay-trans}#2}% %\else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@malay@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@malay@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\@tempa}#2}% \fi%\fi% \else% \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\ax@mode}#2}% + \RL{\ax@malay@font\addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\ax@mode}#2}% \fi\egroup} \newcommand\text@uighur[2][]{% \edef\@tempa{#1}% @@ -1783,22 +1836,24 @@ François Charette % {\ax@trans@style\addfontfeature{Mapping=arabtex-uighur-trans}#2}% %\else% \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} + \RL{\ax@uighur@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} \else% - \RL{\arabicfont% + \RL{\ax@uighur@font% \addfontfeature{Mapping=arabtex-\ax@font@allah-uighur}#2}% \fi%\fi% \egroup} % -\newcommand{\textlatin}[1]{\LR{\rmfamily #1}} -%\newcommand{\aemph}[1]{$\overline{\text{\textarab{#1}}}$} %%TODO generalize to all languages -%% implement a parameter \ax@lang +\newcommand{\textroman}[1]{\LR{\rmfamily #1}} +\@ifpackageloaded{babel}{% + \renewcommand{\textlatin}[1]{\textroman{#1}} + \PackageWarning{babel}{You have loaded Babel. ArabXeTeX has now redefined \textlatin !}}% + {\newcommand{\textlatin}[1]{\textroman{#1}}}% \newcommand{\aemph}[1]{% \edef\@tempb{\expandafter\noexpand\csname text\ax@lang\endcsname}% $\overline{\text{\@tempb{#1}}}$} % % experimental: this surely does not work! -% this would make possible to define commands that accept args containing \arabtex@codes +% I want a mechanism to enable defining commands that accept args containing \arabtex@codes %\def\newarabxetexcommand#1#2{% % \edef\ax@tcomm@nd{\expandafter\relax\csname #1@\endcsname} % \expandafter\def\string#1{% @@ -1812,11 +1867,10 @@ François Charette % % \subsection{Some notes on the TECkit mappings} % -% \texttt{To be done \dots} -% +% \texttt{TO BE DONE \dots} % % -% ^^A\section{Recommendations to the Unicode Consortium} +% ^^A\section{Unicode Matters} ---> TODO CONTACT ROOZBEH ABOUT THIS % ^^A % ^^ASome glyphs are missing in Unicode: % ^^A @@ -1844,7 +1898,7 @@ François Charette % \begin{macrocode} \ProvidesPackage{arabxetex-dtx-style} \usepackage{fontspec,xltxtra} -\usepackage{array,supertabular,xspace,multicol,fancyvrb} +\usepackage{array,supertabular,xspace,multicol,fancyvrb,paralist} \usepackage[voc]{arabxetex} \usepackage[dvipdfm]{color} \definecolor{myblue}{rgb}{0.02,0.04,0.48} @@ -1890,6 +1944,29 @@ François Charette \def\MacOSX{Mac~OS~X} \def\ASCII{\textsc{ascii}} % ii small caps does not work with Junicode! +%% Sidenotes << copied from fontspec.dtx +\newcommand\warn[2]{% + \edef\thisversion{#1}% + \ifhmode\unskip~\fi{\ifx\thisversion\fileversion\color{red}\fi + $\leftarrow$}% + \marginpar{\raggedleft + \small% + {\ifx\thisversion\fileversion\color{red}\fi$\rightarrow$}% + \,{\notefont #1:~#2}}} + +\newcommand\new[1]{% + \edef\thisversion{#1}% + \ifhmode\unskip~\fi{\ifx\thisversion\fileversion\color{blue}\else\color[gray]{0.5}\fi + $\leftarrow$}% + \marginpar{\raggedleft + \small\ifx\thisversion\fileversion\color{blue}\else\color[gray]{0.5}\fi + $\rightarrow$\,{\notefont #1:~New!}}} + +%% Sidenote font +\newfontfamily\notefont[Scale=MatchLowercase]{Lucida Sans Unicode} + +%%% + %% fontspec declarations: \setromanfont[Mapping=tex-text]{Junicode}%{FPL Neu} \defaultfontfeatures{Scale=MatchLowercase} @@ -1899,19 +1976,19 @@ François Charette %\setboldmathrm[BoldFont=Optima ExtraBlack]{Optima Bold} %\defaultfontfeatures{Mapping=tex-text} \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\nafeesfont[Script=Arabic]{Nafees Pakistani Naskh} \newfontfamily\arabesque{AGA Arabesque} \newfontfamily\arialuni{Arial Unicode MS} \newfontfamily\gentium{Gentium} -\linespread{1.05} % Palatino needs more space between lines -\frenchspacing % Remove ugly extra space after punctuation -\usepackage{paralist} +\linespread{1.05} +\frenchspacing %\newenvironment{MYitemize}{% %\renewcommand\labelitemi{\cdot}% %\begin{list}{}{\setlength{\itemsep}{.15\parsep}}}% diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf index 4d0279aa46f..f483cf4884f 100644 Binary files a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf and b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf differ -- cgit v1.2.3