summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-07-05 21:09:03 +0000
committerKarl Berry <karl@freefriends.org>2017-07-05 21:09:03 +0000
commitef1531fb8bdf4a1e28e97cc10e3aacd9228e7d0c (patch)
treeffb320f47bca9a18c20a5f9436dc0c73f737ad64 /Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
parent1481c02c171fb8ab30680dc4f3fbc5b872f2de16 (diff)
arabluatex (5jul17)
git-svn-id: svn://tug.org/texlive/trunk@44754 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua')
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua60
1 files changed, 44 insertions, 16 deletions
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
index 99efb752791..919a35ed2a3 100644
--- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
+++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua
@@ -25,6 +25,12 @@ along with this program. If not, see
hamzafv = {
-- next line for ʾiʿrāb hyphen
{a="(')(%-)([uaiUAI])", b="%1%3"},
+ -- next lines for ʾalif alone
+ {a="(%.A)([uai]?)l%-(%^n)", b="ا%2ل%3"}, --additional (^n is lunar)
+ {a="([%(%[%|%<%s%-o])(%.A)([uai]?)l%-(%^n)", b="%1ا%3%4"}, --additional (^n is lunar) --p
+ {a="(%.A)([uai]?)l%-([%_%^%.]?[tdrzsnc])", b="ا%2ل%3%3"},
+ {a="([%(%[%|%<%s%-o])(%.A)([uai]?)l%-([%_%^%.]?[tdrzsnc])", b="%1ا%3ل%4%4"}, --p
+ {a="%.A", b="ا"},
-- hard coded hamza
{a="|\"'", b="ء"},
{a="A\"'", b="آ"},
@@ -78,14 +84,19 @@ hamzafv = {
-- then the 'initial' rules for the remaining cases
{a="^(')([ua])", b="أ%2"},
{a="^(')(i)", b="إ%2"},
- {a="(%W)(')([ua])", b="%1أ%3"},
- {a="(%W)(')(i)", b="%1إ%3"},
+ -- consider replacing initial %W with [%s%(%[%<%-]:
+ -- {a="(%W)(')([ua])", b="%1أ%3"},
+ -- {a="(%W)(')(i)", b="%1إ%3"},
+ {a="([%s%(%[%<%-])(')([ua])", b="%1أ%3"},
+ {a="([%s%(%[%<%-])(')(i)", b="%1إ%3"},
-- final
-- ^say'aN and .zim'aN are special orthographies
- {a="(%^say)(%')(aN)", b="%1ئ%3"},
+ {a="(%^sa%.?[yY])(\"?%|?)(%')(aN)", b="%1%2ئ%4"},
{a="(.zi?m)(%')(aN)", b="%1ئ%3"},
- {a="(')(I%p?)$", b="إ%2"}, -- affix pr. 1st person sg.
- {a="(')(I)(%p?%s)", b="إ%2%3"}, -- affix pr. 1st person sg.
+ -- hamzah + pr. suffix: the carrier passes into yāʾ before ī so
+ -- take out the following two lines:
+ -- {a="(')(I%p?)$", b="إ%2"}, -- affix pr. 1st person sg.
+ -- {a="(')(I)(%p?%s)", b="إ%2%3"}, -- affix pr. 1st person sg.
{a="([^uai])(')([uai]N?%p?)$", b="%1ء%3"},
{a="([^uai])(')([uai]N?)(%p?%s)", b="%1ء%3%4"},
-- u
@@ -135,6 +146,12 @@ hamzafv = {
hamzafveasy = { -- differences marked below with 'easy'
-- next line for ʾiʿrāb hyphen
{a="(')(%-)([uaiUAI])", b="%1%3"},
+ -- next lines for ʾalif alone
+ {a="(%.A)([uai]?)l%-(%^n)", b="ا%2ل%3"}, --additional (^n is lunar)
+ {a="([%(%[%|%<%s%-o])(%.A)([uai]?)l%-(%^n)", b="%1ا%3%4"}, --additional (^n is lunar) --p
+ {a="(%.A)([uai]?)l%-([%_%^%.]?[tdrzsnc])", b="ا%2ل%3%3"},
+ {a="([%(%[%|%<%s%-o])(%.A)([uai]?)l%-([%_%^%.]?[tdrzsnc])", b="%1ا%3ل%4%4"}, --p
+ {a="%.A", b="ا"},
-- hard coded hamza
{a="|\"'", b="ء"},
{a="A\"'", b="آ"},
@@ -190,14 +207,19 @@ hamzafveasy = { -- differences marked below with 'easy'
-- then the 'initial' rules for the remaining cases
{a="^(')([ua])", b="أ%2"},
{a="^(')(i)", b="إ%2"},
- {a="(%W)(')([ua])", b="%1أ%3"},
- {a="(%W)(')(i)", b="%1إ%3"},
+ -- consider replacing initial %W with [%s%(%[%<%-]:
+ -- {a="(%W)(')([ua])", b="%1أ%3"},
+ -- {a="(%W)(')(i)", b="%1إ%3"},
+ {a="([%s%(%[%<%-])(')([ua])", b="%1أ%3"},
+ {a="([%s%(%[%<%-])(')(i)", b="%1إ%3"},
-- final
-- ^say'aN and .zim'aN are special orthographies
- {a="(%^say)(%')(aN)", b="%1ئ%3"},
+ {a="(%^sa%.?[yY])(\"?%|?)(%')(aN)", b="%1%2ئ%4"},
{a="(.zi?m)(%')(aN)", b="%1ئ%3"},
- {a="(')(I%p?)$", b="إ%2"}, -- affix pr. 1st person sg.
- {a="(')(I)(%p?%s)", b="إ%2%3"}, -- affix pr. 1st person sg.
+ -- hamzah + pr. suffix: the carrier passes into yāʾ before ī so
+ -- take out the following two lines:
+ -- {a="(')(I%p?)$", b="إ%2"}, -- affix pr. 1st person sg.
+ -- {a="(')(I)(%p?%s)", b="إ%2%3"}, -- affix pr. 1st person sg.
{a="([^uai])(')([uai]N?%p?)$", b="%1ء%3"},
{a="([^uai])(')([uai]N?)(%p?%s)", b="%1ء%3%4"},
-- u
@@ -565,6 +587,7 @@ digraphsfvidgham = {
{a="hh", b="هّ"},
{a="ww", b="وّ"},
{a="yy", b="يّ"},
+ {a="%.y%.y", b="ىّ"},
-- additional characters + šaddah (begin)
{a="pp", b="پّ"},
{a="vv", b="ڤّ"},
@@ -575,10 +598,10 @@ digraphsfvidgham = {
-- additional characters + šaddah (end)
-- sukūn begin
-- first, take out hyphen if any:
- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uaiUAI])", b="%1%2"},
+ {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwyY])%-([uaiUAI])", b="%1%2"},
{a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy]%p?)$", b="%1ْ"},
{a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])(%p?%s)", b="%1ْ%2"},
- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIYًٌٍ])", b="%1ْ%2"},
+ {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwyY])([%_]?[^%_uaiUAIYًٌٍ])", b="%1ْ%2"},
-- take out sukūn in cases of assimilation
{a="(n)(ْ)(%s)(ر)", b="%1%3%4"},
{a="(n)(ْ)(%s)(و)", b="%1%3%4"},
@@ -599,6 +622,7 @@ digraphsfvidgham = {
{a="%.t", b="ط"},
{a="%.z", b="ظ"},
{a="%.g", b="غ"},
+ {a="%.y", b="ى"},
-- additional characters (begin)
{a="%^c", b="چ"},
{a="%^z", b="ژ"},
@@ -688,6 +712,7 @@ digraphsfv = {
{a="hh", b="هّ"},
{a="ww", b="وّ"},
{a="yy", b="يّ"},
+ {a="%.y%.y", b="ىّ"},
-- additional characters + šaddah (begin)
{a="pp", b="پّ"},
{a="vv", b="ڤّ"},
@@ -698,10 +723,10 @@ digraphsfv = {
-- additional characters + šaddah (end)
-- sukūn begin
-- first, take out hyphen if any:
- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uaiUAI])", b="%1%2"},
+ {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwyY])%-([uaiUAI])", b="%1%2"},
{a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy]%p?)$", b="%1ْ"},
{a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])(%p?%s)", b="%1ْ%2"},
- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIYًٌٍ])", b="%1ْ%2"},
+ {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwyY])([%_]?[^%_uaiUAIYًٌٍ])", b="%1ْ%2"},
-- take out sukūn in cases of assimilation
-- {a="(n)(ْ)(%s)(ر)", b="%1%3%4"},
-- {a="(n)(ْ)(%s)(و)", b="%1%3%4"},
@@ -722,6 +747,7 @@ digraphsfv = {
{a="%.t", b="ط"},
{a="%.z", b="ظ"},
{a="%.g", b="غ"},
+ {a="%.y", b="ى"},
-- additional characters (begin)
{a="%^c", b="چ"},
{a="%^z", b="ژ"},
@@ -811,6 +837,7 @@ digraphsfveasy = { -- see the differences under 'easy' marker below
{a="hh", b="هّ"},
{a="ww", b="وّ"},
{a="yy", b="يّ"},
+ {a="%.y%.y", b="ىّ"},
-- additional characters + šaddah (begin)
{a="pp", b="پّ"},
{a="vv", b="ڤّ"},
@@ -824,10 +851,10 @@ digraphsfveasy = { -- see the differences under 'easy' marker below
-- so there be no need to edit them:
{a="ْ", b=""},
-- first, take out hyphen if any:
--- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uaiUAI])", b="%1%2"},
+-- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwyY])%-([uaiUAI])", b="%1%2"},
-- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy]%p?)$", b="%1ْ"},
-- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])(%p?%s)", b="%1ْ%2"},
--- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIًٌٍ])", b="%1ْ%2"},
+-- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwyY])([%_]?[^%_uaiUAIًٌٍ])", b="%1ْ%2"},
-- take out sukūn in cases of assimilation
-- {a="(n)(ْ)(%s)(ر)", b="%1%3%4"},
-- {a="(n)(ْ)(%s)(و)", b="%1%3%4"},
@@ -848,6 +875,7 @@ digraphsfveasy = { -- see the differences under 'easy' marker below
{a="%.t", b="ط"},
{a="%.z", b="ظ"},
{a="%.g", b="غ"},
+ {a="%.y", b="ى"},
-- additional characters (begin)
{a="%^c", b="چ"},
{a="%^z", b="ژ"},