diff options
author | Karl Berry <karl@freefriends.org> | 2016-09-28 22:19:34 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2016-09-28 22:19:34 +0000 |
commit | d2436f368c34455ebfcc7d630701e8ab11162ddd (patch) | |
tree | e8d8cedb43065d83f3181c3519def156079cea61 /Master | |
parent | 39423c7609af97d780fc0830ddd09a16a2d025c2 (diff) |
arabluatex (28sep16)
git-svn-id: svn://tug.org/texlive/trunk@42174 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf | bin | 329503 -> 331557 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/lualatex/arabluatex/arabluatex.dtx | 45 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua | 22 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.sty | 7 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua | 2 |
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 Binary files differindex 496bd53c98e..78eb7c45824 100644 --- a/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf +++ b/Master/texmf-dist/doc/lualatex/arabluatex/arabluatex.pdf 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"}, |