diff options
Diffstat (limited to 'Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua')
-rw-r--r-- | Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua | 191 |
1 files changed, 114 insertions, 77 deletions
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua index a2676e0be8f..ea7df9f69b5 100644 --- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua +++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_fullvoc.lua @@ -23,6 +23,8 @@ along with this program. If not, see --]] hamzafv = { + -- next line for ʾiʿrāb hyphen + {a="(')(%-)([uaiUAI])", b="%1%3"}, -- hard coded hamza {a="|\"'", b="ء"}, {a="A\"'", b="آ"}, @@ -51,7 +53,9 @@ hamzafv = { {a="'i'([^uaiUAI])", b="إI%1"}, -- madda (historic writing below) {a="'a'([^uaiUAI])", b="آ%1"}, - {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, + {a="([^uiUI])\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, + {a="^\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, + {a="(%W)\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, {a="(A)(')(uN?)$", b="aآء%3"}, {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, {a="(A)(')(iN?)$", b="aآء%3"}, @@ -71,7 +75,7 @@ hamzafv = { {a="([^uai])(')([uai]N?)$", b="%1ء%3"}, {a="([^uai])(')([uai]N?)(%W)", b="%1ء%3%4"}, -- u - {a="(u)(')([uai]?N)$", b="%1ؤ%3"}, + {a="(u)(')([uai]N?)$", b="%1ؤ%3"}, {a="(u)(')([uai]N?)(%W)", b="%1ؤ%3%4"}, {a="(u)(')$", b="%1ؤْ"}, {a="(u)(')(%W)", b="%1ؤْ%3"}, @@ -115,6 +119,8 @@ hamzafv = { } hamzafveasy = { -- differences marked below with 'easy' + -- next line for ʾiʿrāb hyphen + {a="(')(%-)([uaiUAI])", b="%1%3"}, -- hard coded hamza {a="|\"'", b="ء"}, {a="A\"'", b="آ"}, @@ -143,14 +149,18 @@ hamzafveasy = { -- differences marked below with 'easy' {a="'i'([^uaiUAI])", b="إI%1"}, -- madda (historic writing below) {a="'a'([^uaiUAI])", b="آ%1"}, - {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, ---easy {a="(A)(')(uN?)$", b="aآء%3"}, ---easy {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, ---easy {a="(A)(')(iN?)$", b="aآء%3"}, ---easy {a="(A)(')(iN?)(%W)", b="aآء%3%4"}, ---easy {a="(A)(')(i)", b="aآئ%3"}, -- historic madda ---easy {a="(A)(')(u)", b="aآؤ%3"}, -- historic madda ---easy {a="(A)(')", b="aآء"}, -- historic madda + {a="([^uiUI])\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, + {a="^\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, + {a="(%W)\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, + --easy (begin) + {a="(A)(')(uN?)$", b="aاء%3"}, + {a="(A)(')(uN?)(%W)", b="aاء%3%4"}, + {a="(A)(')(iN?)$", b="aاء%3"}, + {a="(A)(')(iN?)(%W)", b="aاء%3%4"}, + {a="(A)(')(i)", b="aائ%3"}, -- historic madda + {a="(A)(')(u)", b="aاؤ%3"}, -- historic madda + {a="(A)(')", b="aاء"}, -- historic madda + --easy (end) -- initial (needs both ^ and %W patterns) {a="^(')([ua])", b="أ%2"}, {a="^(')(i)", b="إ%2"}, @@ -163,7 +173,7 @@ hamzafveasy = { -- differences marked below with 'easy' {a="([^uai])(')([uai]N?)$", b="%1ء%3"}, {a="([^uai])(')([uai]N?)(%W)", b="%1ء%3%4"}, -- u - {a="(u)(')([uai]?N)$", b="%1ؤ%3"}, + {a="(u)(')([uai]N?)$", b="%1ؤ%3"}, {a="(u)(')([uai]N?)(%W)", b="%1ؤ%3%4"}, {a="(u)(')$", b="%1ؤْ"}, {a="(u)(')(%W)", b="%1ؤْ%3"}, @@ -207,73 +217,73 @@ hamzafveasy = { -- differences marked below with 'easy' } tanwinfv = { - {a="uNU", b="ٌو"}, - {a="aNU", b="ًوا"}, - {a="iNU", b="ٍو"}, - {a="([uai]N)(%s)([uai])", b="%1%2ٱ"}, - {a="(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, + {a="%-?uNU", b="ٌو"}, + {a="%-?aNU", b="ًوا"}, + {a="%-?iNU", b="ٍو"}, + {a="%-?([uai]N)(%s)([uai])", b="%1%2ٱ"}, + {a="%-?(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, -- assimilations (begin) - {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, - {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, - {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, - {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, - {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, - {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, - {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, + {a="%-?(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, + {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, + {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, + {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, + {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, + {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, + {a="%-?(iNI?)(%s)([rlmnwy])", b="ٍ%2%3%3"}, -- assimilations (end) -- quoted tanwīn (begin) - {a="(\"uN)", b=""}, - {a="(B)(\"aN)", b="%1"}, - {a="(\"aN)(_A)", b="ى"}, - {a="(\"aN)(Y)", b="ى"}, - {a="(T)(\"aN)", b="%1"}, - {a="(ء)(\"aN)", b="%1"}, - {a="([^TA])(\"aN)", b="%1ا"}, - {a="(\"iN)", b=""}, + {a="%-?(\"uN)", b=""}, + {a="(B)%-?(\"aN)", b="%1"}, + {a="%-?(\"aN)(_A)", b="ى"}, + {a="%-?(\"aN)(Y)", b="ى"}, + {a="(T)%-?(\"aN)", b="%1"}, + {a="(ء)%-?(\"aN)", b="%1"}, + {a="([^TA])%-?(\"aN)", b="%1ا"}, + {a="%-?(\"iNI?)", b=""}, -- quoted tanwīn (end) - {a="(uN)", b="ٌ"}, - {a="(B)(aN)", b="%1ً"}, - {a="(aN)(_A)", b="ًى"}, - {a="(aN)(Y)", b="ًى"}, - {a="(T)(aN)", b="%1ً"}, - {a="(ء)(aN)", b="%1ً"}, - {a="([^TA])(aN)", b="%1ًا"}, - {a="(iN)", b="ٍ"} + {a="%-?(uN)", b="ٌ"}, + {a="(B)%-?(aN)", b="%1ً"}, + {a="%-?(aN)(_A)", b="ًى"}, + {a="%-?(aN)(Y)", b="ًى"}, + {a="(T)%-?(aN)", b="%1ً"}, + {a="(ء)%-?(aN)", b="%1ً"}, + {a="([^TA])%-?(aN)", b="%1ًا"}, + {a="%-?(iNI?)", b="ٍ"} } tanwinfveasy = { -- no assimilations (see below) - {a="uNU", b="ٌو"}, - {a="aNU", b="ًوا"}, - {a="iNU", b="ٍو"}, - {a="([uai]N)(%s)([uai])", b="%1%2ٱ"}, - {a="(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, + {a="%-?uNU", b="ٌو"}, + {a="%-?aNU", b="ًوا"}, + {a="%-?iNU", b="ٍو"}, + {a="%-?([uai]N)(%s)([uai])", b="%1%2ٱ"}, + {a="%-?(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, -- assimilations (begin) ---easy {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, ---easy {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, ---easy {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, ---easy {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, ---easy {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, ---easy {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, ---easy {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, +--easy {a="%-?(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, +--easy {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, +--easy {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, +--easy {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, +--easy {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, +--easy {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, +--easy {a="%-?(iNI?)(%s)([rlmnwy])", b="ٍ%2%3%3"}, -- assimilations (end) -- quoted tanwīn (begin) - {a="(\"uN)", b=""}, - {a="(B)(\"aN)", b="%1"}, - {a="(\"aN)(_A)", b="ى"}, - {a="(\"aN)(Y)", b="ى"}, - {a="(T)(\"aN)", b="%1"}, - {a="(ء)(\"aN)", b="%1"}, - {a="([^TA])(\"aN)", b="%1ا"}, - {a="(\"iN)", b=""}, + {a="%-?(\"uN)", b=""}, + {a="(B)%-?(\"aN)", b="%1"}, + {a="%-?(\"aN)(_A)", b="ى"}, + {a="%-?(\"aN)(Y)", b="ى"}, + {a="(T)%-?(\"aN)", b="%1"}, + {a="(ء)%-?(\"aN)", b="%1"}, + {a="([^TA])%-?(\"aN)", b="%1ا"}, + {a="%-?(\"iNI?)", b=""}, -- quoted tanwīn (end) - {a="(uN)", b="ٌ"}, - {a="(B)(aN)", b="%1ً"}, - {a="(aN)(_A)", b="ًى"}, - {a="(aN)(Y)", b="ًى"}, - {a="(T)(aN)", b="%1ً"}, - {a="(ء)(aN)", b="%1ً"}, - {a="([^TA])(aN)", b="%1ًا"}, - {a="(iN)", b="ٍ"} + {a="%-?(uN)", b="ٌ"}, + {a="(B)%-?(aN)", b="%1ً"}, + {a="%-?(aN)(_A)", b="ًى"}, + {a="%-?(aN)(Y)", b="ًى"}, + {a="(T)%-?(aN)", b="%1ً"}, + {a="(ء)%-?(aN)", b="%1ً"}, + {a="([^TA])%-?(aN)", b="%1ًا"}, + {a="%-?(iNI?)", b="ٍ"} } trigraphsfv = { -- trigraphs or more @@ -290,10 +300,10 @@ trigraphsfv = { -- trigraphs or more {a="^(a)([%_%^%.]?[tdrzsn])%-", b="ا%1ل%2"}, {a="([%s%-])(a)([%_%^%.]?[tdrzsn])%-", b="%1ا%2ل%3"}, -- al- + initial unstable hamza - {a="^(a)l%-(\"?[uai])", b="ا%1لٱ%2"}, - {a="([%s%-])(a)l%-(\"?[uai])", b="%1ا%2لٱ%3"}, + {a="^(a)l%-(\"?[uai])", b="ا%1ل%2ٱ"}, + {a="([%s%-])(a)l%-(\"?[uai])", b="%1ا%2ل%3ٱ"}, -- li-/la + art. + initial unstable hamza is a special orthography - {a="l([ai])%-l%-(\"?[uai])", b="ل%1لٱ%2"}, + {a="l([ai])%-l%-(\"?[uai])", b="ل%1ل%2ٱ"}, -- al- + lunar consonant (i.e. what remains) {a="^(a)l%-", b="ا%1لْ"}, {a="([%s%-])(a)l%-", b="%1ا%2لْ"}, @@ -314,7 +324,7 @@ trigraphsfv = { -- trigraphs or more -- li-/la- + assim. art. + solar consonant is a special orthography {a="l([ai])%-([%_%^%.]?[tdrzsn])%-([%_%^%.]?[tdrzsn])", b="ل%1ل%3%3"}, -- art. with waṣla + initial unstable hamza - {a="'l%-(\"?[uai])", b="ٱلٱ%1"}, + {a="'l%-(\"?[uai])", b="ٱل%1ٱ"}, -- art. with waṣla + lunar consonant (i.e. what remains) {a="'l%-", b="ٱلْ"}, -- the silent wāw @@ -346,10 +356,10 @@ trigraphsfveasy = { -- trigraphs or more (see 'easy' tag below for the diffs) {a="^(a)([%_%^%.]?[tdrzsn])%-", b="ا%1ل%2"}, {a="([%s%-])(a)([%_%^%.]?[tdrzsn])%-", b="%1ا%2ل%3"}, -- al- + initial unstable hamza - {a="^(a)l%-(\"?[uai])", b="ا%1لٱ%2"}, - {a="([%s%-])(a)l%-(\"?[uai])", b="%1ا%2لٱ%3"}, + {a="^(a)l%-(\"?[uai])", b="ا%1ل%2ٱ"}, + {a="([%s%-])(a)l%-(\"?[uai])", b="%1ا%2ل%3ٱ"}, -- li-/la + art. + initial unstable hamza is a special orthography - {a="l([ai])%-l%-(\"?[uai])", b="ل%1لٱ%2"}, + {a="l([ai])%-l%-(\"?[uai])", b="ل%1ل%2ٱ"}, -- al- + lunar consonant (i.e. what remains) {a="^(a)l%-", b="ا%1لْ"}, {a="([%s%-])(a)l%-", b="%1ا%2لْ"}, @@ -370,7 +380,7 @@ trigraphsfveasy = { -- trigraphs or more (see 'easy' tag below for the diffs) -- li-/la- + assim. art. + solar consonant is a special orthography {a="l([ai])%-([%_%^%.]?[tdrzsn])%-([%_%^%.]?[tdrzsn])", b="ل%1ل%3%3"}, -- art. with waṣla + initial unstable hamza - {a="'l%-(\"?[uai])", b="ٱلٱ%1"}, + {a="'l%-(\"?[uai])", b="ٱل%1ٱ"}, -- art. with waṣla + lunar consonant (i.e. what remains) {a="'l%-", b="ٱلْ"}, -- the silent wāw @@ -389,6 +399,18 @@ trigraphsfveasy = { -- trigraphs or more (see 'easy' tag below for the diffs) } digraphsfv = { + -- iʿrāb: straight double quote must be discarded + {a="(%-)(\"?[UI]na)(%p?%s)", b="%2%3"}, + {a="(%-)(\"?[UI]na)(%p?)$", b="%2%3"}, + {a="(%-)(\"?At[ui])(%p?%s)", b="%2%3"}, + {a="(%-)(\"?At[ui])(%p?)$", b="%2%3"}, + {a="(%-)(\"?Ani)(%p?%s)", b="%2%3"}, + {a="(%-)(\"?Ani)(%p?)$", b="%2%3"}, + {a="(%-)(\"?ayni)(%p?%s)", b="%2%3"}, + {a="(%-)(\"?ayni)(%p?)$", b="%2%3"}, + {a="(%-)(\"?[uai])(%p?%s)", b="%2%3"}, + {a="(%-)(\"?[uai])(%p?)$", b="%2%3"}, + -- ʾiʿrāb (end) -- initial straight double quote gives a connective ʾalif {a="^\"[uai]", b="ٱ"}, {a="([%s%-])\"[uai]", b="%1ٱ"}, @@ -436,9 +458,11 @@ digraphsfv = { {a="ww", b="وّ"}, {a="yy", b="يّ"}, -- sukūn begin + -- first, take out hyphen if any: + {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uaiUAI])", b="%1%2"}, {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])$", b="%1ْ"}, {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%s])", b="%1ْ%2"}, - {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIًٌٍ])", b="%1ْ%2"}, + {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_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"}, @@ -474,6 +498,18 @@ digraphsfv = { } digraphsfveasy = { -- see the diffenrences 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"}, + {a="(%-)(\"?At[ui])(%p?%s)", b="%2%3"}, + {a="(%-)(\"?At[ui])(%p?)$", b="%2%3"}, + {a="(%-)(\"?Ani)(%p?%s)", b="%2%3"}, + {a="(%-)(\"?Ani)(%p?)$", b="%2%3"}, + {a="(%-)(\"?ayni)(%p?%s)", b="%2%3"}, + {a="(%-)(\"?ayni)(%p?)$", b="%2%3"}, + {a="(%-)(\"?[uai])(%p?%s)", b="%2%3"}, + {a="(%-)(\"?[uai])(%p?)$", b="%2%3"}, + -- ʾiʿrāb (end) -- initial straight double quote gives a connective ʾalif {a="^\"[uai]", b="ٱ"}, {a="([%s%-])\"[uai]", b="%1ٱ"}, @@ -524,6 +560,8 @@ digraphsfveasy = { -- see the diffenrences under 'easy' marker below -- first take out every previously generated sukūn by hamza rules, -- 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%`fqklmnwy])$", b="%1ْ"}, -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%s])", b="%1ْ%2"}, -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIًٌٍ])", b="%1ْ%2"}, @@ -618,4 +656,3 @@ singlefveasy = { -- see the differences under 'easy' tag below {a="([^0-9])%-([^0-9])", b="%1%2"}, {a="B", b="ـ"}, } - |