diff options
Diffstat (limited to 'arabluatex_voc.lua')
-rw-r--r-- | arabluatex_voc.lua | 46 |
1 files changed, 34 insertions, 12 deletions
diff --git a/arabluatex_voc.lua b/arabluatex_voc.lua index 878f351..b7550e5 100644 --- a/arabluatex_voc.lua +++ b/arabluatex_voc.lua | |||
@@ -72,6 +72,8 @@ raw = { | |||
72 | } | 72 | } |
73 | 73 | ||
74 | hamza = { | 74 | hamza = { |
75 | -- next line for ʾiʿrāb hyphen | ||
76 | {a="(')(%-)([uaiUAI])", b="%1%3"}, | ||
75 | -- hard coded hamza | 77 | -- hard coded hamza |
76 | {a="|\"'", b="ء"}, | 78 | {a="|\"'", b="ء"}, |
77 | {a="A\"'", b="آ"}, | 79 | {a="A\"'", b="آ"}, |
@@ -91,7 +93,8 @@ hamza = { | |||
91 | {a="'i'([^uaiUAI])", b="إI%1"}, | 93 | {a="'i'([^uaiUAI])", b="إI%1"}, |
92 | -- madda (historic writing below) | 94 | -- madda (historic writing below) |
93 | {a="'a'([^uaiUAI])", b="آ%1"}, | 95 | {a="'a'([^uaiUAI])", b="آ%1"}, |
94 | {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, | 96 | --tmp {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, |
97 | {a="([^UIui])'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | ||
95 | {a="(A)(')(uN?)$", b="aآء%3"}, | 98 | {a="(A)(')(uN?)$", b="aآء%3"}, |
96 | {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, | 99 | {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, |
97 | {a="(A)(')(iN?)$", b="aآء%3"}, | 100 | {a="(A)(')(iN?)$", b="aآء%3"}, |
@@ -111,7 +114,7 @@ hamza = { | |||
111 | {a="([^uai])(')([uai]N?)$", b="%1ء%3"}, | 114 | {a="([^uai])(')([uai]N?)$", b="%1ء%3"}, |
112 | {a="([^uai])(')([uai]N?)(%W)", b="%1ء%3%4"}, | 115 | {a="([^uai])(')([uai]N?)(%W)", b="%1ء%3%4"}, |
113 | -- u | 116 | -- u |
114 | {a="(u)(')([uai]?N)$", b="%1ؤ%3"}, | 117 | {a="(u)(')([uai]N?)$", b="%1ؤ%3"}, |
115 | {a="(u)(')([uai]N?)(%W)", b="%1ؤ%3%4"}, | 118 | {a="(u)(')([uai]N?)(%W)", b="%1ؤ%3%4"}, |
116 | {a="(u)(')$", b="%1ؤ"}, | 119 | {a="(u)(')$", b="%1ؤ"}, |
117 | {a="(u)(')(%W)", b="%1ؤ%3"}, | 120 | {a="(u)(')(%W)", b="%1ؤ%3"}, |
@@ -155,6 +158,8 @@ hamza = { | |||
155 | } | 158 | } |
156 | 159 | ||
157 | hamzaeasy = { -- differences marked below with 'easy' | 160 | hamzaeasy = { -- differences marked below with 'easy' |
161 | -- next line for ʾiʿrāb hyphen | ||
162 | {a="(')(%-)([uaiUAI])", b="%1%3"}, | ||
158 | -- hard coded hamza | 163 | -- hard coded hamza |
159 | {a="|\"'", b="ء"}, | 164 | {a="|\"'", b="ء"}, |
160 | {a="A\"'", b="آ"}, | 165 | {a="A\"'", b="آ"}, |
@@ -174,14 +179,17 @@ hamzaeasy = { -- differences marked below with 'easy' | |||
174 | {a="'i'([^uaiUAI])", b="إI%1"}, | 179 | {a="'i'([^uaiUAI])", b="إI%1"}, |
175 | -- madda (historic writing below) | 180 | -- madda (historic writing below) |
176 | {a="'a'([^uaiUAI])", b="آ%1"}, | 181 | {a="'a'([^uaiUAI])", b="آ%1"}, |
177 | {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, | 182 | --tmp {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, |
178 | --easy {a="(A)(')(uN?)$", b="aآء%3"}, | 183 | {a="([^UIui])'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, |
179 | --easy {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, | 184 | --easy (begin) |
180 | --easy {a="(A)(')(iN?)$", b="aآء%3"}, | 185 | {a="(A)(')(uN?)$", b="aاء%3"}, |
181 | --easy {a="(A)(')(iN?)(%W)", b="aآء%3%4"}, | 186 | {a="(A)(')(uN?)(%W)", b="aاء%3%4"}, |
182 | --easy {a="(A)(')(i)", b="aآئ%3"}, -- historic madda | 187 | {a="(A)(')(iN?)$", b="aاء%3"}, |
183 | --easy {a="(A)(')(u)", b="aآؤ%3"}, -- historic madda | 188 | {a="(A)(')(iN?)(%W)", b="aاء%3%4"}, |
184 | --easy {a="(A)(')", b="aآء"}, -- historic madda | 189 | {a="(A)(')(i)", b="aائ%3"}, -- historic madda |
190 | {a="(A)(')(u)", b="aاؤ%3"}, -- historic madda | ||
191 | {a="(A)(')", b="aاء"}, -- historic madda | ||
192 | --easy (end) | ||
185 | -- initial (needs both ^ and %W patterns) | 193 | -- initial (needs both ^ and %W patterns) |
186 | {a="^(')([ua])", b="أ%2"}, | 194 | {a="^(')([ua])", b="أ%2"}, |
187 | {a="^(')(i)", b="إ%2"}, | 195 | {a="^(')(i)", b="إ%2"}, |
@@ -194,7 +202,7 @@ hamzaeasy = { -- differences marked below with 'easy' | |||
194 | {a="([^uai])(')([uai]N?)$", b="%1ء%3"}, | 202 | {a="([^uai])(')([uai]N?)$", b="%1ء%3"}, |
195 | {a="([^uai])(')([uai]N?)(%W)", b="%1ء%3%4"}, | 203 | {a="([^uai])(')([uai]N?)(%W)", b="%1ء%3%4"}, |
196 | -- u | 204 | -- u |
197 | {a="(u)(')([uai]?N)$", b="%1ؤ%3"}, | 205 | {a="(u)(')([uai]N?)$", b="%1ؤ%3"}, |
198 | {a="(u)(')([uai]N?)(%W)", b="%1ؤ%3%4"}, | 206 | {a="(u)(')([uai]N?)(%W)", b="%1ؤ%3%4"}, |
199 | {a="(u)(')$", b="%1ؤ"}, | 207 | {a="(u)(')$", b="%1ؤ"}, |
200 | {a="(u)(')(%W)", b="%1ؤ%3"}, | 208 | {a="(u)(')(%W)", b="%1ؤ%3"}, |
@@ -424,11 +432,25 @@ trigraphseasy = { -- differences marked below with 'easy' | |||
424 | } | 432 | } |
425 | 433 | ||
426 | digraphs = { | 434 | digraphs = { |
435 | -- ʾiʿrāb: straight double quote must be discarded | ||
436 | {a="(%-)(\"?[UI]na)(%p?%s)", b="%2%3"}, | ||
437 | {a="(%-)(\"?[UI]na)(%p?)$", b="%2%3"}, | ||
438 | {a="(%-)(\"?At[ui])(%p?%s)", b="%2%3"}, | ||
439 | {a="(%-)(\"?At[ui])(%p?)$", b="%2%3"}, | ||
440 | {a="(%-)(\"?Ani)(%p?%s)", b="%2%3"}, | ||
441 | {a="(%-)(\"?Ani)(%p?)$", b="%2%3"}, | ||
442 | {a="(%-)(\"?ayni)(%p?%s)", b="%2%3"}, | ||
443 | {a="(%-)(\"?ayni)(%p?)$", b="%2%3"}, | ||
444 | {a="(%-)(\"?[uai])(%p?%s)", b="%2%3"}, | ||
445 | {a="(%-)(\"?[uai])(%p?)$", b="%2%3"}, | ||
446 | -- ʾiʿrāb (end) | ||
427 | -- initial straight double quote gives a connective ʾalif | 447 | -- initial straight double quote gives a connective ʾalif |
428 | {a="^\"[uai]", b="ٱ"}, | 448 | {a="^\"[uai]", b="ٱ"}, |
429 | {a="([%s%-])\"[uai]", b="%1ٱ"}, | 449 | {a="([%s%-])\"[uai]", b="%1ٱ"}, |
430 | {a="(aW)(%s)([uai])", b="awuا%2%3"}, | 450 | {a="(aW)(%s)([uai])", b="awuا%2%3"}, |
431 | {a="(%-)([uai])", b="%1ا%2"}, -- hyphen + initial alif without hamza | 451 | --tmp-out {a="(%-)([uai])", b="%1ا%2"}, -- hyphen + initial alif without hamza |
452 | --tmp-added hyphen + initial alif without hamza: | ||
453 | {a="(%-)([uai])([%^%_%.%`]?)(%a)", b="%1ا%2%3%4"}, | ||
432 | {a="^([uai])", b="ا%1"}, -- initial alif without hamza | 454 | {a="^([uai])", b="ا%1"}, -- initial alif without hamza |
433 | {a="(%s)([uai])", b="%1ا%2"}, -- initial alif without hamza | 455 | {a="(%s)([uai])", b="%1ا%2"}, -- initial alif without hamza |
434 | {a="%-%-", b="ـ"}, | 456 | {a="%-%-", b="ـ"}, |