summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_voc.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_voc.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_voc.lua')
-rw-r--r--Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_voc.lua49
1 files changed, 38 insertions, 11 deletions
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_voc.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_voc.lua
index 6c63a883c49..ca1aa99ca87 100644
--- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_voc.lua
+++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_voc.lua
@@ -170,6 +170,12 @@ buckwalter = {
hamza = {
-- 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="آ"},
@@ -214,14 +220,19 @@ hamza = {
-- 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
@@ -271,6 +282,12 @@ hamza = {
hamzaeasy = { -- differences marked below with 'easy'
-- next line for ʾiʿrāb hyphen
{a="(')(%-)([uaiUAI])", b="%1%3"},
+ -- next lines for ʾalif alone (easy)
+ {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"},
+ {a="([%(%[%|%<%s%-o])(%.A)([uai]?)l%-([%_%^%.]?[tdrzsnc])", b="%1ا%3ل%4"}, --p
+ {a="%.A", b="ا"},
-- hard coded hamza
{a="|\"'", b="ء"},
{a="A\"'", b="آ"},
@@ -317,14 +334,19 @@ hamzaeasy = { -- 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
@@ -695,6 +717,7 @@ digraphs = {
{a="hh", b="هّ"},
{a="ww", b="وّ"},
{a="yy", b="يّ"},
+ {a="%.y%.y", b="ىّ"},
-- additional characters + šaddah (begin)
{a="pp", b="پّ"},
{a="vv", b="ڤّ"},
@@ -714,6 +737,7 @@ digraphs = {
{a="%.t", b="ط"},
{a="%.z", b="ظ"},
{a="%.g", b="غ"},
+ {a="%.y", b="ى"},
-- additional characters (begin)
{a="%^c", b="چ"},
{a="%^z", b="ژ"},
@@ -776,6 +800,8 @@ longv = {
{a="A", b="َا"},
{a="U", b="ُو"},
{a="I", b="ِي"},
+ {a="aY", b="aى"},
+ {a="iY", b="iى"},
{a="Y", b="aى"}
}
@@ -816,5 +842,6 @@ punctuation = {
null = {
{a="%|", b=""},
{a="([^0-9])(%-)", b="%1"},
- {a="o[%S]-o", b=""}
+ {a="o[%S]-o", b=""},
+ {a="[%^%_](.)", b=">??<%1"}
}