summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-09-28 22:19:34 +0000
committerKarl Berry <karl@freefriends.org>2016-09-28 22:19:34 +0000
commitd2436f368c34455ebfcc7d630701e8ab11162ddd (patch)
treee8d8cedb43065d83f3181c3519def156079cea61
parent39423c7609af97d780fc0830ddd09a16a2d025c2 (diff)
arabluatex (28sep16)
git-svn-id: svn://tug.org/texlive/trunk@42174 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdfbin329503 -> 331557 bytes
-rw-r--r--Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx45
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua22
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty7
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua2
5 files changed, 55 insertions, 21 deletions
diff --git a/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf b/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf
index 496bd53c98e..78eb7c45824 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/source/lualatex/arabluatex/arabluatex.dtx b/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx
index ff52e804274..3829b48356e 100644
--- a/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx
+++ b/Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx
@@ -27,7 +27,7 @@
%<package-info>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package-info>\ProvidesPackage{arabluatex}
%<*package-info>
- [2016/09/14 v1.4.3 This is ArabTeX for LuaLaTeX]
+ [2016/09/28 v1.4.4 This is ArabTeX for LuaLaTeX]
%</package-info>
%
%<*driver>
@@ -145,7 +145,7 @@
\defaultfontfeatures{RawFeature={+liga}}
\setmainfont{Old Standard}[SmallCapsFont={Latin Modern Roman Caps},
RawFeature={+mark;+ccmp;+ss05;+ss06}]
-\usepackage{arabluatex}[2016/09/14]
+\usepackage{arabluatex}[2016/09/28]
\usepackage{varioref}
\usepackage{hypdoc}
\hypersetup{unicode=true, colorlinks, allcolors=blue,
@@ -198,7 +198,7 @@
%</driver>
% \fi
%
-% \CheckSum{376}
+% \CheckSum{379}
%
% \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
@@ -510,12 +510,16 @@
% \item In |fullvoc| mode, the \arb[trans]{sukUn} is expressed.
% \end{compactitem}
%
-% \DescribeMacro{\SetArbEasy} \DescribeMacro{\SetArbDflt} Such
+% \DescribeMacro{\SetArbEasy} \NEWfeature{v1.4.4}
+% \DescribeMacro{\SetArbEasy*} \DescribeMacro{\SetArbDflt} Such
% refinements may be discarded by the command \cs{SetArbEasy}, either
% globally in the preamble or locally at any point of the
-% document. Default \enquote*{classic} rules may be set back at any
-% point of the document with the command \cs{SetArbDflt}. Examples
-% follow:---
+% document. The difference between \cs{SetArbEasy} and its
+% \enquote*{starred} version \cs{SetArbEasy*} is that the former keeps
+% the \arb[trans]{sukUn} that is generated by the |fullvoc| mode,
+% while the latter further takes it away. Default \enquote*{classic}
+% rules may be set back at any point of the document with the command
+% \cs{SetArbDflt}. Examples follow:---
% \begin{compactenum}[(a)]
% \item \cs{SetArbDflt}:
% \begin{compactenum}[i.]
@@ -535,6 +539,15 @@
% \item |trans| \arb[trans]{wa-mAta istisqA'aN qabla 'an yutimma
% kitAba-hu fI nujUm-i 'l-samA'-i}\SetArbDflt
% \end{compactenum}
+% \item \cs{SetArbEasy*}:
+% \begin{compactenum}[i.]\SetArbEasy*
+% \item |voc| \arb[voc]{wa-mAta istisqA'aN qabla 'an yutimma
+% kitAba-hu fI nujUm-i 'l-samA'-i}
+% \item |fullvoc| \arb[fullvoc]{wa-mAta istisqA'aN qabla 'an yutimma
+% kitAba-hu fI nujUm-i 'l-samA'-i}
+% \item |trans| \arb[trans]{wa-mAta istisqA'aN qabla 'an yutimma
+% kitAba-hu fI nujUm-i 'l-samA'-i}\SetArbDflt
+% \end{compactenum}
% \end{compactenum}
%
% \iffalse
@@ -2383,7 +2396,7 @@ wa-ya.sIru ta.hta 'l-jild-i
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{arabluatex}%
-[2016/09/14 v1.4.3 ArabTeX-like interface for LuaLaTeX]
+[2016/09/28 v1.4.4 ArabTeX-like interface for LuaLaTeX]
\RequirePackage{ifluatex}
% \end{macrocode}
% \package{arabluatex} requires \LuaLaTeX\ of course. Issue a warning
@@ -2494,20 +2507,31 @@ wa-ya.sIru ta.hta 'l-jild-i
% \begin{macro}{\SetArbEasy}
% \changes{v1.2}{2016/05/09}{New \cs{SetArbEasy}/\cs{SetArbDflt} for
% \enquote*{modern} or \enquote*{classic} Arabic styles.}
+% \begin{macro}{\SetArbEasy*}
+% \changes{v1.4.4}{2016/09/28}{this starred version discards the
+% \arb[trans]{sukUn} in addition to what is already discarded by
+% \cs{SetArbEasy}.}
% \begin{macro}{\SetArbDflt}
% By default, \package{arabluatex} applies complex rules to generate
% euphonic \arb[trans]{ta^sdId}, \arb[trans]{'alif mamdUdaT} and
% \arb[trans]{sukUn} depending on the modes which are selected,
% either |voc|, |fullvoc| or |trans|. Such refinements can be
% discarded with \cs{SetArbEasy}, either globally in the preamble or
-% at any point of the document. Default complex rules can be set
+% at any point of the document. Note that \cs{SetArbEasy} keeps the
+% \arb[trans]{sukUn} that is generated, while the starred version
+% \cs{SetArbEasy*} takes it away. Default complex rules can be set
% back at any point of the document with \cs{SetArbDflt}.
% \begin{macrocode}
\def\al@arb@rules{dflt}
-\NewDocumentCommand{\SetArbEasy}{}{\def\al@arb@rules{easy}}
+\NewDocumentCommand{\SetArbEasy}{s}{%
+ \IfBooleanTF{#1}
+ {\def\al@arb@rules{easynosukun}}
+ {\def\al@arb@rules{easy}}}
\NewDocumentCommand{\SetArbDflt}{}{\def\al@arb@rules{dflt}}
% \end{macrocode}
% \end{macro}
+% \end{macro}
+% \end{macro}
% \begin{macro}{\SetTranslitFont}
% \changes{v1.4}{2016/07/05}{For selecting a specific font for
% transliterated texts} By default, the font that is used for
@@ -2519,7 +2543,6 @@ wa-ya.sIru ta.hta 'l-jild-i
\NewDocumentCommand{\SetTranslitFont}{m}{\def\al@trans@font{#1}}
% \end{macrocode}
% \end{macro}
-% \end{macro}
% \begin{macro}{\SetTranslitStyle} By default any transliterated
% Arabic text is printed in italics. This can be changed either
% globally in the preamble or at any point of the document:
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua
index 35dccff7485..956f796bdfc 100644
--- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua
+++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua
@@ -241,7 +241,7 @@ local function fullvoc(str)
return str
end
-local function fullvoceasy(str)
+local function fullvoceasy(str, opt)
str = string.gsub(str, "\\arb(%b{})", function(inside)
inside = string.sub(inside, 2, -2)
for i = 1,#hamzafveasy do
@@ -253,8 +253,14 @@ local function fullvoceasy(str)
for i = 1,#trigraphsfveasy do
inside = string.gsub(inside, trigraphsfveasy[i].a, trigraphsfveasy[i].b)
end
- for i = 1,#digraphsfveasy do
- inside = string.gsub(inside, digraphsfveasy[i].a, digraphsfveasy[i].b)
+ if opt == "nosukun" then
+ for i = 1,#digraphsfveasy do
+ inside = string.gsub(inside, digraphsfveasy[i].a, digraphsfveasy[i].b)
+ end
+ else
+ for i = 1,#digraphsfv do
+ inside = string.gsub(inside, digraphsfv[i].a, digraphsfv[i].b)
+ end
end
for i = 1,#singlefveasy do
inside = string.gsub(inside, singlefveasy[i].a, singlefveasy[i].b)
@@ -477,7 +483,7 @@ function processvoc(str, rules, scheme)
if scheme == "buckwalter" then
str = processbuckw(str)
else end
- if rules == "easy" then
+ if rules == "easy" or rules == "easynosukun" then
str = voceasy(str)
elseif rules == "dflt" then
str = voc(str)
@@ -496,7 +502,9 @@ function processfullvoc(str, rules, scheme)
str = processbuckw(str)
else end
if rules == "easy" then
- str = fullvoceasy(str)
+ str = fullvoceasy(str, "sukun")
+ elseif rules == "easynosukun" then
+ str = fullvoceasy(str, "nosukun")
elseif rules == "dflt" then
str = fullvoc(str)
else end
@@ -513,7 +521,7 @@ function processnovoc(str, rules, scheme)
if scheme == "buckwalter" then
str = processbuckw(str)
else end
- if rules == "easy" then
+ if rules == "easy" or rules == "easynosukun" then
str = novoceasy(str)
elseif rules == "dflt" then
str = novoc(str)
@@ -532,7 +540,7 @@ function processtrans(str, mode, rules, scheme)
str = processbuckw(str)
else end
if mode == "dmg" then
- if rules == "easy" then
+ if rules == "easy" or rules == "easynosukun" then
str = transdmgeasy(str)
elseif rules == "dflt" then
str = transdmg(str)
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty
index 705bf4592b6..170ba5b2f0b 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}
\ProvidesPackage{arabluatex}%
-[2016/09/14 v1.4.3 ArabTeX-like interface for LuaLaTeX]
+[2016/09/28 v1.4.4 ArabTeX-like interface for LuaLaTeX]
\RequirePackage{ifluatex}
\ifluatex\else
\PackageError{arabluatex}{lualatex needed}{%
@@ -86,7 +86,10 @@
\def\al@input@scheme{arabtex}
\NewDocumentCommand{\SetInputScheme}{m}{\def\al@input@scheme{#1}}
\def\al@arb@rules{dflt}
-\NewDocumentCommand{\SetArbEasy}{}{\def\al@arb@rules{easy}}
+\NewDocumentCommand{\SetArbEasy}{s}{%
+ \IfBooleanTF{#1}
+ {\def\al@arb@rules{easynosukun}}
+ {\def\al@arb@rules{easy}}}
\NewDocumentCommand{\SetArbDflt}{}{\def\al@arb@rules{dflt}}
\def\al@trans@font{\rmfamily}%
\NewDocumentCommand{\SetTranslitFont}{m}{\def\al@trans@font{#1}}
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
index ae0dc4e29bf..af7dd9e7b2b 100644
--- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
+++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
@@ -503,7 +503,7 @@ digraphsfv = {
{a="%^d", b="ڊ"}
}
-digraphsfveasy = { -- see the diffenrences under 'easy' marker below
+digraphsfveasy = { -- see the differences under 'easy' marker below
-- iʿrāb: straight double quote must be discarded
{a="(%-)(\"?[UI]na)(%p?%s)", b="%2%3"},
{a="(%-)(\"?[UI]na)(%p?)$", b="%2%3"},