diff options
author | Karl Berry <karl@freefriends.org> | 2017-07-05 21:09:03 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-07-05 21:09:03 +0000 |
commit | ef1531fb8bdf4a1e28e97cc10e3aacd9228e7d0c (patch) | |
tree | ffb320f47bca9a18c20a5f9436dc0c73f737ad64 /Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_trans.lua | |
parent | 1481c02c171fb8ab30680dc4f3fbc5b872f2de16 (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_trans.lua')
-rw-r--r-- | Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_trans.lua | 52 |
1 files changed, 44 insertions, 8 deletions
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_trans.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_trans.lua index 35f4b677cf6..404ae220a58 100644 --- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_trans.lua +++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex_trans.lua @@ -31,7 +31,8 @@ punctuationtr = { nulltr = { {a="%|", b=""}, - {a="o[%S]-o", b=""} + {a="o[%S]-o", b=""}, + {a="[%^%_](.)", b="<??>%1"} } -- cap @@ -71,6 +72,17 @@ captr = { -- dmg hamzatrdmg = { + -- next lines for ʾalif alone + {a="(%.A)l%-(%^n)", b=".|l-%2"}, --additional (^n is lunar) + {a="([%(%[%|%<%s%-o])(%.A)l%-(%^n)", b="%1.|l-%3"}, --additional (^n is lunar) --p + {a="(%.A)l%-([%_%^%.]?[tdrzsnc])", b=".|%2-%2"}, + {a="([%(%[%|%<%s%-o])(%.A)l%-([%_%^%.]?[tdrzsnc])", b="%1.|%3-%3"}, --p + {a="(%.A)([uai])l%-(%^n)", b="||%2l-%3"}, --additional (^n is lunar) + {a="([%(%[%|%<%s%-o])(%.A)([uai])l%-(%^n)", b="%1||%3l-%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)([^uai])", b=".|%2"}, + {a="(%.A)([uai])", b="||%2"}, -- hard coded hamza {a="|\"'", b="ʾ"}, {a="A\"'", b="ʾA"}, @@ -108,8 +120,11 @@ hamzatrdmg = { -- 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 {a="([Iy])(')(aN)$", b="%1ʾ%3"}, {a="([Iy])(')(aN)(%W)", b="%1ʾ%3%4"}, @@ -243,7 +258,7 @@ trigraphstrdmg = { -- trigraphs or more {a="'l%-(%^n)", b="'l-%1"}, -- ^n is lunar {a="'l%-([%_%^%.]?[tdrzsnc])", b="'%1-%1"}, -- li-/la- + art. + lām - {a="l([ai])%-l%-(l)", b="l%1-%2%2"}, + {a="l([ai])%-l%-(l)", b="l%1-%2-%2"}, -- assim. art. with waṣla + solar consonant -- ('c' and '^n' are additional characters) {a="'(%^n)%-", b="'l-"}, -- ^n is lunar @@ -365,6 +380,7 @@ digraphstrdmg = { {a="%.t", b="ṭ"}, {a="%.z", b="ẓ"}, {a="%.g", b="ġ"}, + {a="%.y", b="y"}, -- additional characters (begin) {a="%^c", b="č"}, {a="%^z", b="ž"}, @@ -419,6 +435,8 @@ longvtrdmg = { {a="A", b="ā"}, {a="U", b="ū"}, {a="I", b="ī"}, + {a="aY", b="ay"}, + {a="iY", b="ī"}, {a="Y", b="ạ̄"} } @@ -431,6 +449,9 @@ shortvtrdmg = { -- loc hamzatrloc = { + -- next lines for ʾalif alone + {a="(%.A)([^uai])", b=".|%2"}, + {a="(%.A)([uai])", b="||%2"}, -- hard coded hamza {a="|\"'", b="ʾ"}, {a="A\"'", b="ʾA"}, @@ -468,8 +489,11 @@ hamzatrloc = { -- initial (needs both ^ and %W patterns) {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 {a="([Iy])(')(aN)$", b="%1ʾ%3"}, {a="([Iy])(')(aN)(%W)", b="%1ʾ%3%4"}, @@ -610,6 +634,7 @@ digraphstrloc = { {a="%.t", b="ṭ"}, {a="%.z", b="ẓ"}, {a="%.g", b="gh"}, + {a="%.y", b="y"}, -- additional characters (begin) {a="%^c", b="ch"}, {a="%^z", b="zh"}, @@ -663,6 +688,8 @@ longvtrloc = { {a="A", b="ā"}, {a="U", b="ū"}, {a="I", b="ī"}, + {a="aY", b="ay"}, + {a="iY", b="ī"}, {a="Y", b="á"}, } @@ -679,6 +706,9 @@ finaltrloc = { -- arabica hamzatrarabica = { -- ≠ from hamzatrloc: initial hamza has to be held + -- next lines for ʾalif alone + {a="(%.A)([^uai])", b=".|%2"}, + {a="(%.A)([uai])", b="||%2"}, -- hard coded hamza {a="|\"'", b="ʾ"}, {a="A\"'", b="ʾA"}, @@ -717,8 +747,11 @@ hamzatrarabica = { -- ≠ from hamzatrloc: initial hamza has to be held -- hold it for now (see below, beginning of digraphs table) {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 {a="([Iy])(')(aN)$", b="%1ʾ%3"}, {a="([Iy])(')(aN)(%W)", b="%1ʾ%3%4"}, @@ -846,6 +879,7 @@ digraphstrarabica = { {a="%.t", b="ṭ"}, {a="%.z", b="ẓ"}, {a="%.g", b="ġ"}, + {a="%.y", b="y"}, -- additional characters (begin) {a="%^c", b="č"}, {a="%^z", b="ž"}, @@ -896,6 +930,8 @@ singletrarabica = { } longvtrarabica = { + {a="aY", b="ay"}, + {a="iY", b="ī"}, {a="[AY]", b="ā"}, {a="U", b="ū"}, {a="I", b="ī"} |