summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-03-24 21:12:01 +0000
committerKarl Berry <karl@freefriends.org>2019-03-24 21:12:01 +0000
commit78db05a5b839a72cb42fced13a31ff781776001a (patch)
tree3499f8472f405fbf52a04e5b3f63750729391d1a
parent6973e20e83544bed3652e7b57886f39a8ab60e23 (diff)
arabluatex (24mar19)
git-svn-id: svn://tug.org/texlive/trunk@50571 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdfbin666259 -> 685259 bytes
-rw-r--r--Master/texmf-dist/doc/lualatex/arabluatex/samples/al-Jahiz.pdfbin114255 -> 114234 bytes
-rw-r--r--Master/texmf-dist/doc/lualatex/arabluatex/samples/exporting.pdfbin59687 -> 59687 bytes
-rw-r--r--Master/texmf-dist/doc/lualatex/arabluatex/samples/template-01.pdfbin65223 -> 65289 bytes
-rw-r--r--Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx750
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua64
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty126
7 files changed, 483 insertions, 457 deletions
diff --git a/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf b/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf
index 0001a5502ca..5374b0aef22 100644
--- a/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf
+++ b/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/lualatex/arabluatex/samples/al-Jahiz.pdf b/Master/texmf-dist/doc/lualatex/arabluatex/samples/al-Jahiz.pdf
index f1695b85bcc..b12a86dd1c5 100644
--- a/Master/texmf-dist/doc/lualatex/arabluatex/samples/al-Jahiz.pdf
+++ b/Master/texmf-dist/doc/lualatex/arabluatex/samples/al-Jahiz.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/lualatex/arabluatex/samples/exporting.pdf b/Master/texmf-dist/doc/lualatex/arabluatex/samples/exporting.pdf
index ecfd20a2e9c..aff9bb76e24 100644
--- a/Master/texmf-dist/doc/lualatex/arabluatex/samples/exporting.pdf
+++ b/Master/texmf-dist/doc/lualatex/arabluatex/samples/exporting.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/lualatex/arabluatex/samples/template-01.pdf b/Master/texmf-dist/doc/lualatex/arabluatex/samples/template-01.pdf
index ca5411f9b93..b72fa710082 100644
--- a/Master/texmf-dist/doc/lualatex/arabluatex/samples/template-01.pdf
+++ b/Master/texmf-dist/doc/lualatex/arabluatex/samples/template-01.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx b/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx
index 959266f8f75..001f962c700 100644
--- a/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx
+++ b/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx
@@ -27,7 +27,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{arabluatex}
%<*package>
- [2019/03/22 v1.16 An ArabTeX-like interface for LuaLaTeX]
+ [2019/03/24 v1.17 An ArabTeX-like interface for LuaLaTeX]
%</package>
%
%<*driver>
@@ -151,7 +151,6 @@
\usepackage{dox}
\doxitem{Option}{option}{options}
\usepackage{fontspec}
-\usepackage{realscripts}
\usepackage{microtype}
\defaultfontfeatures{RawFeature={+liga}}
\setmainfont{Old Standard}[SmallCapsFont={Latin Modern Roman Caps},
@@ -160,7 +159,8 @@
\newunicodechar{ǧ}{ǧ} % Old Standard does not include ǧ/Ǧ
\newunicodechar{Ǧ}{Ǧ} %
\usepackage{metalogox}
-\usepackage{arabluatex}[2019/03/22]
+\usepackage{arabluatex}[2019/03/24]
+\SetArbUp{\textsuperscript{\thinspace#1}} % Old Standard needs this
\usepackage[nopar]{quran}
\usepackage[noindex]{nameauth}
\usepackage{varioref}
@@ -204,20 +204,19 @@
\usepackage{booktabs}
\usepackage[defaultlines=3,all]{nowidow}
\usepackage{needspace}
+\usepackage{addlines}
\usepackage{relsize}
\usepackage{tikz}
\usepackage[breakable, skins, xparse, minted]{tcolorbox}
-\tcbset{colback=white, boxrule=.15mm, colframe=red!50!white, left=6mm,
+\tcbset{colback=white, boxrule=.15mm, colframe=red!50!white,
breakable}
-\DeclareTCBListing{arabluacode}{s O{}}{listing engine=minted, minted
- language=latex, minted options={linenos, fontsize=\relsize{-0.5}},
- IfBooleanTF={#1}{listing side text}{#2}}
-\DeclareTCBListing{arabluaverbatim}{}{listing engine=minted, minted
- language=latex, minted options={linenos, fontsize=\relsize{-0.5}},
- listing only}
-\DeclareTotalTCBox{\arabluaverb}{v}{verbatim}{#1}
-\DeclareTotalTCBox{\arabluabox}{m}{left=0mm, right=0mm, top=0mm,
- bottom=0mm}{#1}
+\newtcbox{\arabluabox}{boxrule=.3mm, left=0mm, right=0mm, top=0mm,
+ bottom=0mm}
+\newtcblisting{example}{minted options={linenos, numbersep=0mm,
+ fontsize=\smaller}}
+\newtcblisting{code}{minted options={linenos, numbersep=0mm,
+ fontsize=\smaller}, listing
+ only}
\newcommand{\package}[1]{\textsf{#1}\index{#1=#1 (package)}}
\usepackage[contents]{colordoc}
\usepackage{csquotes}
@@ -263,7 +262,7 @@
%</driver>
% \fi
%
-% \CheckSum{932}
+% \CheckSum{919}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -506,7 +505,7 @@
% \section{The basics of \package{arabluatex}}
% \subsection{Activating \package{arabluatex}}
% \package{arabluatex} is loaded the usual way:\\
-% \arabluaverb{\usepackage{arabluatex}}\\
+% \tcboxverb{\usepackage{arabluatex}}\\
% The only requirement of \package{arabluatex} is {\LuaLaTeX};
% it will complain if the document is compiled with another
% engine. That aside, \package{arabluatex} does not load packages such
@@ -525,7 +524,7 @@
% By default, if no Arabic font is selected, \package{arabluatex} will
% issue a warning message and attempt to load the Amiri
% font\footnote{\textcite{pkg:amiri}.} like so:---\\
-% \arabluaverb{\newfontfamily\arabicfont{Amiri}[Script=Arabic]}
+% \tcboxverb{\newfontfamily\arabicfont{Amiri}[Script=Arabic]}
% \begin{quoting}
% \textsc{Rem.} By default Amiri places the \arb[trans]{kasraT} in
% combination with the \arb[trans]{ta^sdId} below the consonant,
@@ -537,7 +536,7 @@
% selecting the |ss05| feature of the Amiri font, like
% so:---\footnote{See the documentation of \package{amiri},
% \textcite[6]{pkg:amiri}.}\\
-% \arabluaverb{\newfontfamily\arabicfont{Amiri}[Script=Arabic,RawFeature={+ss05}]}
+% \tcboxverb{\newfontfamily\arabicfont{Amiri}[Script=Arabic,RawFeature={+ss05}]}
%
% Other Arabic fonts may behave differently.
% \end{quoting}
@@ -548,7 +547,7 @@
% first four of which are mutually exclusive and may be overriden at
% any point of the document (see below \vref{sec:local-options}):
%
-% \DescribeOption{voc}\hfill\arabluaverb{Default}\\ In this mode,
+% \DescribeOption{voc}\hfill\tcboxverb{Default}\\ In this mode,
% which is the one selected by default, every short vowel written
% generates its corresponding diacritical mark: \arb[trans]{.dammaT}
% (\arb{Bu}), \arb[trans]{fat.haT} (\arb{Ba}) and \arb[trans]{kasraT}
@@ -584,7 +583,7 @@
%
% \label{ref:export-global-opt}
% \DescribeOption{export} |export|$=$|true|\verb+|+|false|
-% \hfill\arabluaverb{Default: false}\\ \label{export-mode}
+% \hfill\tcboxverb{Default: false}\\ \label{export-mode}
% \NEWfeature{v.1.13} This option acts as a named argument and does
% not need a value as it defaults to |true| if it is used. It enables
% \package{arabluatex} to produce a duplicate of the original |.tex|
@@ -623,11 +622,11 @@
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
-Please note that only few Arabic fonts provide such contrivances. In
-case this feature is not supported by some Arabic font, it is
-advisable to use \cs{SetArbEasy}.
-\end{arabluacode}
+\begin{tcblisting}{text only}
+ Please note that only few Arabic fonts provide such contrivances. In
+ case this feature is not supported by some Arabic font, it is
+ advisable to use \cs{SetArbEasy}.
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -690,9 +689,10 @@ advisable to use \cs{SetArbEasy}.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
-Please note that this document is typeset with \cs{SetArbDflt} throughout.
-\end{arabluacode}
+\begin{tcblisting}{text only}
+ Please note that this document is typeset with \cs{SetArbDflt}
+ throughout.
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -704,15 +704,15 @@ Please note that this document is typeset with \cs{SetArbDflt} throughout.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-From \textcite[i. 1 A]{Wright}:--- Arabic, like Hebrew and
-Syriac, is written and read from right to left. The letters
-of the alphabet (\arb{.hurUf-u 'l-hijA'-i}, \arb{.hurUf-u
-'l-tahajjI}, \arb{al-.hurUf-u 'l-hijA'iyyaT-u}, or
-\arb{.hurUf-u 'l-mu`jam-i}) are twenty-eight in number and
-are all consonants, though three of them are also used as
-vowels (see §~3).
-\end{arabluacode}
+\begin{example}
+ From \textcite[i. 1 A]{Wright}:--- Arabic, like Hebrew and
+ Syriac, is written and read from right to left. The letters
+ of the alphabet (\arb{.hurUf-u 'l-hijA'-i}, \arb{.hurUf-u
+ 'l-tahajjI}, \arb{al-.hurUf-u 'l-hijA'iyyaT-u}, or
+ \arb{.hurUf-u 'l-mu`jam-i}) are twenty-eight in number and
+ are all consonants, though three of them are also used as
+ vowels (see §~3).
+\end{example}
% \iffalse
%</example>
% \fi
@@ -731,7 +731,7 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{enumerate}[label=\Roman*., start=16]
\item \indent\arb{fawA`ilu}*.
\begin{enumerate}[label=\arabic*.]
@@ -739,7 +739,7 @@ vowels (see §~3).
signet-ring}, ...
\end{enumerate}
\end{enumerate}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -750,11 +750,11 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
\begin{arab}
[...]
\end{arab}
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -763,7 +763,7 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{arab}
'at_A .sadIquN 'il_A ju.hA ya.tlubu min-hu .himAra-hu
li-yarkaba-hu fI safraTiN qa.sIraTiN fa-qAla la-hu:
@@ -778,7 +778,7 @@ vowels (see §~3).
'amru-ka yA .sadIqI 'a-tu.saddiqu 'l-.himAr-a
wa-tuka_d_diba-nI?}
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -810,7 +810,7 @@ vowels (see §~3).
% \Cref{tab:arabtex-consonants} gives the Arab\TeX\ equivalents for
% all of the Arabic consonants.
%
-% \needspace{7\baselineskip}
+% \addlines[2]
% \newcommand{\dmg}[1]{%
% \SetTranslitConvention{dmg}%
% \arb[trans]{#1}}
@@ -844,7 +844,6 @@ vowels (see §~3).
% \vref{ref:hamza}.} & \dmg{'u 'a 'i} &
% \loc{|'u, |'a, |'i} & \brill{|'u, |'a, |'i} & |'u| or |'a| or |'i| \\
% \arb[novoc]{b} & \dmg{b} & \loc{b} & \brill{b} & |b| \\
-% \pagebreak[1]
% \arb[novoc]{t} & \dmg{t} & \loc{t} & \brill{t} & |t| \\
% \arb[novoc]{_t} & \dmg{_t} & \loc{_t} & \brill{_t} & |_t| \\
% \arb[novoc]{j} & \dmg{j} & \loc{j} & \brill{j} & |^g| or |j| \\
@@ -959,7 +958,6 @@ vowels (see §~3).
% \Cref{tab:arabtex-long-vowels} gives the Arab\TeX\ equivalents for
% the Arabic long vowels.
%
-% \needspace{8\baselineskip}
% \begin{longtable}{lllll}
% \bottomrule
% \caption*{\Cref*{tab:arabtex-long-vowels}: Standard Arab\TeX\ (long
@@ -1057,11 +1055,11 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
However, it may be wise to always write the vowels, leaving to the
various modes provided by \package{arabluatex} to take care of
showing or not showing the vowels.
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -1363,11 +1361,11 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
Hence one should keep to this distinction and encode |'a'kulu|
\arb[voc]{'a'kulu} \arb[trans]{'a'kulu} and |'AkiluN|
\arb[voc]{'AkiluN} \arb[trans]{'AkiluN} respectively.
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -1415,7 +1413,7 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
Unlike \package{arabtex} and \package{arabxetex},
\package{arabluatex} \emph{never requires the solar letter to be
written twice}, as it automatically generates the euphonic
@@ -1423,7 +1421,7 @@ vowels (see §~3).
article be written in the assimilated form or not, e.g. |al-^sams-u|
\arb[voc]{al-^sams-u} \arb[trans]{al-^sams-u}, or |a^s-^sams-u|
\arb[voc]{a^s-^sams-u} \arb[trans]{a^s-^sams-u}.
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -1452,14 +1450,14 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
\textsc{Rem.} This particular feature must be put into operation by
the \cs{SetArbDflt*} command explicitly. See above
\vref{sec:classic-modern-typesetting} for further details. Other
kinds of assimilations, including the various cases of
\arb[trans]{'id.gAm}, will be included in \package{arabluatex}
gradually.
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -1493,11 +1491,11 @@ vowels (see §~3).
% encoded, like so:---
% \begin{enumerate}
% \item Definite article at the beginning of a sentence is encoded\\
-% \arabluaverb{al-}, or \arabluaverb{a<solar letter>-}\\ if one
+% \tcboxverb{al-}, or \tcboxverb{a<solar letter>-}\\ if one
% wishes to mark the assimilation---which is in no way required, as
% \package{arabulatex} will detect all cases of assimilation.
-% \item Definite article inside sentences is encoded\\ \arabluaverb{'l-}
-% or \arabluaverb{'<solar letter>-}.
+% \item Definite article inside sentences is encoded\\ \tcboxverb{'l-}
+% or \tcboxverb{'<solar letter>-}.
% \item In all remaining cases of elision, the \arb[trans]{'alifu
% 'l-wa.sli} is expressed by the vowel that accompanies the omitted
% \arb[trans]{hamzaT}: \meta{u, a, i}.
@@ -1941,13 +1939,13 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
This is wrong:
\begin{arab}[fullvoc]
- fa-lammA ra'aW\LRfootnote{A footnote which interferes with the
- contextual analysis.} 'l-na^gma...
+ fa-lammA ra'aW\LRfootnote{A footnote which interferes with
+ the contextual analysis.} 'l-na^gma...
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -1965,10 +1963,10 @@ vowels (see §~3).
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
-In any case, \emph{no space must be left} after or before the Arabic
-word that \cs{arbnull} is applied to.
-\end{arabluacode}
+\begin{tcblisting}{text only}
+ In any case, \emph{no space must be left} after or before the Arabic
+ word that \cs{arbnull} is applied to.
+\end{tcblisting}
% \iffalse
%</example>
% \fi%
@@ -1978,13 +1976,14 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{arab}[fullvoc]
- fa-lammA ra'aW\arbnull{'l-na^gma}\LRfootnote{A footnote which
- interferes with the contextual analysis.} 'l-na^gma...
+ fa-lammA ra'aW\arbnull{'l-na^gma}\LRfootnote{A footnote
+ which interferes with the contextual analysis.}
+ 'l-na^gma...
- qAla\LRfootnote{A footnote which interferes with the contextual
- analysis.} \arbnull{qAla}uhrub fa-lan tuqtala.
+ qAla\LRfootnote{A footnote which interferes with the
+ contextual analysis.} \arbnull{qAla}uhrub fa-lan tuqtala.
\uc{z}ayduN\arbnull{ibnu}\LRfootnote{A footnote which
interferes with the contextual analysis.}
@@ -1998,7 +1997,7 @@ word that \cs{arbnull} is applied to.
\arbnull{zayduN}ibn-u \uc{`a}mriNU.\LRfootnote{See
\vref{fn:zayd-is-son}.}
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2080,10 +2079,10 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
The \arb[trans]{'ab^gad} number for the current page (\thepage) is
\abjad{\thepage}.
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2093,8 +2092,8 @@ word that \cs{arbnull} is applied to.
%
% \subsection{Additional characters}
% \label{sec:additional-characters}
-% In the manuscripts, the unpointed letters, \arb[trans]{al-.hurUfu
-% 'l-muhmalaTu}, are sometimes further distinguished from the pointed
+% In the manuscripts, the unpointed letters, \arb[trans]{al-.hurUf-u
+% 'l-muhmalaT-u}, are sometimes further distinguished from the pointed
% by various contrivances, as explained in \textcite[i. 4
% B--C]{Wright}. One may find these letters written in a smaller size
% below the line, or with a dot or another mark below. As representing
@@ -2125,9 +2124,9 @@ word that \cs{arbnull} is applied to.
% \arb[novoc]{.f} & \dmg{.f} & \loc{.f} & \brill{.f} & |.f| \\
% \arb[novoc]{.q} & \dmg{.q} & \loc{.q} & \brill{.q} & |.q| \\
% \arb[novoc]{.k} & \dmg{.k} & \loc{.k} & \brill{.k} & |.k| \\
+% \pagebreak[1]
% \arb[novoc]{.n} & \dmg{.n} & \loc{.n} & \brill{.n} & |.n| \\
% \arb[novoc]{((} & \dmg{((} & \loc{((} & \brill{((} & |((| \\
-% \pagebreak[1]
% \arb[novoc]{))} & \dmg{))} & \loc{))} & \brill{))} & |))| \\
% \end{longtable}
%
@@ -2178,11 +2177,11 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
\begin{arabverse}[key1=value1, key2=value2, ...]
<verses>
\end{arabverse}
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -2194,7 +2193,7 @@ word that \cs{arbnull} is applied to.
% time as already seen \vref{sec:options}.
%
% \DescribeOption{width} |width|$=$\meta{length}
-% \hfill\arabluaverb{Default: 0.3\linewidth}\\ The default width of
+% \hfill\tcboxverb{Default: 0.3\linewidth}\\ The default width of
% each hemistich that the verse consists of. It may be expressed in
% any accepted unit of measurement, such as |4cm| or |2in|. However,
% one must keep in mind that the total length of the two hemistichs
@@ -2203,18 +2202,18 @@ word that \cs{arbnull} is applied to.
% hemistichs distributed on subsequent lines.
%
% \DescribeOption{gutter} |gutter|$=$\meta{width}
-% \hfill\arabluaverb{Default: 0.15 x (hemistich width)}\\ The gutter
+% \hfill\tcboxverb{Default: 0.15 x (hemistich width)}\\ The gutter
% consists of the blank space that is between the two hemistichs. By
% default, it is commensurate with the width of the hemistich, but it
% may be expressed in any accepted unit of measurement as well.
%
% \DescribeOption{metre} |metre|$=$\meta{name}
-% \hfill\arabluaverb{Default: none}\\ If the name of the metre is
+% \hfill\tcboxverb{Default: none}\\ If the name of the metre is
% expressed, it is printed after the lines and set flush left in
% |voc|, |fullvoc| and |novoc| modes or flush right in |trans| mode.
%
% \DescribeOption{delim} |delim|$=$|true|\verb+|+|false|
-% \hfill\arabluaverb{Default: false}\\ This named argument does not
+% \hfill\tcboxverb{Default: false}\\ This named argument does not
% need a value as it defaults to |true| if it is used. If so, a
% delimiter is printed between each of the hemistichs. By default, it
% is set to the \enquote*{star} character \enquote*{*}. The
@@ -2223,20 +2222,20 @@ word that \cs{arbnull} is applied to.
% default setting.
%
% \DescribeOption{utf} |utf|$=$|true|\verb+|+|false|
-% \hfill\arabluaverb{Default: false}\\ As the preceding one, this
+% \hfill\tcboxverb{Default: false}\\ As the preceding one, this
% named argument does not need a value as it defaults to |true| if it
% is used. If so, Unicode Arabic input is expected in the |arabverse|
% environment instead of \textsc{ascii} Arab\TeX\ or Buckwalter input
% schemes. See \vref{sec:unicode-input} for more details.
%
% \DescribeOption{color} |color|$=$\meta{color name}
-% \hfill\arabluaverb{Default: not set}\\
+% \hfill\tcboxverb{Default: not set}\\
% \NEWfeature{v1.13} The color in which lines of poetry are to be
% rendered.
%
% \label{ref:poetry-export}
% \DescribeOption{export} |export|$=$|true|\verb+|+|false|
-% \hfill\arabluaverb{Default: false}\\
+% \hfill\tcboxverb{Default: false}\\
% \NEWfeature{v.1.13} This named argument does not need a value as it
% defaults to |true| if it is used. If |export| is set as a global
% option as well (see above \vpageref{export-mode}), all the lines
@@ -2256,10 +2255,10 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
\cs{bayt}\marg{\arb[trans]{.sadr}}\oarg{\arb[trans]{tadwIr}}%
\marg{\arb[trans]{`ajuz}}|\\|
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -2282,12 +2281,12 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\begin{arabverse}[mode=fullvoc, width=.3\linewidth]
- \bayt{lA 'ar_A man `ahidtu fI-hA fa-'abkI 'l---}[--]{---yawma
- dalhaN wa-mA yaruddu 'l-bukA'u}\\
-\end{arabverse}
-\end{arabluacode}
+\begin{example}
+ \begin{arabverse}[mode=fullvoc, width=.3\linewidth]
+ \bayt{lA 'ar_A man `ahidtu fI-hA fa-'abkI 'l---}[--]{---yawma
+ dalhaN wa-mA yaruddu 'l-bukA'u}\\
+ \end{arabverse}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2304,12 +2303,12 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\begin{arabverse}[mode=trans, width=.4\linewidth]
- \bayt{lA 'ar_A man `ahidtu fI-hA fa-'abkI 'l---}[--]{---yawma
- dalhaN wa-mA yaruddu 'l-bukA'u}\\
-\end{arabverse}
-\end{arabluacode}
+\begin{example}
+ \begin{arabverse}[mode=trans, width=.4\linewidth]
+ \bayt{lA 'ar_A man `ahidtu fI-hA fa-'abkI 'l---}[--]{---yawma
+ dalhaN wa-mA yaruddu 'l-bukA'u}\\
+ \end{arabverse}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2320,14 +2319,15 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\begin{arabverse}[mode=fullvoc, width=.25\linewidth, gutter=1cm]
- \bayt{.gayra 'annI qad 'asta`Inu `al_A 'l-ha--}[--mmi ]{'i_dA
- _haffa bi-'l-_tawiyyi 'l-na^gA'u}\\
- \bayt{bi-zaf--UfiN ka-'anna-hA hiq--laTuN}[ 'ummu ]{ri'AliN
- dawwiyyaTuN saqfA'u}\\
-\end{arabverse}
-\end{arabluacode}
+\begin{example}
+ \begin{arabverse}[mode=fullvoc, width=.25\linewidth,
+ gutter=1cm]
+ \bayt{.gayra 'annI qad 'asta`Inu `al_A 'l-ha--}[--mmi ]{'i_dA
+ _haffa bi-'l-_tawiyyi 'l-na^gA'u}\\
+ \bayt{bi-zaf--UfiN ka-'anna-hA hiq--laTuN}[ 'ummu ]{ri'AliN
+ dawwiyyaTuN saqfA'u}\\
+ \end{arabverse}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2394,30 +2394,30 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\begin{arab}[fullvoc]
- qAla imru'u 'l-\uc{q}aysi fI mu`allaqati-hi:
-\end{arab}
+\begin{code}
+ \begin{arab}[fullvoc]
+ qAla imru'u 'l-\uc{q}aysi fI mu`allaqati-hi:
+ \end{arab}
-\begin{arabverse}[mode=fullvoc, metre={(al-.darbu 'l-_tAnI mina
- 'l-`arU.di 'l-'_Ul_A mina 'l-.tawIli)}]
- \SetArbDflt*
- \begin{linenumbers*}
- \bayt{qifA nabki min _dikr_A .habIbiN wa-manzili}{bi-saq.ti
- 'l-liw_A bayna \uc{'l-d}a_hUli fa-\uc{.h}awmali}\\
- \bayt{fa-\uc{t}U.di.ha fa-'l-\uc{m}iqrATi lam ya`fu
- rasmu-hA}{limA nasa^gat-hA min ^ganUbiN wa-^sam'ali}\\
- \bayt{tar_A ba`ara 'l-'ar'Ami fI `ara.sAti-hA}{wa-qI`Ani-hA
- ka-'anna-hu .habbu fulfuli}\\
- \bayt{ka-'annI .gadATa 'l-bayni yawma ta.hammalUA}{lad_A
- samurAti 'l-.hayyi nAqifu .han.zali}\\
- \bayt{wuqUfaN bi-hA .sa.hbI `alayya ma.tiyya-hum}{yaqUlUna lA
- tahlik 'asaN_A wa-ta^gammali}\\
- \bayt{wa-'inna ^sifA'I `abraTuN muharAqaTuN}{fa-hal `inda rasmiN
- dAsiriN min mu`awwali}\\
- \end{linenumbers*}
-\end{arabverse}
-\end{arabluaverbatim}
+ \begin{arabverse}[mode=fullvoc, metre={(al-.darbu 'l-_tAnI mina
+ 'l-`arU.di 'l-'_Ul_A mina 'l-.tawIli)}]
+ \SetArbDflt*
+ \begin{linenumbers*}
+ \bayt{qifA nabki min _dikr_A .habIbiN wa-manzili}{bi-saq.ti
+ 'l-liw_A bayna \uc{'l-d}a_hUli fa-\uc{.h}awmali}\\
+ \bayt{fa-\uc{t}U.di.ha fa-'l-\uc{m}iqrATi lam ya`fu
+ rasmu-hA}{limA nasa^gat-hA min ^ganUbiN wa-^sam'ali}\\
+ \bayt{tar_A ba`ara 'l-'ar'Ami fI `ara.sAti-hA}{wa-qI`Ani-hA
+ ka-'anna-hu .habbu fulfuli}\\
+ \bayt{ka-'annI .gadATa 'l-bayni yawma ta.hammalUA}{lad_A
+ samurAti 'l-.hayyi nAqifu .han.zali}\\
+ \bayt{wuqUfaN bi-hA .sa.hbI `alayya ma.tiyya-hum}{yaqUlUna
+ lA tahlik 'asaN_A wa-ta^gammali}\\
+ \bayt{wa-'inna ^sifA'I `abraTuN muharAqaTuN}{fa-hal `inda
+ rasmiN dAsiriN min mu`awwali}\\
+ \end{linenumbers*}
+ \end{arabverse}
+\end{code}
% \iffalse
%</example>
% \fi%
@@ -2508,12 +2508,12 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{arab}
\abraces{wa-qAla} 'inna 'abI kAna mina 'l-muqAtilaTi
wa-kAna--<--t> 'ummI min `u.zamA'i buyUti 'l-zamAzimaTi.
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -2563,12 +2563,12 @@ word that \cs{arbnull} is applied to.
%
% As regards the right-to-left codepoint, it may be either typed in
% Unicode or selected as Unicode codepoint. To that end, the \LaTeX\
-% command \arabluaverb{\symbol{"XYZT}} or its plain \TeX\ variant
-% \arabluaverb{\char"XYZT\relax} may be used, where |XYZT| are
+% command \tcboxverb{\symbol{"XYZT}} or its plain \TeX\ variant
+% \tcboxverb{\char"XYZT\relax} may be used, where |XYZT| are
% uppercase hex digits (|0| to |9| or |A| to |F|).
%
% It is also possible to use the so-called `|^^^^| notation' like so:
-% \arabluaverb{^^^^xyzt}, where |xyzt| are lowercase hex digits (|0|
+% \tcboxverb{^^^^xyzt}, where |xyzt| are lowercase hex digits (|0|
% to |9| or |a| to |f|).
%
% As regards the third argument (left-to-right rendition), it may be
@@ -2578,11 +2578,11 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
It must be noted that \cs{newarbmark} expects Arab\TeX\ input scheme
inside \cs{arb}|[trans]{}| to the exclusion of \textsf{buckwalter}
input scheme.
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi%
@@ -2593,7 +2593,7 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\SetArbDflt*
\newarbmark{sly}{\arbcolor[red]{^^^^06d6}}{}
\newarbmark{jim}{\arbcolor[red]{^^^^06da}}{}
@@ -2614,7 +2614,7 @@ word that \cs{arbnull} is applied to.
'an takrahUA ^say'aN wa-ya^g`ala 'l-l_ahu fI-hi _hayraN
ka_tIraN ((19))
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -2640,7 +2640,7 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\SetArbDflt*
\newarbmark{alifsp}{^^^^0627}{\arb[trans]{'alif} }
\newarbmark{lamsp}{^^^^0644^^^^0653}{\arb[trans]{lAm} }
@@ -2655,8 +2655,8 @@ word that \cs{arbnull} is applied to.
wa-yuqImUna 'l-.sal_aUTa wa-mimmA razaqn_a-hum
yunfiqUna~\ayah{3}
\end{arab}
-\end{arabluacode}
-\begin{arabluacode}[text only]
+\end{example}
+\begin{tcblisting}{text only}
\SetArbDflt*
\begin{arab}[trans]
min ((sUraTi \uc{'l-b}aqaraTi)):
@@ -2668,7 +2668,7 @@ word that \cs{arbnull} is applied to.
wa-yuqImUna 'l-.sal_aUTa wa-mimmA razaqn_a-hum
yunfiqUna~\ayah{3}
\end{arab}
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi
@@ -2707,7 +2707,7 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{arab}
\arbcolor[red]{al-bAbu 'l-_hAmisu} fI .tabaqAti 'l-'a.tibbA'i
'lla_dIna kAnUA mun_du zamAni \uc{^gAlInUsa} wa-qarIbaN
@@ -2722,7 +2722,7 @@ word that \cs{arbnull} is applied to.
kalAmaN kulliyyaN fI 'a_hbAri \uc{^gAlInUsa} wa-mA kAna
`alay-hi...
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -2891,11 +2891,11 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\newarbmark{Y}{^^^^0649}{}
\arb{hud\arbcolor[red]{aN\arbnull{_A}}\arbmark{Y}}
\arb[trans]{hud\arbcolor[red]{aN\arbnull{_A}}\arbmark{Y}}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2928,12 +2928,12 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\newarbmark{alifmaddahred}{^^^^0627\arbcolor[red]{^^^^0653}}%
{\arb[trans]{\arbcolor[red]{'a'\arbnull{k}}}}
\arb{\arbmark{alifmaddahred}kulu}
\arb[trans]{\arbmark{alifmaddahred}kulu}.
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2954,11 +2954,11 @@ word that \cs{arbnull} is applied to.
%\iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\newarbmark{lamshaddah}{^^^^0651}{l}
-\arb[fullvoc]{al-mu`al"\arbcolor[red]{\arbmark{lamshaddah}}.imUna}
-\arb[trans]{al-mu`al"\arbcolor[red]{\arbmark{lamshaddah}}.imUna}.
-\end{arabluacode}
+\begin{example}
+ \newarbmark{lamshaddah}{^^^^0651}{l}
+ \arb[fullvoc]{al-mu`al"\arbcolor[red]{\arbmark{lamshaddah}}.imUna}
+ \arb[trans]{al-mu`al"\arbcolor[red]{\arbmark{lamshaddah}}.imUna}.
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -2981,13 +2981,13 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\newarbmark{lnn}{^^^^0644^^^^0646^^^^0651}{n-n}
\arb[fullvoc]{fI\arbnull{al-}
\arbcolor[red]{\arbnull{al-}a}\arbmark{lnn}Asi}
\arb[trans]{fI\arbnull{al-}
\arbcolor[red]{\arbnull{al-}a}\arbmark{lnn}Asi}.
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi%
@@ -3055,10 +3055,10 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\usepackage{arabluatex}
-\SetTranslitConvention{loc}
-\end{arabluaverbatim}
+\begin{code}
+ \usepackage{arabluatex}
+ \SetTranslitConvention{loc}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -3080,10 +3080,10 @@ word that \cs{arbnull} is applied to.
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\newfontfamily\translitfont{Gentium Plus}[Ligatures=TeX]
-\SetTranslitFont{\translitfont}
-\end{arabluaverbatim}
+\begin{code}
+ \newfontfamily\translitfont{Gentium Plus}[Ligatures=TeX]
+ \SetTranslitFont{\translitfont}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -3160,14 +3160,14 @@ word that \cs{arbnull} is applied to.
%\iffalse
%<*example>
% \fi
-\begin{arabluacode}
-From \textcite[i. 23 C]{Wright}:--- If the name following
-\arb[fullvoc]{ibnuN} be that of the mother or the grandfather, the
-\arb[fullvoc]{"a} is retained; as \arb[fullvoc]{`Is_A ibnu maryama},
+\begin{example}
+ From \textcite[i. 23 C]{Wright}:--- If the name following
+ \arb[fullvoc]{ibnuN} be that of the mother or the grandfather, the
+ \arb[fullvoc]{"a} is retained; as \arb[fullvoc]{`Is_A ibnu maryama},
\enquote{Jesus the son of Mary}; \arb[fullvoc]{`ammAru ibnu
man.sUriN}, \enquote{\prname{`ammAr} the (grand)son of
\prname{man.sUr}}.
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3180,17 +3180,17 @@ From \textcite[i. 23 C]{Wright}:--- If the name following
%\iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\begin{nameauth}
- \< Hunayn & \prname{'abU zayd} & \prname{.hunayn}, \prname{{i}bn
- 'is.h_aq al-`ibAdiyy} & > %
- \< Razi & \prname{'abU bakr mu.hammad ibn zakariyyA'} &
- \prname{al-rAziyy} & > %
-\end{nameauth}
+\begin{example}
+ \begin{nameauth}
+ \< Hunayn & \prname{'abU zayd} & \prname{.hunayn}, \prname{{i}bn
+ 'is.h_aq al-`ibAdiyy} & > %
+ \< Razi & \prname{'abU bakr mu.hammad ibn zakariyyA'} &
+ \prname{al-rAziyy} & > %
+ \end{nameauth}
-On first occurrence, proper names are printed as \Hunayn, \Razi.
-Then as \Hunayn, \Razi.
-\end{arabluacode}
+ On first occurrence, proper names are printed as \Hunayn, \Razi.
+ Then as \Hunayn, \Razi.
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3234,12 +3234,12 @@ Then as \Hunayn, \Razi.
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\SetArbUp{\textsubscript{#1}}
-Arabic |dmg| transliteration for \arb{ra'aytu ^gAmi`aN
-muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
-^gAmi`aN muhaddamaTaN mi'_danatu-hu.}
-\end{arabluacode}
+\begin{example}
+ \SetArbUp{\textsubscript{#1}}
+ Arabic |dmg| transliteration for \arb{ra'aytu ^gAmi`aN
+ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
+ ^gAmi`aN muhaddamaTaN mi'_danatu-hu.}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3409,10 +3409,10 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\usepackage{arabluatex}
-\SetInputScheme{buckwalter}
-\end{arabluaverbatim}
+\begin{code}
+ \usepackage{arabluatex}
+ \SetInputScheme{buckwalter}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -3436,7 +3436,8 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
% are currently used by \package{arabluatex}. The additional
% characters that are defined in \vref{tab:additional-arabic-codings}
% are also available.
-%
+%
+% \enlargethispage{\baselineskip}
% \begin{longtable}{llllll}
% \bottomrule
% \caption*{\Cref*{tab:buckwalter-scheme}: Buckwalter scheme}
@@ -3456,6 +3457,7 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
% \endhead \footnotetext{See \vref{sec:transliteration}.}
% \label{tab:buckwalter-scheme}
% \arb[novoc]{a} & \dmg{a} & \loc{a} & \brill{a} & |A| & |A| \\
+% \pagebreak[1]
% \arb[novoc]{b} & \dmg{b} & \loc{b} & \brill{b} & |b| & |b| \\
% \arb[novoc]{t} & \dmg{t} & \loc{t} & \brill{t} & |t| & |t| \\
% \arb[novoc]{_t} & \dmg{_t} & \loc{_t} & \brill{_t} & |v| & |v| \\
@@ -3483,7 +3485,6 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
% \arb[novoc]{h} & \dmg{h} & \loc{h} & \brill{h} & |h| & |h| \\
% \arb[novoc]{w} & \dmg{w} & \loc{w} & \brill{w} & |w| & |w| \\
% \arb[novoc]{y} & \dmg{y} & \loc{y} & \brill{y} & |y| & |y| \\
-% \pagebreak
% \arb[novoc]{Y} & \dmg{Y} & \loc{Y} & \brill{Y} & |Y| & |Y| \\
% \arb[novoc]{T} & \dmg{aT} & \loc{aT} & \brill{aT} & |p| & |p| \\
% \midrule
@@ -3566,11 +3567,11 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
\begin{txarab}
<Unicode Arabic text>
\end{txarab}
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -3608,16 +3609,16 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\renewcommand{\footnoterule}%
- {\hfill\noindent\rule[1mm]{.4\textwidth}{.15mm}}
-\begin{arab}
-'inna 'abI kAna mina 'l-muqAtilaT-i\footnote{al-muqAtilaT-i:
-al-muqAtil-Ina.}, wa-kAnat 'ummI min `u.zamA'-i buyUt-i
-'l-zamAzimaT-i\footnote{al-zamAzimaT-u: .tA'ifaT-u mina
-'l-furs-i.}.
-\end{arab}
-\end{arabluacode}
+\begin{example}
+ \renewcommand{\footnoterule}%
+ {\hfill\noindent\rule[1mm]{.4\textwidth}{.15mm}}
+ \begin{arab}
+ 'inna 'abI kAna mina 'l-muqAtilaT-i\footnote{al-muqAtilaT-i:
+ al-muqAtil-Ina.}, wa-kAnat 'ummI min `u.zamA'-i buyUt-i
+ 'l-zamAzimaT-i\footnote{al-zamAzimaT-u: .tA'ifaT-u mina
+ 'l-furs-i.}.
+ \end{arab}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3650,7 +3651,7 @@ al-muqAtil-Ina.}, wa-kAnat 'ummI min `u.zamA'-i buyUt-i
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{arab}[fullvoc]
\uc{z}ayd-uN\arbnull{ibnu}\LRfootnote{%
\enquote{\arb[trans]{\uc{z}ayd} is the son of
@@ -3658,7 +3659,7 @@ al-muqAtil-Ina.}, wa-kAnat 'ummI min `u.zamA'-i buyUt-i
apposition to the first, but forms part of the
predicate\ldots} \arbnull{zayduN}ibn-u \uc{`a}mr-iNU
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3669,7 +3670,7 @@ al-muqAtil-Ina.}, wa-kAnat 'ummI min `u.zamA'-i buyUt-i
% number 18, one may get 81. \package{arabluatex} is not responsible
% for that, but should it happen, it may be necessary to redefine in
% the preamble the \LaTeX\ macro \cs{thefootnote} like so:---\\
-% \arabluaverb{\renewcommand*{\thefootnote}{\textsuperscript{\LR{\arabic{footnote}}}}}
+% \tcboxverb{\renewcommand*{\thefootnote}{\textsuperscript{\LR{\arabic{footnote}}}}}
% \DescribeMacro{\FixArbFtnmk} Another solution is to put in the
% preamble, below the line that loads \package{arabluatex}, the
% \cs{FixArbFtnmk} command. However, for more control over the layout
@@ -3694,14 +3695,14 @@ al-muqAtil-Ina.}, wa-kAnat 'ummI min `u.zamA'-i buyUt-i
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\setRL
-\section*{\arb{barzawayhi li-buzurjumihra bn-i 'l-buxtikAni}}
-\setLR
-\begin{arab}
-qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
-\end{arab}
-\end{arabluacode}
+\begin{example}
+ \setRL
+ \section*{\arb{barzawayhi li-buzurjumihra bn-i 'l-buxtikAni}}
+ \setLR
+ \begin{arab}
+ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
+ \end{arab}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3716,7 +3717,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% in its argument which \package{arabluatex} will process as such
% before passing it on to the command itself for any further
% processing. As a result of this feature, such a command as:\\
-% \arabluaverb{\newcommand{\fvarabic}[1]{\arb[fullvoc]{#1}}}\\
+% \tcboxverb{\newcommand{\fvarabic}[1]{\arb[fullvoc]{#1}}}\\
% will work as expected, but will always output non-vocalized Arabic
% if it is inserted in a |novoc| Arabic environment because its
% argument will have been processed by the |novoc| rules before the
@@ -3729,7 +3730,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% argument a comma-separated list of commands each of which must be
% stripped of its leading character
% |\|, like so:---\\
-% \arabluaverb{\MkArbBreak{onecmd, anothercmd, yetanothercmd, ...}}
+% \tcboxverb{\MkArbBreak{onecmd, anothercmd, yetanothercmd, ...}}
%
% For example, here follows a way to define a new command |\fvred| to
% distinguish words with a different color and always print them in
@@ -3737,15 +3738,15 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\MkArbBreak{fvred}
\newcommand{\fvred}[1]{\arbcolor[red]{\arb[fullvoc]{#1}}}
-\begin{arab}[voc]
- _tumma "intalaqa _dU 'l-qarn-ayni 'il_A 'ummaT-iN 'u_hr_A fI
- \fvred{((ma.tli`-i 'l-^sams-i))} wa-lA binA'-a la-hum
- yu'amminu-hum mina 'l-^sams-i.
-\end{arab}
-\end{arabluacode}
+ \begin{arab}[voc]
+ _tumma "intalaqa _dU 'l-qarn-ayni 'il_A 'ummaT-iN 'u_hr_A fI
+ \fvred{((ma.tli`-i 'l-^sams-i))} wa-lA binA'-a la-hum
+ yu'amminu-hum mina 'l-^sams-i.
+ \end{arab}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3783,35 +3784,34 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}[text only]
+\begin{tcblisting}{text only}
It must be noted that \cs{MkArbBreak*} must be used with the utmost
care and \emph{should never be used} if \cs{MkArbBreak} gives
satisfaction. At any rate, the latter must always be tested before
the former.
-\end{arabluacode}
+\end{tcblisting}
% \iffalse
%</example>
% \fi%
-%
%
% \subsection{Environments}
% \label{sec:environments}
% \changes{v1.5}{2016/11/14}{Environments may be nested inside the
% \texttt{arab} environment}
% \NEWfeature{v1.5} Environments such as
-% \arabluaverb{\begin{quote}... \end{quote}} may be nested inside the
+% \tcboxverb{\begin{quote} ... \end{quote}} may be nested inside the
% |arab| environment. Up to one optional argument may be passed to
% each nested environment, like so:---
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\begin{arab}
- \begin{<environment>}[<options>]
- <Arabic text>
- \end{<environment>}
-\end{arab}
-\end{arabluaverbatim}
+\begin{code}
+ \begin{arab}
+ \begin{<environment>}[<options>]
+ <Arabic text>
+ \end{<environment>}
+ \end{arab}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -3820,7 +3820,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\setquotestyle{arabic}
\begin{arab}[fullvoc]
kAna \uc{'abU} \uc{'l-hu_dayli} 'ahd_A 'il_A \uc{muwaysiN}
@@ -3841,7 +3841,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
fa-lA yazAlu fI h_a_dA wa-'l-'A_haru ya.d.haku .da.hkaN
na`rifu-hu na.hnu wa-lA ya`rifu-hu \uc{'abU} \uc{'l-hu_dayli}.
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3859,18 +3859,18 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
- \setRL\paragraph{\arb[novoc]{rumUzi 'l-kitAbi}}\setLR
- \begin{arab}[novoc]
- \begin{description}
- \item[b] max.tU.tu 'l-maktabaTi 'l-'ahliyyaTi bi-\uc{bArIs} 2860
- `arabiyyuN.
- \item[s] max.tU.tu 'l-maktabaTi 'l-'ahliyyaTi bi-\uc{bArIs} 2859
- `arabiyyuN.
- \item[m] max.tU.tu majlisi \arb[novoc]{^sUrAY malY} .tahrAna 521.
- \end{description}
- \end{arab}
-\end{arabluacode}
+\begin{example}
+ \setRL\paragraph{\arb[novoc]{rumUzi 'l-kitAbi}}\setLR
+ \begin{arab}[novoc]
+ \begin{description}
+ \item[b] max.tU.tu 'l-maktabaTi 'l-'ahliyyaTi bi-\uc{bArIs} 2860
+ `arabiyyuN.
+ \item[s] max.tU.tu 'l-maktabaTi 'l-'ahliyyaTi bi-\uc{bArIs} 2859
+ `arabiyyuN.
+ \item[m] max.tU.tu majlisi \arb[novoc]{^sUrAY malY} .tahrAna 521.
+ \end{description}
+ \end{arab}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3880,7 +3880,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\setRL\centerline{\arb{\textbf{al-qAnUnu fI 'l-.tibbi}}}\setLR
\begin{arab}
\begin{itemize}
@@ -3895,7 +3895,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
\end{itemize}
\end{itemize}
\end{arab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3908,14 +3908,14 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
% preamble:---
\usepackage{enumitem}
\newlist{enumabjad}{enumerate}{10}
\setlist[enumabjad]{nosep, label={\abjad{\arabic*}}}
\usepackage{multicol}
-\end{arabluaverbatim}
-\begin{arabluacode}
+\end{code}
+\begin{example}
From \textcite[i. 29 B--C]{Wright}:--- The derived forms of the
triliteral verb are usually reckoned fifteen in number, but the
learner may pass over the last four, because (with the exception
@@ -3942,7 +3942,7 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
\end{enumabjad}
\end{arab}
\end{multicols}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -3957,10 +3957,10 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\usepackage[french]{babel}
-\frenchsetup{StandardLists=true}
-\end{arabluaverbatim}
+\begin{code}
+ \usepackage[french]{babel}
+ \frenchsetup{StandardLists=true}
+\end{code}
% \iffalse
%</example>
% \fi%
@@ -3978,12 +3978,12 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\usepackage{csquotes}
-\DeclareQuoteStyle{arabic}
-{\textquotedblright}{\textquotedblleft}
-{\textquoteright}{\textquoteleft}
-\end{arabluaverbatim}
+\begin{code}
+ \usepackage{csquotes}
+ \DeclareQuoteStyle{arabic}
+ {\textquotedblright}{\textquotedblleft}
+ {\textquoteright}{\textquoteleft}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -3991,14 +3991,14 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\setquotestyle{arabic}
-\begin{arab}
- fa-qAla la-hu ju.hA: \enquote{.garIb-uN 'amru-ka yA .sadIqI
- 'a-tu.saddiqu 'l-.himAr-a wa-tuka_d_diba-nI?}
-\end{arab}
-\setquotestyle{english}
-\end{arabluacode}
+\begin{example}
+ \setquotestyle{arabic}
+ \begin{arab}
+ fa-qAla la-hu ju.hA: \enquote{.garIb-uN 'amru-ka yA .sadIqI
+ 'a-tu.saddiqu 'l-.himAr-a wa-tuka_d_diba-nI?}
+ \end{arab}
+ \setquotestyle{english}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -4022,24 +4022,24 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
-\begin{arab}
- \textcolor{red}{\uc{m}uha_d_dabu \uc{'l-d}Ini \uc{`a}bdu
- \uc{'l-r}a.hImi bnu \uc{`a}liyyiN} huwa ^say_hu-nA 'l-'imAmu
- 'l-.sadru 'l-kabIru 'l-`Alimu 'l-fA.dilu \uc{m}uha_d_dabu
- \uc{'l-d}Ini \uc{'a}bU \uc{m}u.hammadiN \uc{`a}bdu
- \uc{'l-r}a.hImi bnu \uc{`a}liyyi bni \uc{.h}AmidiN wa-yu`rafu
- bi-\uc{'l-d}a_hwari.
-\end{arab}
-\begin{arab}[trans]
- \textcolor{red}{\uc{m}uha_d_dabu \uc{'l-d}Ini \uc{`a}bdu
- \uc{'l-r}a.hImi bnu \uc{`a}liyyiN} huwa ^say_hu-nA 'l-'imAmu
- 'l-.sadru 'l-kabIru 'l-`Alimu 'l-fA.dilu \uc{m}uha_d_dabu
- \uc{'l-d}Ini \uc{'a}bU \uc{m}u.hammadiN \uc{`a}bdu
- \uc{'l-r}a.hImi bnu \uc{`a}liyyi bni \uc{.h}AmidiN wa-yu`rafu
- bi-\uc{'l-d}a_hwari.
-\end{arab}
-\end{arabluacode}
+\begin{example}
+ \begin{arab}
+ \textcolor{red}{\uc{m}uha_d_dabu \uc{'l-d}Ini \uc{`a}bdu
+ \uc{'l-r}a.hImi bnu \uc{`a}liyyiN} huwa ^say_hu-nA 'l-'imAmu
+ 'l-.sadru 'l-kabIru 'l-`Alimu 'l-fA.dilu \uc{m}uha_d_dabu
+ \uc{'l-d}Ini \uc{'a}bU \uc{m}u.hammadiN \uc{`a}bdu
+ \uc{'l-r}a.hImi bnu \uc{`a}liyyi bni \uc{.h}AmidiN wa-yu`rafu
+ bi-\uc{'l-d}a_hwari.
+ \end{arab}
+ \begin{arab}[trans]
+ \textcolor{red}{\uc{m}uha_d_dabu \uc{'l-d}Ini \uc{`a}bdu
+ \uc{'l-r}a.hImi bnu \uc{`a}liyyiN} huwa ^say_hu-nA 'l-'imAmu
+ 'l-.sadru 'l-kabIru 'l-`Alimu 'l-fA.dilu \uc{m}uha_d_dabu
+ \uc{'l-d}Ini \uc{'a}bU \uc{m}u.hammadiN \uc{`a}bdu
+ \uc{'l-r}a.hImi bnu \uc{`a}liyyi bni \uc{.h}AmidiN wa-yu`rafu
+ bi-\uc{'l-d}a_hwari.
+ \end{arab}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -4055,16 +4055,16 @@ qAla barzawayhi bn-u 'azhar-a, ra's-u 'a.tibbA'-i fAris-a...
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
-\beginnumbering
-\pstart
-\begin{arab}
-wa-ya.sIru ta.hta 'l-jild-i
-\edtext{\arb{.sadId-uN}}{\Afootnote{M: \arb{.sadId-aN} E1}}
-\end{arab}
-\pend
-\endnumbering
-\end{arabluaverbatim}
+\begin{code}
+ \beginnumbering
+ \pstart
+ \begin{arab}
+ wa-ya.sIru ta.hta 'l-jild-i
+ \edtext{\arb{.sadId-uN}}{\Afootnote{M: \arb{.sadId-aN} E1}}
+ \end{arab}
+ \pend
+ \endnumbering
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4089,10 +4089,10 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
\usepackage{arabluatex}
\usepackage[nopar]{quran}
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4102,11 +4102,11 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluacode}
+\begin{example}
\begin{txarab}
\quransurah[1]
\end{txarab}
-\end{arabluacode}
+\end{example}
% \iffalse
%</example>
% \fi
@@ -4131,12 +4131,12 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
% preamble
\usepackage[export]{arabluatex}
% or:
\usepackage[export=true]{arabluatex}
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4156,11 +4156,11 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
\begin{arabexport}
<Running paragraphs of either Arabic or non-Arabic text>
\end{arabexport}
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4218,11 +4218,11 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
Package arabluatex Warning: There are still 'arabtex' strings
to be converted. Please open <jobname><suffix>.tex and compile
it one more time.
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4240,9 +4240,9 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
pandoc file_out.tex -s -o file_out.odt
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4254,7 +4254,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% \iffalse
%<*example>
% \fi
-\begin{arabluaverbatim}
+\begin{code}
% preamble:
\usepackage{arabluatex} % note that 'export' has been removed
\renewcommand{\txarb}[1]{#1}
@@ -4264,7 +4264,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% be safe to say:
\renewcommand{\prname}[2]{#2}
% &c
-\end{arabluaverbatim}
+\end{code}
% \iffalse
%</example>
% \fi
@@ -4327,9 +4327,9 @@ wa-ya.sIru ta.hta 'l-jild-i
\DeclareOptionX{trans}{\def\al@mode{trans}}
\define@boolkey{arabluatex.sty}[@pkg@]{export}[true]{%
\if@pkg@export%
- \AtBeginDocument{\luadirect{al_openstream()}%
+ \AtBeginDocument{\luadirect{arabluatex.openstream()}%
\MkArbBreak{@al@ob,@al@cb,@al@cb@sp}}
- \AtEndDocument{\luadirect{al_closestream()}}
+ \AtEndDocument{\luadirect{arabluatex.closestream()}}
\else\fi}
\ExecuteOptionsX{voc}
\ProcessOptionsX\relax
@@ -4347,7 +4347,6 @@ wa-ya.sIru ta.hta 'l-jild-i
\RequirePackage{fontspec}
\RequirePackage{luacode}
\RequirePackage{xparse}
-\RequirePackage{environ}
\RequirePackage{adjustbox}
\RequirePackage{xstring}
\PassOptionsToPackage{normalem}{ulem}
@@ -4372,13 +4371,15 @@ wa-ya.sIru ta.hta 'l-jild-i
% \begin{macro}{\setRL}
% This neutralizes what may be defined by other packages:
% \begin{macrocode}
-\AtBeginDocument{\def\setRL{\booltrue{al@rlmode}\pardir TRT\textdir TRT}}
+\AtBeginDocument{\def\setRL{\booltrue{al@rlmode}\pardir TRT%
+ \textdir TRT}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\setLR}
% The same applies to \cs{setLR}:
% \begin{macrocode}
-\AtBeginDocument{\def\setLR{\boolfalse{al@rlmode}\pardir TLT\textdir TLT}}
+\AtBeginDocument{\def\setLR{\boolfalse{al@rlmode}\pardir TLT%
+ \textdir TLT}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\LR} This command typesets its argument from left to
@@ -4415,8 +4416,8 @@ wa-ya.sIru ta.hta 'l-jild-i
% \begin{macrocode}
\NewDocumentCommand{\MkArbBreak}{s m}{%
\IfBooleanTF{#1}
- {\luadirect{mkarbbreak(\luastringN{#2}, "out")}}
- {\luadirect{mkarbbreak(\luastringN{#2}, "dflt")}}
+ {\luadirect{arabluatex.mkarbbreak(\luastringN{#2}, "out")}}
+ {\luadirect{arabluatex.mkarbbreak(\luastringN{#2}, "dflt")}}
}
% \end{macrocode}
% \end{macro}
@@ -4437,12 +4438,16 @@ wa-ya.sIru ta.hta 'l-jild-i
\AtBeginDocument{\ifdef{\aemph}%
{\RenewDocumentCommand{\aemph}{s m}{%
\IfBooleanTF{#1}{%
- \luadirect{tex.sprint(aemph(\luastringN{#2}, "over"))}}
- {\luadirect{tex.sprint(aemph(\luastringN{#2}, "dflt"))}}}}
+ \luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "over"))}}
+ {\luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "dflt"))}}}}
{\NewDocumentCommand{\aemph}{s m}{%
\IfBooleanTF{#1}{%
- \luadirect{tex.sprint(aemph(\luastringN{#2}, "over"))}}
- {\luadirect{tex.sprint(aemph(\luastringN{#2}, "dflt"))}}}}}
+ \luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "over"))}}
+ {\luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "dflt"))}}}}}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -4531,7 +4536,8 @@ wa-ya.sIru ta.hta 'l-jild-i
% the transliteration convention, which is |dmg| by default:
% \begin{macrocode}
\def\al@trans@convention{dmg}
-\NewDocumentCommand{\SetTranslitConvention}{m}{\def\al@trans@convention{#1}}
+\NewDocumentCommand{\SetTranslitConvention}{m}{%
+ \def\al@trans@convention{#1}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\arbup}
@@ -4551,12 +4557,13 @@ wa-ya.sIru ta.hta 'l-jild-i
% formatting directives as argument, like so:
% \cs{SetArbUp}\marg{code}.
% \begin{macrocode}
-\NewDocumentCommand{\al@arbup@dflt}{m}{\textsuperscript{\thinspace#1}}%
+\NewDocumentCommand{\al@arbup@dflt}{m}{\textsuperscript{#1}}%
\NewDocumentCommand{\al@arbup}{m}{\al@arbup@dflt{#1}}
\NewDocumentCommand{\arbup}{m}{\al@arbup{#1}}
\NewDocumentCommand{\ArbUpDflt}{}{\let\al@arbup=\al@arbup@dflt}
\NewDocumentCommand{\NoArbUp}{}{\RenewDocumentCommand{\al@arbup}{m}{##1}}
-\NewDocumentCommand{\SetArbUp}{m}{\RenewDocumentCommand{\al@arbup}{m}{#1}}
+\NewDocumentCommand{\SetArbUp}{m}{%
+ \RenewDocumentCommand{\al@arbup}{m}{#1}}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -4567,7 +4574,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% uppercased. \cs{uc} is actually coded in Lua.
% \begin{macrocode}
\NewDocumentCommand{\uc}{m}%
- {\luadirect{tex.sprint(uc(\luastringN{#1}))}}
+ {\luadirect{tex.sprint(arabluatex.uc(\luastringN{#1}))}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\Uc} \cs{uc} can be used safely in all of the modes
@@ -4638,22 +4645,22 @@ wa-ya.sIru ta.hta 'l-jild-i
{\edef\@tempa{#1}%
\ifx\@tempa\al@mode@voc%
\bgroup\booltrue{al@rlmode}\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processvoc(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@fullvoc%
\bgroup\booltrue{al@rlmode}\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processfullvoc(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processfullvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@novoc%
\bgroup\booltrue{al@rlmode}\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processnovoc(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processnovoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@trans%
\bgroup\textdir TLT\al@trans@font\al@trans@style%
- \luadirect{tex.sprint(processtrans(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processtrans(\luastringN{#2},
\luastringO{\al@trans@convention},
\luastringO{\al@arb@rules},
\luastringO{\al@input@scheme}))}\egroup%
@@ -4674,7 +4681,7 @@ wa-ya.sIru ta.hta 'l-jild-i
\NewDocumentCommand{\arbmark}{O{} m}{%
\bgroup%
\SetInputScheme{arabtex}%
- \luadirect{tex.sprint(processarbmarks(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processarbmarks(\luastringN{#2},
\luastringN{#1}))}%
\egroup}
% \end{macrocode}
@@ -4688,40 +4695,41 @@ wa-ya.sIru ta.hta 'l-jild-i
% romanized Arabic.
% \begin{macrocode}
\NewDocumentCommand{\newarbmark}{m m m}{%
- \luadirect{newarbmark(\luastringN{#1}, \luastringN{#2}, \luastringN{#3})}}
+ \luadirect{arabluatex.newarbmark(\luastringN{#1}, \luastringN{#2},
+ \luastringN{#3})}}
% \end{macrocode}
% \end{macro}
% \begin{environment}{arab}
% The |arab| environment does for paragraphs the same as \cs{arb} does
% for short insertions of Arabic text.
% \begin{macrocode}
-\NewEnviron{arab}[1][\al@mode]%
+\NewDocumentEnvironment{arab}{O{\al@mode} +b}%
{\par\edef\@tempa{#1}%
\ifx\@tempa\al@mode@voc%
\booltrue{al@rlmode}%
\bgroup\pardir TRT\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processvoc(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@fullvoc%
\booltrue{al@rlmode}%
\bgroup\pardir TRT\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processfullvoc(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processfullvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@novoc%
\booltrue{al@rlmode}%
\bgroup\pardir TRT\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processnovoc(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processnovoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@trans%
\bgroup\pardir TLT\textdir TLT\al@trans@font\al@trans@style%
- \luadirect{tex.sprint(processtrans(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processtrans(\luastringN{#2},
\luastringO{\al@trans@convention},
\luastringO{\al@arb@rules},
\luastringO{\al@input@scheme}))}\egroup%
- \else \fi\fi\fi\fi}[\par]
+ \else \fi\fi\fi\fi}{\par}
% \end{macrocode}
% \end{environment}
% \begin{environment}{arabverse}
@@ -4758,11 +4766,11 @@ wa-ya.sIru ta.hta 'l-jild-i
\if@pkg@export\ifal@verse@export%
\ArbOutFile{\begin{arabverse}}%
% \ifx\al@mode\al@mode@trans%
- % \luadirect{tooutfile(\luastringN{[#1]})}%
+ % \luadirect{arabluatex.tooutfile(\luastringN{[#1]})}%
% \else%
\IfSubStr[1]{#1}{utf}%
- {\luadirect{tooutfile(\luastringN{[#1]})}}%
- {\luadirect{tooutfile(\luastringN{[#1, utf]})}}%
+ {\luadirect{arabluatex.tooutfile(\luastringN{[#1]})}}%
+ {\luadirect{arabluatex.tooutfile(\luastringN{[#1, utf]})}}%
% \fi
\else\fi\else\fi\egroup%
\par\centering\noindent\bgroup\setkeys[al]{verse}[metre]{#1}%
@@ -4774,7 +4782,7 @@ wa-ya.sIru ta.hta 'l-jild-i
\else%
\ifx\al@mode\al@mode@trans\setLR\else\setRL\fi%
\fi%
- \arab@v@export{#1}
+ \arab@v@export[#1]
}%
{\endarab@v@export
\hfill\setkeys[al]{verse}[width, gutter, color, utf, delim, mode,
@@ -4852,13 +4860,15 @@ wa-ya.sIru ta.hta 'l-jild-i
\ifdefined\abjad%
\RenewDocumentCommand{\abjad}{m}%
{\ifbool{al@rlmode}%
- {\oline*{\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
- {\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
+ {\oline*{%
+ \luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
+ {\luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
\else%
\NewDocumentCommand{\abjad}{m}%
{\ifbool{al@rlmode}%
- {\oline*{\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
- {\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
+ {\oline*{%
+ \luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
+ {\luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
\fi}
% \end{macrocode}
% \end{macro}
@@ -4868,7 +4878,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% depending on the mode which is selected.
% \begin{macrocode}
\NewDocumentCommand{\ayah}{m}{%
- \luadirect{tex.sprint(ayah(\luastringN{#1}))}}
+ \luadirect{tex.sprint(arabluatex.ayah(\luastringN{#1}))}}
% \end{macrocode}
% \end{macro}
%
@@ -4890,7 +4900,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% expresses its argument between braces.}
% \begin{macrocode}
\NewDocumentCommand{\abraces}{+m}{%
- \luadirect{tex.sprint(abraces(\luastringN{#1}))}}
+ \luadirect{tex.sprint(arabluatex.abraces(\luastringN{#1}))}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\LRmarginpar} \cs{LRmarginpar} is supposed to be
@@ -4924,9 +4934,11 @@ wa-ya.sIru ta.hta 'l-jild-i
% \begin{macrocode}
\NewDocumentCommand{\FixArbFtnmk}{}{%
\@ifpackageloaded{scrextend}%
- {\AtBeginDocument{\deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}%
+ {\AtBeginDocument{%
+ \deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}%
{\RequirePackage{scrextend}
- \AtBeginDocument{\deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}}
+ \AtBeginDocument{%
+ \deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}}
% \end{macrocode}
% \end{macro}
%
@@ -4940,7 +4952,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% set with \cs{SetArbOutSuffix}\marg{suffix}.
% \begin{macrocode}
\NewDocumentCommand{\SetArbOutSuffix}{m}{
- \luadirect{al_utffilesuffix(\luastringN{#1})}}
+ \luadirect{arabluatex.utffilesuffix(\luastringN{#1})}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\ArbOutFile}
@@ -4958,8 +4970,8 @@ wa-ya.sIru ta.hta 'l-jild-i
\NewDocumentCommand{\ArbOutFile}{s O{no} +m}{%
\if@pkg@export%
\IfBooleanTF{#1}{%
- #3\luadirect{tooutfile(\luastringN{#3}, "#2")}}{%
- \luadirect{tooutfile(\luastringN{#3}, "#2")}}%
+ #3\luadirect{arabluatex.tooutfile(\luastringN{#3}, "#2")}}{%
+ \luadirect{arabluatex.tooutfile(\luastringN{#3}, "#2")}}%
\else\IfBooleanTF{#1}{#3}{}\fi}
% \end{macrocode}
% \end{macro}
@@ -4974,32 +4986,32 @@ wa-ya.sIru ta.hta 'l-jild-i
% selected |.tex| file with Unicode in place of the original
% |arabtex| or |buckwalter| strings.
% \begin{macrocode}
-\NewEnviron{arabexport}{%
+\NewDocumentEnvironment{arabexport}{+b}{%
\if@pkg@export%
\par
- \BODY
- \luadirect{al_doexport("yes")}
- \luadirect{tex.sprint(arbtoutf(\luastringO{\BODY}))}
- \luadirect{al_doexport("no")}
- \else\par\BODY\fi
- }[\par]
+ #1
+ \luadirect{arabluatex.doexport("yes")}
+ \luadirect{tex.sprint(arabluatex.arbtoutf(\luastringN{#1}))}
+ \luadirect{arabluatex.doexport("no")}
+ \else\par#1\fi
+ }{\par}
% \end{macrocode}
% \end{environment}
% \begin{environment}{arab@v@export} The |arab@v@export| environment
% does for |arabverse| the same as |arabexport|. It is used
% internally by |arabverse|.
% \begin{macrocode}
-\NewEnviron{arab@v@export}[1]{%
+\NewDocumentEnvironment{arab@v@export}{O{} +b}{%
\setkeys[al]{verse}[width, gutter, color, utf, delim, mode,
metre]{#1}
\if@pkg@export\ifal@verse@export%
\par
- \BODY
- \luadirect{al_doexport("arabverse")}
- \luadirect{tex.sprint(arbtoutf(\luastringO{\BODY}))}
- \luadirect{al_doexport("no")}
- \else\par\BODY\fi\else\par\BODY\fi
-}[\par]
+ #2
+ \luadirect{arabluatex.doexport("arabverse")}
+ \luadirect{tex.sprint(arabluatex.arbtoutf(\luastringN{#2}))}
+ \luadirect{arabluatex.doexport("no")}
+ \else\par#2\fi\else\par#2\fi
+}{\par}
% \end{macrocode}
% \end{environment}
% \begin{macro}{\arbpardir}
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua
index 9d8343810f6..df031569c01 100644
--- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua
+++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua
@@ -22,6 +22,8 @@ along with this program. If not, see
<http://www.gnu.org/licenses/>.
--]]
+arabluatex = {}
+
require("arabluatex_voc")
require("arabluatex_fullvoc")
require("arabluatex_novoc")
@@ -95,7 +97,7 @@ local albrkcmds = {
}
local brkcmds = {}
-function mkarbbreak(str, opt)
+function arabluatex.mkarbbreak(str, opt)
str = str ..","
str = string.gsub(str, "%s+", "")
local fieldstart = 1
@@ -659,17 +661,17 @@ end
local utffilesuffix = "_out"
local export_utf = "no"
-function al_utffilesuffix(str)
+function arabluatex.utffilesuffix(str)
utffilesuffix = str
return true
end
-function al_doexport(str)
+function arabluatex.doexport(str)
export_utf = str
return true
end
-function al_openstream()
+function arabluatex.openstream()
local f = io.open(tex.jobname..utffilesuffix.."_tmp.tex", "a+")
local preamble = io.open(tex.jobname..".tex", "r")
for line in preamble:lines() do
@@ -706,7 +708,7 @@ local function processarbtoutf(str)
body = string.gsub(body, "(\\abjad%s?)(%b{})", function(btag, bbody)
bbody = string.sub(bbody, 2, -2)
if tonumber(bbody) ~= nil then
- bbody = abjadify(bbody)
+ bbody = arabluatex.abjadify(bbody)
return string.format("\\oline*{\\arb[novoc]{%s}}", bbody)
else
return string.format("%s{%s}", btag, bbody)
@@ -793,7 +795,7 @@ local function processarbtoutf(str)
return str
end
-function arbtoutf(str)
+function arabluatex.arbtoutf(str)
str = processarbtoutf(str)
str = "\\ArbOutFile{"..str.."}"
str = string.gsub(str, "(\\ArbOutFile)%s?(%b{})", function(tag, body)
@@ -814,7 +816,7 @@ function arbtoutf(str)
return str
end
-function tooutfile(str, nl)
+function arabluatex.tooutfile(str, nl)
local f = io.open(tex.jobname..utffilesuffix.."_tmp.tex", "a+")
if nl == "newline" then
f:write(str, "\n\n")
@@ -825,7 +827,7 @@ function tooutfile(str, nl)
return str
end
-function al_closestream()
+function arabluatex.closestream()
local f = io.open(tex.jobname..utffilesuffix.."_tmp.tex", "r")
local o = io.open(tex.jobname..utffilesuffix..".tex", "w")
local t = f:read("*a")
@@ -883,7 +885,7 @@ function al_closestream()
end
-- Process standard arabluatex modes:
-function processvoc(str, rules, scheme)
+function arabluatex.processvoc(str, rules, scheme)
str = takeoutarb(str)
str = processarbnull(str, scheme)
str = takeoutcapetc(str)
@@ -901,17 +903,17 @@ function processvoc(str, rules, scheme)
str = unprotectarb(str)
if export_utf == "yes" then
tofile = "\\txarb{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
elseif export_utf == "arabverse" then
tofile = "\\txarb{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
else
return str
end
return ""
end
-function processfullvoc(str, rules, scheme)
+function arabluatex.processfullvoc(str, rules, scheme)
str = takeoutarb(str)
str = processarbnull(str, scheme)
str = takeoutcapetc(str)
@@ -931,17 +933,17 @@ function processfullvoc(str, rules, scheme)
str = unprotectarb(str)
if export_utf == "yes" then
tofile = "\\txarb{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
elseif export_utf == "arabverse" then
tofile = "\\txarb{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
else
return str
end
return ""
end
-function processnovoc(str, rules, scheme)
+function arabluatex.processnovoc(str, rules, scheme)
str = takeoutarb(str)
str = processarbnull(str, scheme)
str = takeoutcapetc(str)
@@ -959,17 +961,17 @@ function processnovoc(str, rules, scheme)
str = unprotectarb(str)
if export_utf == "yes" then
tofile = "\\txarb{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
elseif export_utf == "arabverse" then
tofile = "\\txarb{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
else
return str
end
return ""
end
-function processtrans(str, mode, rules, scheme)
+function arabluatex.processtrans(str, mode, rules, scheme)
str = takeoutarb(str)
str = processdiscretionary(str)
str = processarbnull(str, scheme)
@@ -990,17 +992,17 @@ function processtrans(str, mode, rules, scheme)
str = unprotectarb(str)
if export_utf == "yes" then
tofile = "\\txtrans{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
elseif export_utf == "arabverse" then
tofile = "\\txtrans{"..str.."}"
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
else
return str
end
return ""
end
-function newarbmark(abbr, rtlmk, ltrmk)
+function arabluatex.newarbmark(abbr, rtlmk, ltrmk)
abbr = "@"..abbr
rtlmk = "\\arabicfont{}"..rtlmk
table.insert(arbmarks, {a = abbr, b = rtlmk, c = ltrmk})
@@ -1017,7 +1019,7 @@ local function isintable(table, element)
return false
end
-function processarbmarks(str, dir)
+function arabluatex.processarbmarks(str, dir)
str = "@"..str
if not isintable(arbmarks, str) then
str = "\\LR{<??>}"..atletter.."\\al@wrong@mark{}"..atother
@@ -1042,17 +1044,17 @@ function processarbmarks(str, dir)
end
if export_utf == "yes" then
tofile = str
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
elseif export_utf == "arabverse" then
tofile = str
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
else
return str
end
return ""
end
-function uc(str)
+function arabluatex.uc(str)
str = string.gsub(str, "(\\txtrans.?)(%b{})", function(tag, body)
body = string.sub(body, 2, -2)
return string.format("%s", body)
@@ -1113,10 +1115,10 @@ function uc(str)
str = string.gsub(str, "\\@al@cb", "}")
if export_utf == "yes" then
tofile = str
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
elseif export_utf == "arabverse" then
tofile = str
- tooutfile(tofile)
+ arabluatex.tooutfile(tofile)
else
return str
end
@@ -1126,7 +1128,7 @@ end
-- this function is adapted from an 'obsolete project' of Khaled
-- Hosny's that dates back to 2010. Thanks to him.
-- See https://github.com/khaledhosny/lualatex-arabic
-function abjadify(n)
+function arabluatex.abjadify(n)
local abjadnum = ""
n = tonumber(n)
if n >= 1000 then
@@ -1149,7 +1151,7 @@ function abjadify(n)
return "\\arb[novoc]{"..abjadnum.."}"
end
-function abraces(str)
+function arabluatex.abraces(str)
if tex.textdir == "TRT" then
str = "\\}"..str.."\\{"
elseif tex.textdir == "TLT" then
@@ -1158,7 +1160,7 @@ function abraces(str)
return str
end
-function aemph(str, opt)
+function arabluatex.aemph(str, opt)
if tex.textdir == "TRT" then
str = "\\oline{\\textdir TRT{}"..str.."}"
elseif tex.textdir == "TLT" then
@@ -1171,7 +1173,7 @@ function aemph(str, opt)
return str
end
-function ayah(str)
+function arabluatex.ayah(str)
if tonumber(str) ~= nil and str.len(str) < 4 then
if tex.textdir == "TRT" then
str = indnum(str).."^^^^06dd"
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty
index ebe1ff2a831..f5d9d08fbe6 100644
--- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty
+++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty
@@ -41,7 +41,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{arabluatex}
- [2019/03/22 v1.16 An ArabTeX-like interface for LuaLaTeX]
+ [2019/03/24 v1.17 An ArabTeX-like interface for LuaLaTeX]
\RequirePackage{ifluatex}
\ifluatex\else
\PackageError{arabluatex}{lualatex needed}{%
@@ -57,9 +57,9 @@
\DeclareOptionX{trans}{\def\al@mode{trans}}
\define@boolkey{arabluatex.sty}[@pkg@]{export}[true]{%
\if@pkg@export%
- \AtBeginDocument{\luadirect{al_openstream()}%
+ \AtBeginDocument{\luadirect{arabluatex.openstream()}%
\MkArbBreak{@al@ob,@al@cb,@al@cb@sp}}
- \AtEndDocument{\luadirect{al_closestream()}}
+ \AtEndDocument{\luadirect{arabluatex.closestream()}}
\else\fi}
\ExecuteOptionsX{voc}
\ProcessOptionsX\relax
@@ -74,7 +74,6 @@
\RequirePackage{fontspec}
\RequirePackage{luacode}
\RequirePackage{xparse}
-\RequirePackage{environ}
\RequirePackage{adjustbox}
\RequirePackage{xstring}
\PassOptionsToPackage{normalem}{ulem}
@@ -85,8 +84,10 @@
\PackageWarning{arabluatex}{\string\arabicfont\ is not defined.^^J
I will try to load Amiri}%
\newfontfamily\arabicfont[Script=Arabic]{Amiri}\fi}%
-\AtBeginDocument{\def\setRL{\booltrue{al@rlmode}\pardir TRT\textdir TRT}}
-\AtBeginDocument{\def\setLR{\boolfalse{al@rlmode}\pardir TLT\textdir TLT}}
+\AtBeginDocument{\def\setRL{\booltrue{al@rlmode}\pardir TRT%
+ \textdir TRT}}
+\AtBeginDocument{\def\setLR{\boolfalse{al@rlmode}\pardir TLT%
+ \textdir TLT}}
\AtBeginDocument{\ifdef{\LR}%
{\RenewDocumentCommand{\LR}{m}{\bgroup\textdir TLT\rmfamily#1\egroup}}
{\NewDocumentCommand{\LR}{m}{\bgroup\textdir TLT\rmfamily#1\egroup}}}
@@ -95,8 +96,8 @@
{\NewDocumentCommand{\RL}{m}{\bgroup\textdir TRT#1\rmfamily\egroup}}}
\NewDocumentCommand{\MkArbBreak}{s m}{%
\IfBooleanTF{#1}
- {\luadirect{mkarbbreak(\luastringN{#2}, "out")}}
- {\luadirect{mkarbbreak(\luastringN{#2}, "dflt")}}
+ {\luadirect{arabluatex.mkarbbreak(\luastringN{#2}, "out")}}
+ {\luadirect{arabluatex.mkarbbreak(\luastringN{#2}, "dflt")}}
}
\def\oline{\@ifstar\@oline\@@oline}
\def\@oline#1{\ensuremath{\overline{\mbox{#1}}}}
@@ -104,12 +105,16 @@
\AtBeginDocument{\ifdef{\aemph}%
{\RenewDocumentCommand{\aemph}{s m}{%
\IfBooleanTF{#1}{%
- \luadirect{tex.sprint(aemph(\luastringN{#2}, "over"))}}
- {\luadirect{tex.sprint(aemph(\luastringN{#2}, "dflt"))}}}}
+ \luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "over"))}}
+ {\luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "dflt"))}}}}
{\NewDocumentCommand{\aemph}{s m}{%
\IfBooleanTF{#1}{%
- \luadirect{tex.sprint(aemph(\luastringN{#2}, "over"))}}
- {\luadirect{tex.sprint(aemph(\luastringN{#2}, "dflt"))}}}}}
+ \luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "over"))}}
+ {\luadirect{tex.sprint(arabluatex.aemph(\luastringN{#2},
+ "dflt"))}}}}}
\NewDocumentCommand{\arbcolor}{o m}{%
\IfNoValueTF{#1}{#2}{\textcolor{#1}{#2}}}
\def\al@input@scheme{arabtex}
@@ -128,15 +133,17 @@
\def\al@trans@style{\itshape}%
\NewDocumentCommand{\SetTranslitStyle}{m}{\def\al@trans@style{#1}}
\def\al@trans@convention{dmg}
-\NewDocumentCommand{\SetTranslitConvention}{m}{\def\al@trans@convention{#1}}
-\NewDocumentCommand{\al@arbup@dflt}{m}{\textsuperscript{\thinspace#1}}%
+\NewDocumentCommand{\SetTranslitConvention}{m}{%
+ \def\al@trans@convention{#1}}
+\NewDocumentCommand{\al@arbup@dflt}{m}{\textsuperscript{#1}}%
\NewDocumentCommand{\al@arbup}{m}{\al@arbup@dflt{#1}}
\NewDocumentCommand{\arbup}{m}{\al@arbup{#1}}
\NewDocumentCommand{\ArbUpDflt}{}{\let\al@arbup=\al@arbup@dflt}
\NewDocumentCommand{\NoArbUp}{}{\RenewDocumentCommand{\al@arbup}{m}{##1}}
-\NewDocumentCommand{\SetArbUp}{m}{\RenewDocumentCommand{\al@arbup}{m}{#1}}
+\NewDocumentCommand{\SetArbUp}{m}{%
+ \RenewDocumentCommand{\al@arbup}{m}{#1}}
\NewDocumentCommand{\uc}{m}%
- {\luadirect{tex.sprint(uc(\luastringN{#1}))}}
+ {\luadirect{tex.sprint(arabluatex.uc(\luastringN{#1}))}}
\let\Uc\uc
\NewDocumentCommand{\prname}{s m}{%
\bgroup\SetTranslitStyle{\relax}%
@@ -153,22 +160,22 @@
{\edef\@tempa{#1}%
\ifx\@tempa\al@mode@voc%
\bgroup\booltrue{al@rlmode}\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processvoc(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@fullvoc%
\bgroup\booltrue{al@rlmode}\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processfullvoc(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processfullvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@novoc%
\bgroup\booltrue{al@rlmode}\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processnovoc(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processnovoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@trans%
\bgroup\textdir TLT\al@trans@font\al@trans@style%
- \luadirect{tex.sprint(processtrans(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processtrans(\luastringN{#2},
\luastringO{\al@trans@convention},
\luastringO{\al@arb@rules},
\luastringO{\al@input@scheme}))}\egroup%
@@ -177,38 +184,39 @@
\NewDocumentCommand{\arbmark}{O{} m}{%
\bgroup%
\SetInputScheme{arabtex}%
- \luadirect{tex.sprint(processarbmarks(\luastringN{#2},
+ \luadirect{tex.sprint(arabluatex.processarbmarks(\luastringN{#2},
\luastringN{#1}))}%
\egroup}
\NewDocumentCommand{\newarbmark}{m m m}{%
- \luadirect{newarbmark(\luastringN{#1}, \luastringN{#2}, \luastringN{#3})}}
-\NewEnviron{arab}[1][\al@mode]%
+ \luadirect{arabluatex.newarbmark(\luastringN{#1}, \luastringN{#2},
+ \luastringN{#3})}}
+\NewDocumentEnvironment{arab}{O{\al@mode} +b}%
{\par\edef\@tempa{#1}%
\ifx\@tempa\al@mode@voc%
\booltrue{al@rlmode}%
\bgroup\pardir TRT\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processvoc(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@fullvoc%
\booltrue{al@rlmode}%
\bgroup\pardir TRT\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processfullvoc(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processfullvoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@novoc%
\booltrue{al@rlmode}%
\bgroup\pardir TRT\textdir TRT\arabicfont%
- \luadirect{tex.sprint(processnovoc(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processnovoc(\luastringN{#2},
\luastringO{\al@arb@rules}, \luastringO{\al@input@scheme}))}\egroup%
\else%
\ifx\@tempa\al@mode@trans%
\bgroup\pardir TLT\textdir TLT\al@trans@font\al@trans@style%
- \luadirect{tex.sprint(processtrans(\luastringO{\BODY},
+ \luadirect{tex.sprint(arabluatex.processtrans(\luastringN{#2},
\luastringO{\al@trans@convention},
\luastringO{\al@arb@rules},
\luastringO{\al@input@scheme}))}\egroup%
- \else \fi\fi\fi\fi}[\par]
+ \else \fi\fi\fi\fi}{\par}
\newlength{\al@bayt@width}
\newlength{\al@gutter@width}
\setlength{\al@bayt@width}{.3\textwidth}
@@ -230,11 +238,11 @@
\if@pkg@export\ifal@verse@export%
\ArbOutFile{\begin{arabverse}}%
% \ifx\al@mode\al@mode@trans%
- % \luadirect{tooutfile(\luastringN{[#1]})}%
+ % \luadirect{arabluatex.tooutfile(\luastringN{[#1]})}%
% \else%
\IfSubStr[1]{#1}{utf}%
- {\luadirect{tooutfile(\luastringN{[#1]})}}%
- {\luadirect{tooutfile(\luastringN{[#1, utf]})}}%
+ {\luadirect{arabluatex.tooutfile(\luastringN{[#1]})}}%
+ {\luadirect{arabluatex.tooutfile(\luastringN{[#1, utf]})}}%
% \fi
\else\fi\else\fi\egroup%
\par\centering\noindent\bgroup\setkeys[al]{verse}[metre]{#1}%
@@ -246,7 +254,7 @@
\else%
\ifx\al@mode\al@mode@trans\setLR\else\setRL\fi%
\fi%
- \arab@v@export{#1}
+ \arab@v@export[#1]
}%
{\endarab@v@export
\hfill\setkeys[al]{verse}[width, gutter, color, utf, delim, mode,
@@ -293,19 +301,21 @@
\ifdefined\abjad%
\RenewDocumentCommand{\abjad}{m}%
{\ifbool{al@rlmode}%
- {\oline*{\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
- {\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
+ {\oline*{%
+ \luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
+ {\luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
\else%
\NewDocumentCommand{\abjad}{m}%
{\ifbool{al@rlmode}%
- {\oline*{\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
- {\luadirect{tex.sprint(abjadify(\luastring{#1}))}}}
+ {\oline*{%
+ \luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
+ {\luadirect{tex.sprint(arabluatex.abjadify(\luastring{#1}))}}}
\fi}
\NewDocumentCommand{\ayah}{m}{%
- \luadirect{tex.sprint(ayah(\luastringN{#1}))}}
+ \luadirect{tex.sprint(arabluatex.ayah(\luastringN{#1}))}}
\NewDocumentCommand{\arbnull}{m}{\relax}
\NewDocumentCommand{\abraces}{+m}{%
- \luadirect{tex.sprint(abraces(\luastringN{#1}))}}
+ \luadirect{tex.sprint(arabluatex.abraces(\luastringN{#1}))}}
\DeclareDocumentCommand{\LRmarginpar}{o m}{%
\IfNoValueTF{#1}
{\marginpar{\textdir TLT #2}}
@@ -316,37 +326,39 @@
TRT\textdir TRT\footnote{#1}\egroup}
\NewDocumentCommand{\FixArbFtnmk}{}{%
\@ifpackageloaded{scrextend}%
- {\AtBeginDocument{\deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}%
+ {\AtBeginDocument{%
+ \deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}%
{\RequirePackage{scrextend}
- \AtBeginDocument{\deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}}
+ \AtBeginDocument{%
+ \deffootnote{2em}{1.6em}{\LR{\thefootnotemark}.\enskip}}}}
\NewDocumentCommand{\SetArbOutSuffix}{m}{
- \luadirect{al_utffilesuffix(\luastringN{#1})}}
+ \luadirect{arabluatex.utffilesuffix(\luastringN{#1})}}
\NewDocumentCommand{\ArbOutFile}{s O{no} +m}{%
\if@pkg@export%
\IfBooleanTF{#1}{%
- #3\luadirect{tooutfile(\luastringN{#3}, "#2")}}{%
- \luadirect{tooutfile(\luastringN{#3}, "#2")}}%
+ #3\luadirect{arabluatex.tooutfile(\luastringN{#3}, "#2")}}{%
+ \luadirect{arabluatex.tooutfile(\luastringN{#3}, "#2")}}%
\else\IfBooleanTF{#1}{#3}{}\fi}
-\NewEnviron{arabexport}{%
+\NewDocumentEnvironment{arabexport}{+b}{%
\if@pkg@export%
\par
- \BODY
- \luadirect{al_doexport("yes")}
- \luadirect{tex.sprint(arbtoutf(\luastringO{\BODY}))}
- \luadirect{al_doexport("no")}
- \else\par\BODY\fi
- }[\par]
-\NewEnviron{arab@v@export}[1]{%
+ #1
+ \luadirect{arabluatex.doexport("yes")}
+ \luadirect{tex.sprint(arabluatex.arbtoutf(\luastringN{#1}))}
+ \luadirect{arabluatex.doexport("no")}
+ \else\par#1\fi
+ }{\par}
+\NewDocumentEnvironment{arab@v@export}{O{} +b}{%
\setkeys[al]{verse}[width, gutter, color, utf, delim, mode,
metre]{#1}
\if@pkg@export\ifal@verse@export%
\par
- \BODY
- \luadirect{al_doexport("arabverse")}
- \luadirect{tex.sprint(arbtoutf(\luastringO{\BODY}))}
- \luadirect{al_doexport("no")}
- \else\par\BODY\fi\else\par\BODY\fi
-}[\par]
+ #2
+ \luadirect{arabluatex.doexport("arabverse")}
+ \luadirect{tex.sprint(arabluatex.arbtoutf(\luastringN{#2}))}
+ \luadirect{arabluatex.doexport("no")}
+ \else\par#2\fi\else\par#2\fi
+}{\par}
\NewDocumentCommand{\arbpardir}{}{%
\ifx\al@mode\al@mode@trans\setLR\else\setRL\fi}
\newcommand{\al@warning}[1]{\PackageWarning{arabluatex}{#1}}