diff options
-rw-r--r-- | arabluatex.dtx | 113 | ||||
-rw-r--r-- | arabluatex_fullvoc.lua | 129 | ||||
-rw-r--r-- | arabluatex_novoc.lua | 52 | ||||
-rw-r--r-- | arabluatex_trans.lua | 23 | ||||
-rw-r--r-- | arabluatex_voc.lua | 116 |
5 files changed, 254 insertions, 179 deletions
diff --git a/arabluatex.dtx b/arabluatex.dtx index 613257b..52dc19f 100644 --- a/arabluatex.dtx +++ b/arabluatex.dtx | |||
@@ -448,9 +448,10 @@ | |||
448 | % corresponding \arb[trans]{tanwIn} (\arb{BuN}, \arb{B|aN}\,, | 448 | % corresponding \arb[trans]{tanwIn} (\arb{BuN}, \arb{B|aN}\,, |
449 | % \arb{TaN}, \arb{BaN_A} or \arb{BiN}) is generated. Finally, \meta{u, | 449 | % \arb{TaN}, \arb{BaN_A} or \arb{BiN}) is generated. Finally, \meta{u, |
450 | % a, i} at the commencement of a word indicate a \enquote{connective | 450 | % a, i} at the commencement of a word indicate a \enquote{connective |
451 | % \arb[trans]{'alif}\,} (\arb[trans]{'alifu 'l-wa.sli}), but |voc| mode | 451 | % \arb[trans]{'alif}\,} (\arb[trans]{'alifu 'l-wa.sli}), but |voc| |
452 | % does not show the \arb[trans]{wa.slaT} above the \arb[trans]{'alif}; | 452 | % mode does not show the \arb[trans]{wa.slaT} above the |
453 | % instead, the accompanying vowel is expressed (\arb{u a i}). | 453 | % \arb[trans]{'alif}; instead, the accompanying vowel may be expressed |
454 | % at the beginning of a sentence (\arb{u} \arb{a} \arb{i}). | ||
454 | % | 455 | % |
455 | % \DescribeOption{fullvoc}\\ \label{fullvoc-mode}In addition to what | 456 | % \DescribeOption{fullvoc}\\ \label{fullvoc-mode}In addition to what |
456 | % the |voc| mode does, |fullvoc| expresses the \arb[trans]{sukUn} and | 457 | % the |voc| mode does, |fullvoc| expresses the \arb[trans]{sukUn} and |
@@ -863,7 +864,7 @@ vowels (see §~3). | |||
863 | % | 864 | % |
864 | % \paragraph{\arb[trans]{\cap{`amruNU}}, and the silent | 865 | % \paragraph{\arb[trans]{\cap{`amruNU}}, and the silent |
865 | % \arb[novoc]{U}} To that name a silent \arb[novoc]{U} is added to | 866 | % \arb[novoc]{U}} To that name a silent \arb[novoc]{U} is added to |
866 | % distinguish it from \arb[trans]{\cap{`umaruN}}: see \textcite[i. 12 | 867 | % distinguish it from \arb[trans]{\cap{`umar-u}}: see \textcite[i. 12 |
867 | % C]{Wright}. In no way this affects the sound of the | 868 | % C]{Wright}. In no way this affects the sound of the |
868 | % \arb[trans]{tanwIn}, so it has to be discarded in |trans| mode: | 869 | % \arb[trans]{tanwIn}, so it has to be discarded in |trans| mode: |
869 | % \begin{quote} | 870 | % \begin{quote} |
@@ -996,7 +997,7 @@ vowels (see §~3). | |||
996 | % \arb[voc]{'a^syA'-a} \arb[trans]{'a^syA'-a}, |.zim'aN| | 997 | % \arb[voc]{'a^syA'-a} \arb[trans]{'a^syA'-a}, |.zim'aN| |
997 | % \arb[voc]{.zim'aN} \arb[trans]{.zim'aN}. | 998 | % \arb[voc]{.zim'aN} \arb[trans]{.zim'aN}. |
998 | % | 999 | % |
999 | % \textbf{\arb[trans]{ta_hfIfu 'l-hamzaTi}}: if the | 1000 | % \textbf{\arb[trans]{ta_hfIf-u 'l-hamzaT-i}}: if the |
1000 | % \arb[trans]{hamzaT} has \arb[trans]{jazmaT} and is preceded by | 1001 | % \arb[trans]{hamzaT} has \arb[trans]{jazmaT} and is preceded by |
1001 | % \emph{\arb[trans]{'alif} hamzatum}, it must be changed into the | 1002 | % \emph{\arb[trans]{'alif} hamzatum}, it must be changed into the |
1002 | % letter of prolongation that is homogeneous with the preceding | 1003 | % letter of prolongation that is homogeneous with the preceding |
@@ -1029,8 +1030,8 @@ vowels (see §~3). | |||
1029 | %</example> | 1030 | %</example> |
1030 | % \fi | 1031 | % \fi |
1031 | % | 1032 | % |
1032 | % \package{arabluatex} otherwise determines \arb[trans]{al-'alifu | 1033 | % \package{arabluatex} otherwise determines \arb[trans]{al-'alif-u |
1033 | % 'l-mamdUdaTu} by context analysis. | 1034 | % 'l-mamdUdaT-u} by context analysis. |
1034 | % | 1035 | % |
1035 | % \begin{quote} | 1036 | % \begin{quote} |
1036 | % |'is'AduN| \arb[voc]{'is'AduN} \arb[trans]{'is'AduN}, |'AkilUna| | 1037 | % |'is'AduN| \arb[voc]{'is'AduN} \arb[trans]{'is'AduN}, |'AkilUna| |
@@ -1158,7 +1159,6 @@ vowels (see §~3). | |||
1158 | % |fa-lammA| |ra'aW| |'l-najm-a| \arb[fullvoc]{fa-lammA ra'aW | 1159 | % |fa-lammA| |ra'aW| |'l-najm-a| \arb[fullvoc]{fa-lammA ra'aW |
1159 | % 'l-najm-a} \arb[trans]{fa-lammA ra'aW 'l-najm-a}. | 1160 | % 'l-najm-a} \arb[trans]{fa-lammA ra'aW 'l-najm-a}. |
1160 | % | 1161 | % |
1161 | % \newpage | ||
1162 | % \textbf{Particles}:--- | 1162 | % \textbf{Particles}:--- |
1163 | % \begin{compactenum}[(a)] | 1163 | % \begin{compactenum}[(a)] |
1164 | % \item \arb[trans]{li-}: \arb[trans]{'alif-u 'l-wa.sl-i} is omitted | 1164 | % \item \arb[trans]{li-}: \arb[trans]{'alif-u 'l-wa.sl-i} is omitted |
@@ -1198,11 +1198,17 @@ vowels (see §~3). | |||
1198 | % \arb[trans]{'awi ismu-hu}, |zayduN| |ibn-u| |`amriNU| | 1198 | % \arb[trans]{'awi ismu-hu}, |zayduN| |ibn-u| |`amriNU| |
1199 | % \arb[fullvoc]{\cap{z}ayduN ibn-u \cap{`amriNU}} | 1199 | % \arb[fullvoc]{\cap{z}ayduN ibn-u \cap{`amriNU}} |
1200 | % \arb[trans]{\cap{z}ayduN ibn-u | 1200 | % \arb[trans]{\cap{z}ayduN ibn-u |
1201 | % \cap{`amriNU}},\footnote{\enquote{\arb[trans]{\cap{z}ayd} is the | 1201 | % \cap{`amriNU}},\footnote{\label{fn:zayd-is-son}% |
1202 | % son of \arb[trans]{\cap{`a}mr}}: the second noun is not in | 1202 | % \enquote{\arb[trans]{\cap{z}ayd} is the son of |
1203 | % apposition to the first, but forms part of the predicate. Hence | 1203 | % \arb[trans]{\cap{`a}mr}}: the second noun is not in apposition to |
1204 | % \arb[voc]{zayduN ibn-u `amriNU} and not \arb[voc]{zayd-u bn-u | 1204 | % the first, but forms part of the predicate. Hence \arb[voc]{zayduN |
1205 | % `amriNU}, \enquote{Zayd, son of ʿAmr}.} |imru'-u| |'l-qays-i| | 1205 | % ibn-u `amriNU} and not \arb[voc]{zayd-u bn-u `amriNU}, |
1206 | % \enquote{Zayd, son of ʿAmr}.} |`umar-u| |ibn-u| |'l-_ha.t.tAb-i| | ||
1207 | % \arb[fullvoc]{\cap{`umar}-u ibn-u \cap{'l-_ha.t.tAb-i}} | ||
1208 | % \arb[trans]{\cap{`umar}-u ibn-u | ||
1209 | % \cap{'l-_ha.t.tAb-i}},\footnote{\enquote{\arb[trans]{\cap{`umar}} | ||
1210 | % is the son of \arb[trans]{\cap{al-_ha.t.tAb}}} (see | ||
1211 | % \vref{fn:zayd-is-son}).} |imru'-u| |'l-qays-i| | ||
1206 | % \arb[fullvoc]{imru'-u 'l-qays-i} \arb[trans]{\cap{i}mru'-u | 1212 | % \arb[fullvoc]{imru'-u 'l-qays-i} \arb[trans]{\cap{i}mru'-u |
1207 | % \cap{'l-qays-i}}, |la-aymun-u| |'l-l_ah-i| | 1213 | % \cap{'l-qays-i}}, |la-aymun-u| |'l-l_ah-i| |
1208 | % \arb[fullvoc]{la-aymun-u 'l-l_ah-i} \arb[trans]{la-aymun-u | 1214 | % \arb[fullvoc]{la-aymun-u 'l-l_ah-i} \arb[trans]{la-aymun-u |
@@ -1219,7 +1225,9 @@ vowels (see §~3). | |||
1219 | % 'l-nAs-i}, |'abU| |'l-wazIr-i| \arb[fullvoc]{'abU 'l-wazIr-i} | 1225 | % 'l-nAs-i}, |'abU| |'l-wazIr-i| \arb[fullvoc]{'abU 'l-wazIr-i} |
1220 | % \arb[trans]{'abU 'l-wazIr-i}, |fI| |'l-ibtidA'-i| \arb[fullvoc]{fI | 1226 | % \arb[trans]{'abU 'l-wazIr-i}, |fI| |'l-ibtidA'-i| \arb[fullvoc]{fI |
1221 | % 'l-ibtidA'-i} \arb[trans]{fI 'l-ibtidA'-i}, |_dU 'l-i`lAl-i| | 1227 | % 'l-ibtidA'-i} \arb[trans]{fI 'l-ibtidA'-i}, |_dU 'l-i`lAl-i| |
1222 | % \arb[fullvoc]{_dU 'l-i`lAl-i} \arb[trans]{_dU 'l-i`lAl-i}. | 1228 | % \arb[fullvoc]{_dU 'l-i`lAl-i} \arb[trans]{_dU 'l-i`lAl-i}, |
1229 | % |maqh_A| |'l-'amIr-i| \arb[voc]{maqh_A 'l-'amIr-i} | ||
1230 | % \arb[trans]{maqh_A 'l-'amIr-i}. | ||
1223 | % \end{quote} | 1231 | % \end{quote} |
1224 | % | 1232 | % |
1225 | % \subparagraph{\arb[trans]{'alif-u 'l-wa.sl-i} preceded by a diphthong} | 1233 | % \subparagraph{\arb[trans]{'alif-u 'l-wa.sl-i} preceded by a diphthong} |
@@ -1247,8 +1255,8 @@ vowels (see §~3). | |||
1247 | % cases \parencite[i. 22 A--C]{Wright}, it is encoded explicitly, like | 1255 | % cases \parencite[i. 22 A--C]{Wright}, it is encoded explicitly, like |
1248 | % so:--- | 1256 | % so:--- |
1249 | % \begin{quote} | 1257 | % \begin{quote} |
1250 | % |'antumu| |'l-kA_dibUna| \arb[fullvoc]{'antumu 'l-kA_dibUna} | 1258 | % |'antumu| |'l-kA_dib-Una| \arb[fullvoc]{'antumu 'l-kA_dib-Una} |
1251 | % \arb[trans]{'antumu 'l-kA_dibUna}, |ra'aytumu| |'l-rajul-a| | 1259 | % \arb[trans]{'antumu 'l-kA_dib-Una}, |ra'aytumu| |'l-rajul-a| |
1252 | % \arb[fullvoc]{ra'aytumu 'l-rajul-a} \arb[trans]{ra'aytumu | 1260 | % \arb[fullvoc]{ra'aytumu 'l-rajul-a} \arb[trans]{ra'aytumu |
1253 | % 'l-rajul-a}, |mani| |'l-ka_d_dAb-u| \arb[fullvoc]{mani | 1261 | % 'l-rajul-a}, |mani| |'l-ka_d_dAb-u| \arb[fullvoc]{mani |
1254 | % 'l-ka_d_dAb-u} \arb[trans]{mani 'l-ka_d_dAb-u}, |qatalati| | 1262 | % 'l-ka_d_dAb-u} \arb[trans]{mani 'l-ka_d_dAb-u}, |qatalati| |
@@ -1315,9 +1323,9 @@ vowels (see §~3). | |||
1315 | % |'a_hAfu| |mina| |'l-malik-i| |'lla_dI| |ya.zlimu| |'l-nAs-a| | 1323 | % |'a_hAfu| |mina| |'l-malik-i| |'lla_dI| |ya.zlimu| |'l-nAs-a| |
1316 | % \arb[fullvoc]{'a_hAfu mina 'l-malik-i 'lla_dI ya.zlimu 'l-nAs-a} | 1324 | % \arb[fullvoc]{'a_hAfu mina 'l-malik-i 'lla_dI ya.zlimu 'l-nAs-a} |
1317 | % \arb[trans]{'a_hAfu mina 'l-malik-i 'lla_dI ya.zlimu 'l-nAs-a}, | 1325 | % \arb[trans]{'a_hAfu mina 'l-malik-i 'lla_dI ya.zlimu 'l-nAs-a}, |
1318 | % |`udtu| |'l-^say_h-a| |'lladI| |huwa| |marI.duN| | 1326 | % |`udtu| |'l-^say_h-a| |'lla_dI| |huwa| |marI.duN| |
1319 | % \arb[fullvoc]{`udtu 'l-^say_h-a 'lladI huwa marI.duN} | 1327 | % \arb[fullvoc]{`udtu 'l-^say_h-a 'lla_dI huwa marI.duN} |
1320 | % \arb[trans]{`udtu 'l-^say_h-a 'lladI huwa marI.duN}, |mA| |'anA| | 1328 | % \arb[trans]{`udtu 'l-^say_h-a 'lla_dI huwa marI.duN}, |mA| |'anA| |
1321 | % |bi-'lla_dI| |qA'iluN| |la-ka| |^say'aN| \arb[fullvoc]{mA 'anA | 1329 | % |bi-'lla_dI| |qA'iluN| |la-ka| |^say'aN| \arb[fullvoc]{mA 'anA |
1322 | % bi-'lla_dI qA'iluN la-ka ^say'aN} \arb[trans]{mA 'anA bi-'lla_dI | 1330 | % bi-'lla_dI qA'iluN la-ka ^say'aN} \arb[trans]{mA 'anA bi-'lla_dI |
1323 | % qA'iluN la-ka ^say'aN}. | 1331 | % qA'iluN la-ka ^say'aN}. |
@@ -1329,11 +1337,11 @@ vowels (see §~3). | |||
1329 | % \end{quote} | 1337 | % \end{quote} |
1330 | % The other forms are encoded regularly as |al-l| or |'l-l|:--- | 1338 | % The other forms are encoded regularly as |al-l| or |'l-l|:--- |
1331 | % \begin{quote} | 1339 | % \begin{quote} |
1332 | % |fa-'innA| |na_dkuru| |'l-.sawtayni| |'l-la_dayni| |rawaynA-humA| | 1340 | % |fa-'innA| |na_dkuru| |'l-.sawt-ayni| |'l-la_dayni| |rawaynA-humA| |
1333 | % |`an| |ja.h.zaT-a| \arb[fullvoc]{fa-'innA na_dkuru 'l-.sawtayni | 1341 | % |`an| |ja.h.zaT-a| \arb[fullvoc]{fa-'innA na_dkuru 'l-.sawt-ayni |
1334 | % 'l-la_dayni rawaynA-humA `an \cap{ja.h.zaT-a}} \arb[trans]{fa-'innA | 1342 | % 'l-la_dayni rawaynA-humA `an \cap{ja.h.zaT-a}} |
1335 | % na_dkuru 'l-.sawtayni 'l-la_dayni rawaynA-humA `an | 1343 | % \arb[trans]{fa-'innA na_dkuru 'l-.sawt-ayni 'l-la_dayni |
1336 | % \cap{ja.h.zaT-a}}. | 1344 | % rawaynA-humA `an \cap{ja.h.zaT-a}}. |
1337 | % | 1345 | % |
1338 | % And also: |al-la_dAni| \arb[fullvoc]{al-la_dAni} | 1346 | % And also: |al-la_dAni| \arb[fullvoc]{al-la_dAni} |
1339 | % \arb[trans]{al-la_dAni}, |al-la_dayni| \arb[fullvoc]{al-la_dayni} | 1347 | % \arb[trans]{al-la_dAni}, |al-la_dayni| \arb[fullvoc]{al-la_dayni} |
@@ -1793,8 +1801,8 @@ vowels (see §~3). | |||
1793 | % \end{compactenum} | 1801 | % \end{compactenum} |
1794 | % \DescribeMacro{\arbup} By default, \package{arabluatex} applies rule | 1802 | % \DescribeMacro{\arbup} By default, \package{arabluatex} applies rule |
1795 | % \ref{ref:dmg-up-rend}. Once delimited by a set of Lua functions, | 1803 | % \ref{ref:dmg-up-rend}. Once delimited by a set of Lua functions, |
1796 | % every \arb[trans]{tanwIn} is passed as an argument on to a | 1804 | % \arb[trans]{'i`rAb} is passed as an argument on to a \cs{arbup} |
1797 | % \cs{arbup} command which is set to \cs{textsuperscript}. | 1805 | % command which is set to \cs{textsuperscript}. |
1798 | % | 1806 | % |
1799 | % \DescribeMacro{\NoArbUp} \DescribeMacro{\ArbUpDflt} \cs{NoArbUp} may | 1807 | % \DescribeMacro{\NoArbUp} \DescribeMacro{\ArbUpDflt} \cs{NoArbUp} may |
1800 | % be used either in the preamble or at any point of the document in | 1808 | % be used either in the preamble or at any point of the document in |
@@ -1803,7 +1811,7 @@ vowels (see §~3). | |||
1803 | % any point of the document. | 1811 | % any point of the document. |
1804 | % | 1812 | % |
1805 | % \DescribeMacro{\SetArbUp} Finally, \cs{SetArbUp}\marg{formatting | 1813 | % \DescribeMacro{\SetArbUp} Finally, \cs{SetArbUp}\marg{formatting |
1806 | % directives} may be used to customize the way \arb[trans]{tanwIn} is | 1814 | % directives} may be used to customize the way \arb[trans]{'i`rAb} is |
1807 | % displayed. To take one example, here is how Arabic | 1815 | % displayed. To take one example, here is how Arabic |
1808 | % \arb[trans]{'i`rAb} may be rendered as subscript text:--- | 1816 | % \arb[trans]{'i`rAb} may be rendered as subscript text:--- |
1809 | % \iffalse | 1817 | % \iffalse |
@@ -1822,7 +1830,54 @@ muhaddamaTaN mi'_danatu-hu}: \arb[trans]{ra'aytu | |||
1822 | % As shown in the above example, |#1| is the token that is replaced | 1830 | % As shown in the above example, |#1| is the token that is replaced |
1823 | % with the actual \arb[trans]{tanwIn} in the formatting directives of | 1831 | % with the actual \arb[trans]{tanwIn} in the formatting directives of |
1824 | % the \cs{SetArbUp} command. | 1832 | % the \cs{SetArbUp} command. |
1825 | % | 1833 | % |
1834 | % \paragraph{\arb[trans]{'i`rAb} boundaries} | ||
1835 | % Every declinable noun (\arb[trans]{mu`rab}) may be declined either | ||
1836 | % with or without \arb[trans]{tanwIn}, viz. \arb[trans]{mun.sarifuN} | ||
1837 | % or \arb[trans]{.gayr-u mun.sarifiN}. The former is automatically | ||
1838 | % parsed by \package{arabluatex}, whereas the latter has to be | ||
1839 | % delimited with an hyphen, like so:--- | ||
1840 | % \begin{quote} | ||
1841 | % \arb[trans]{\textbf{mun.sarif}}: |mu`allimuN| | ||
1842 | % \arb[voc]{mu`allimuN} \arb[trans]{mu`allimuN}, |kA'inuN| | ||
1843 | % \arb[voc]{kA'inuN} \arb[trans]{kA'inuN}, |kA'inAtuN| | ||
1844 | % \arb[voc]{kA'inAtuN} \arb[trans]{kA'inAtuN}, |\cap{`amraNU}| | ||
1845 | % \arb[voc]{\cap{`amraNU}} \arb[trans]{\cap{`amraNU}}, |fataN_A| | ||
1846 | % \arb[voc]{fataN_A} \arb[trans]{fataN_A}. | ||
1847 | % | ||
1848 | % \arb[trans]{\textbf{.gayr mun.sarif}}: |al-mu`allim-u| | ||
1849 | % \arb[voc]{al-mu`allim-u} \arb[trans]{al-mu`allim-u}, |kitAb-Ani| | ||
1850 | % \arb[voc]{kitAb-Ani} \arb[trans]{kitAb-Ani}, |ra^sa'-Ani| | ||
1851 | % \arb[voc]{ra^sa'-Ani} \arb[trans]{ra^sa'-Ani}, |sAriq-Una| | ||
1852 | % \arb[voc]{sAriq-Una} \arb[trans]{sAriq-Una}, |qA.d-Una| | ||
1853 | % \arb[voc]{qA.d-Una} \arb[trans]{qA.d-Una}, |al-.zulm-Atu| | ||
1854 | % \arb[voc]{al-.zulm-Atu} \arb[trans]{al-.zulm-Atu}. | ||
1855 | % \end{quote} | ||
1856 | % | ||
1857 | % \begin{quoting} | ||
1858 | % \textsc{Rem.}~\emph{a.} As the \arb[trans]{tanwIn} is passed over | ||
1859 | % in pronunciation when it is followed by the letters | ||
1860 | % \arb[novoc]{r}, \arb[novoc]{l}, \arb[novoc]{m}, \arb[novoc]{w}, | ||
1861 | % \arb[novoc]{y} (see \vref{ref:assimilation}), it may be desirable | ||
1862 | % to further distinguish it by putting it above the line, but not to | ||
1863 | % do the same for \arb[trans]{.gayr mun.sarif} terminations. This | ||
1864 | % can be achieved by simply omitting the hyphen before any | ||
1865 | % \arb[trans]{.gayr mun.sarif} termination:---\\ | ||
1866 | % |kAna| |.ganiyyaN| |l_akinna-hu| |labisa| |^gubbaTaN| |mumazzaqaN| | ||
1867 | % |'aydu-hA| \arb[voc]{kAna .ganiyyaN l_akinna-hu labisa ^gubbaTaN | ||
1868 | % mumazzaqaN 'aydu-hA} \arb[trans]{kAna .ganiyyaN l_akinna-hu labisa | ||
1869 | % ^gubbaTaN mumazzaqaN 'aydu-hA}. | ||
1870 | % | ||
1871 | % \textsc{Rem.}~\emph{b.} Although the hyphen before the | ||
1872 | % \arb[trans]{tanwIn} is optional as \package{arabluatex} always | ||
1873 | % parses nouns with such termination, it may also be used to mark | ||
1874 | % better the inflectional endings:---\\ | ||
1875 | % |mana`a| |'l-nAs-a| |kAffaT-aN| |min| |mu_hA.tabati-hi| | ||
1876 | % |'a.had-uN| |bi-sayyidi-nA| \arb[voc]{mana`a 'l-nAs-a kAffaT-aN | ||
1877 | % min mu_hA.tabati-hi 'a.had-uN bi-sayyidi-nA} \arb[trans]{mana`a | ||
1878 | % 'l-nAs-a kAffaT-aN min mu_hA.tabati-hi 'a.had-uN bi-sayyidi-nA}. | ||
1879 | % \end{quoting} | ||
1880 | % | ||
1826 | % \subsection{Examples} | 1881 | % \subsection{Examples} |
1827 | % \label{sec:examples-translit} | 1882 | % \label{sec:examples-translit} |
1828 | % Here follows in transliteration the story of | 1883 | % Here follows in transliteration the story of |
@@ -2226,7 +2281,7 @@ wa-ya.sIru ta.hta 'l-jild-i | |||
2226 | % \end{macrocode} | 2281 | % \end{macrocode} |
2227 | % \end{macro} | 2282 | % \end{macro} |
2228 | % \begin{macro}{\arbup} | 2283 | % \begin{macro}{\arbup} |
2229 | % \changes{v1.3}{2016/05/19}{\arb[trans]{tanwIn} is now written as | 2284 | % \changes{v1.3}{2016/05/19}{\arb[trans]{'i`rAb} is now written as |
2230 | % superscript text in \texttt{dmg} mode by default.} | 2285 | % superscript text in \texttt{dmg} mode by default.} |
2231 | % \begin{macro}{\NoArbUp} | 2286 | % \begin{macro}{\NoArbUp} |
2232 | % \begin{macro}{\ArbUpDflt} | 2287 | % \begin{macro}{\ArbUpDflt} |
diff --git a/arabluatex_fullvoc.lua b/arabluatex_fullvoc.lua index f9d4e60..e4a9495 100644 --- a/arabluatex_fullvoc.lua +++ b/arabluatex_fullvoc.lua | |||
@@ -53,8 +53,9 @@ hamzafv = { | |||
53 | {a="'i'([^uaiUAI])", b="إI%1"}, | 53 | {a="'i'([^uaiUAI])", b="إI%1"}, |
54 | -- madda (historic writing below) | 54 | -- madda (historic writing below) |
55 | {a="'a'([^uaiUAI])", b="آ%1"}, | 55 | {a="'a'([^uaiUAI])", b="آ%1"}, |
56 | --tmp {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, | 56 | {a="([^uiUI])\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, |
57 | {a="([^UIui])'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | 57 | {a="^\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, |
58 | {a="(%W)\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | ||
58 | {a="(A)(')(uN?)$", b="aآء%3"}, | 59 | {a="(A)(')(uN?)$", b="aآء%3"}, |
59 | {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, | 60 | {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, |
60 | {a="(A)(')(iN?)$", b="aآء%3"}, | 61 | {a="(A)(')(iN?)$", b="aآء%3"}, |
@@ -148,8 +149,9 @@ hamzafveasy = { -- differences marked below with 'easy' | |||
148 | {a="'i'([^uaiUAI])", b="إI%1"}, | 149 | {a="'i'([^uaiUAI])", b="إI%1"}, |
149 | -- madda (historic writing below) | 150 | -- madda (historic writing below) |
150 | {a="'a'([^uaiUAI])", b="آ%1"}, | 151 | {a="'a'([^uaiUAI])", b="آ%1"}, |
151 | --tmp {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, | 152 | {a="([^uiUI])\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, |
152 | {a="([^UIui])'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | 153 | {a="^\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, |
154 | {a="(%W)\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | ||
153 | --easy (begin) | 155 | --easy (begin) |
154 | {a="(A)(')(uN?)$", b="aاء%3"}, | 156 | {a="(A)(')(uN?)$", b="aاء%3"}, |
155 | {a="(A)(')(uN?)(%W)", b="aاء%3%4"}, | 157 | {a="(A)(')(uN?)(%W)", b="aاء%3%4"}, |
@@ -215,73 +217,73 @@ hamzafveasy = { -- differences marked below with 'easy' | |||
215 | } | 217 | } |
216 | 218 | ||
217 | tanwinfv = { | 219 | tanwinfv = { |
218 | {a="uNU", b="ٌو"}, | 220 | {a="%-?uNU", b="ٌو"}, |
219 | {a="aNU", b="ًوا"}, | 221 | {a="%-?aNU", b="ًوا"}, |
220 | {a="iNU", b="ٍو"}, | 222 | {a="%-?iNU", b="ٍو"}, |
221 | {a="([uai]N)(%s)([uai])", b="%1%2ٱ"}, | 223 | {a="%-?([uai]N)(%s)([uai])", b="%1%2ٱ"}, |
222 | {a="(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, | 224 | {a="%-?(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, |
223 | -- assimilations (begin) | 225 | -- assimilations (begin) |
224 | {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, | 226 | {a="%-?(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, |
225 | {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 227 | {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
226 | {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 228 | {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
227 | {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 229 | {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
228 | {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 230 | {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
229 | {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, | 231 | {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, |
230 | {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, | 232 | {a="%-?(iNI?)(%s)([rlmnwy])", b="ٍ%2%3%3"}, |
231 | -- assimilations (end) | 233 | -- assimilations (end) |
232 | -- quoted tanwīn (begin) | 234 | -- quoted tanwīn (begin) |
233 | {a="(\"uN)", b=""}, | 235 | {a="%-?(\"uN)", b=""}, |
234 | {a="(B)(\"aN)", b="%1"}, | 236 | {a="(B)%-?(\"aN)", b="%1"}, |
235 | {a="(\"aN)(_A)", b="ى"}, | 237 | {a="%-?(\"aN)(_A)", b="ى"}, |
236 | {a="(\"aN)(Y)", b="ى"}, | 238 | {a="%-?(\"aN)(Y)", b="ى"}, |
237 | {a="(T)(\"aN)", b="%1"}, | 239 | {a="(T)%-?(\"aN)", b="%1"}, |
238 | {a="(ء)(\"aN)", b="%1"}, | 240 | {a="(ء)%-?(\"aN)", b="%1"}, |
239 | {a="([^TA])(\"aN)", b="%1ا"}, | 241 | {a="([^TA])%-?(\"aN)", b="%1ا"}, |
240 | {a="(\"iN)", b=""}, | 242 | {a="%-?(\"iNI?)", b=""}, |
241 | -- quoted tanwīn (end) | 243 | -- quoted tanwīn (end) |
242 | {a="(uN)", b="ٌ"}, | 244 | {a="%-?(uN)", b="ٌ"}, |
243 | {a="(B)(aN)", b="%1ً"}, | 245 | {a="(B)%-?(aN)", b="%1ً"}, |
244 | {a="(aN)(_A)", b="ًى"}, | 246 | {a="%-?(aN)(_A)", b="ًى"}, |
245 | {a="(aN)(Y)", b="ًى"}, | 247 | {a="%-?(aN)(Y)", b="ًى"}, |
246 | {a="(T)(aN)", b="%1ً"}, | 248 | {a="(T)%-?(aN)", b="%1ً"}, |
247 | {a="(ء)(aN)", b="%1ً"}, | 249 | {a="(ء)%-?(aN)", b="%1ً"}, |
248 | {a="([^TA])(aN)", b="%1ًا"}, | 250 | {a="([^TA])%-?(aN)", b="%1ًا"}, |
249 | {a="(iNI?)", b="ٍ"} | 251 | {a="%-?(iNI?)", b="ٍ"} |
250 | } | 252 | } |
251 | 253 | ||
252 | tanwinfveasy = { -- no assimilations (see below) | 254 | tanwinfveasy = { -- no assimilations (see below) |
253 | {a="uNU", b="ٌو"}, | 255 | {a="%-?uNU", b="ٌو"}, |
254 | {a="aNU", b="ًوا"}, | 256 | {a="%-?aNU", b="ًوا"}, |
255 | {a="iNU", b="ٍو"}, | 257 | {a="%-?iNU", b="ٍو"}, |
256 | {a="([uai]N)(%s)([uai])", b="%1%2ٱ"}, | 258 | {a="%-?([uai]N)(%s)([uai])", b="%1%2ٱ"}, |
257 | {a="(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, | 259 | {a="%-?(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, |
258 | -- assimilations (begin) | 260 | -- assimilations (begin) |
259 | --easy {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, | 261 | --easy {a="%-?(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, |
260 | --easy {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 262 | --easy {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
261 | --easy {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 263 | --easy {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
262 | --easy {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 264 | --easy {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
263 | --easy {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 265 | --easy {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
264 | --easy {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, | 266 | --easy {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, |
265 | --easy {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, | 267 | --easy {a="%-?(iNI?)(%s)([rlmnwy])", b="ٍ%2%3%3"}, |
266 | -- assimilations (end) | 268 | -- assimilations (end) |
267 | -- quoted tanwīn (begin) | 269 | -- quoted tanwīn (begin) |
268 | {a="(\"uN)", b=""}, | 270 | {a="%-?(\"uN)", b=""}, |
269 | {a="(B)(\"aN)", b="%1"}, | 271 | {a="(B)%-?(\"aN)", b="%1"}, |
270 | {a="(\"aN)(_A)", b="ى"}, | 272 | {a="%-?(\"aN)(_A)", b="ى"}, |
271 | {a="(\"aN)(Y)", b="ى"}, | 273 | {a="%-?(\"aN)(Y)", b="ى"}, |
272 | {a="(T)(\"aN)", b="%1"}, | 274 | {a="(T)%-?(\"aN)", b="%1"}, |
273 | {a="(ء)(\"aN)", b="%1"}, | 275 | {a="(ء)%-?(\"aN)", b="%1"}, |
274 | {a="([^TA])(\"aN)", b="%1ا"}, | 276 | {a="([^TA])%-?(\"aN)", b="%1ا"}, |
275 | {a="(\"iN)", b=""}, | 277 | {a="%-?(\"iNI?)", b=""}, |
276 | -- quoted tanwīn (end) | 278 | -- quoted tanwīn (end) |
277 | {a="(uN)", b="ٌ"}, | 279 | {a="%-?(uN)", b="ٌ"}, |
278 | {a="(B)(aN)", b="%1ً"}, | 280 | {a="(B)%-?(aN)", b="%1ً"}, |
279 | {a="(aN)(_A)", b="ًى"}, | 281 | {a="%-?(aN)(_A)", b="ًى"}, |
280 | {a="(aN)(Y)", b="ًى"}, | 282 | {a="%-?(aN)(Y)", b="ًى"}, |
281 | {a="(T)(aN)", b="%1ً"}, | 283 | {a="(T)%-?(aN)", b="%1ً"}, |
282 | {a="(ء)(aN)", b="%1ً"}, | 284 | {a="(ء)%-?(aN)", b="%1ً"}, |
283 | {a="([^TA])(aN)", b="%1ًا"}, | 285 | {a="([^TA])%-?(aN)", b="%1ًا"}, |
284 | {a="(iNI?)", b="ٍ"} | 286 | {a="%-?(iNI?)", b="ٍ"} |
285 | } | 287 | } |
286 | 288 | ||
287 | trigraphsfv = { -- trigraphs or more | 289 | trigraphsfv = { -- trigraphs or more |
@@ -457,10 +459,10 @@ digraphsfv = { | |||
457 | {a="yy", b="يّ"}, | 459 | {a="yy", b="يّ"}, |
458 | -- sukūn begin | 460 | -- sukūn begin |
459 | --tmp: next line is added | 461 | --tmp: next line is added |
460 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-(%_?[uaiUAIY])", b="%1%2"}, | 462 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uaiUAI])", b="%1%2"}, |
461 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])$", b="%1ْ"}, | 463 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])$", b="%1ْ"}, |
462 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%s])", b="%1ْ%2"}, | 464 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%s])", b="%1ْ%2"}, |
463 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-(%_?[^uaiUAIًٌٍ])", b="%1ْ%2"}, | 465 | {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIYًٌٍ])", b="%1ْ%2"}, |
464 | -- take out sukūn in cases of assimilation | 466 | -- take out sukūn in cases of assimilation |
465 | {a="(n)(ْ)(%s)([روي])", b="%1%3%4"}, | 467 | {a="(n)(ْ)(%s)([روي])", b="%1%3%4"}, |
466 | {a="(n)(ْ)(%s)([ل])", b="%1%3%4"}, | 468 | {a="(n)(ْ)(%s)([ل])", b="%1%3%4"}, |
@@ -559,7 +561,7 @@ digraphsfveasy = { -- see the diffenrences under 'easy' marker below | |||
559 | -- so there be no need to edit them: | 561 | -- so there be no need to edit them: |
560 | {a="ْ", b=""}, | 562 | {a="ْ", b=""}, |
561 | --tmp: next line is added | 563 | --tmp: next line is added |
562 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uai])", b="%1%2"}, | 564 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])%-([uaiUAI])", b="%1%2"}, |
563 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])$", b="%1ْ"}, | 565 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])$", b="%1ْ"}, |
564 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%s])", b="%1ْ%2"}, | 566 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%s])", b="%1ْ%2"}, |
565 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIًٌٍ])", b="%1ْ%2"}, | 567 | -- {a="([%_%^%.]?[Bbtjghxdrzs%`fqklmnwy])([%_]?[^%_uaiUAIًٌٍ])", b="%1ْ%2"}, |
@@ -654,4 +656,3 @@ singlefveasy = { -- see the differences under 'easy' tag below | |||
654 | {a="([^0-9])%-([^0-9])", b="%1%2"}, | 656 | {a="([^0-9])%-([^0-9])", b="%1%2"}, |
655 | {a="B", b="ـ"}, | 657 | {a="B", b="ـ"}, |
656 | } | 658 | } |
657 | |||
diff --git a/arabluatex_novoc.lua b/arabluatex_novoc.lua index 16f3b51..f069f5a 100644 --- a/arabluatex_novoc.lua +++ b/arabluatex_novoc.lua | |||
@@ -23,36 +23,36 @@ along with this program. If not, see | |||
23 | --]] | 23 | --]] |
24 | 24 | ||
25 | tanwinnv = { | 25 | tanwinnv = { |
26 | {a="uNU", b="و"}, | 26 | {a="%-?uNU", b="و"}, |
27 | {a="aNU", b="وا"}, | 27 | {a="%-?aNU", b="وا"}, |
28 | {a="iNU", b="و"}, | 28 | {a="%-?iNU", b="و"}, |
29 | -- assimilations (begin). These are good but may not apply here. | 29 | -- assimilations (begin). These are good but may not apply here. |
30 | -- {a="(uN)(%s)([rlmnwy])", b="|%2%3%3"}, | 30 | -- {a="%-?(uN)(%s)([rlmnwy])", b="|%2%3%3"}, |
31 | -- {a="(aN)(_A)(%s)([rlmnwy])", b="ى%3%4%4"}, | 31 | -- {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ى%3%4%4"}, |
32 | -- {a="(aN)(Y)(%s)([rlmnwy])", b="ى%3%4%4"}, | 32 | -- {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ى%3%4%4"}, |
33 | -- {a="(T)(aN)(%s)([rlmnwy])", b="%1%3%4%4"}, | 33 | -- {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1%3%4%4"}, |
34 | -- {a="(ء)(aN)(%s)([rlmnwy])", b="%1%3%4%4"}, | 34 | -- {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1%3%4%4"}, |
35 | -- {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ا%3%4%4"}, | 35 | -- {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ا%3%4%4"}, |
36 | -- {a="(iN)(%s)([rlmnwy])", b="|%2%3%3"}, | 36 | -- {a="%-?(iNI?)(%s)([rlmnwy])", b="|%2%3%3"}, |
37 | -- assimilations (end) | 37 | -- assimilations (end) |
38 | -- "quoted" tanwīn (begin) | 38 | -- "quoted" tanwīn (begin) |
39 | {a="(\"uN)", b="ٌ"}, | 39 | {a="%-?(\"uN)", b="ٌ"}, |
40 | {a="(B)(\"aN)", b="%1ً"}, | 40 | {a="(B)%-?(\"aN)", b="%1ً"}, |
41 | {a="(\"aN)(_A)", b="ًى"}, | 41 | {a="%-?(\"aN)(_A)", b="ًى"}, |
42 | {a="(\"aN)(Y)", b="ًى"}, | 42 | {a="%-?(\"aN)(Y)", b="ًى"}, |
43 | {a="(T)(\"aN)", b="%1ً"}, | 43 | {a="(T)%-?(\"aN)", b="%1ً"}, |
44 | {a="(ء)(\"aN)", b="%1ً"}, | 44 | {a="(ء)%-?(\"aN)", b="%1ً"}, |
45 | {a="([^TA])(\"aN)", b="%1ًا"}, | 45 | {a="([^TA])%-?(\"aN)", b="%1ًا"}, |
46 | {a="(\"iN)", b="ٍ"}, | 46 | {a="%-?(\"iNI?)", b="ٍ"}, |
47 | -- "quoted" tanwīn (end) | 47 | -- "quoted" tanwīn (end) |
48 | {a="(uN)", b=""}, | 48 | {a="%-?(uN)", b=""}, |
49 | {a="(B)(aN)", b="%1"}, | 49 | {a="(B)%-?(aN)", b="%1"}, |
50 | {a="(aN)(_A)", b="ى"}, | 50 | {a="%-?(aN)(_A)", b="ى"}, |
51 | {a="(aN)(Y)", b="ى"}, | 51 | {a="%-?(aN)(Y)", b="ى"}, |
52 | {a="(T)(aN)", b="%1"}, | 52 | {a="(T)%-?(aN)", b="%1"}, |
53 | {a="(ء)(aN)", b="%1"}, | 53 | {a="(ء)%-?(aN)", b="%1"}, |
54 | {a="([^TA])(aN)", b="%1ا"}, | 54 | {a="([^TA])%-?(aN)", b="%1ا"}, |
55 | {a="(iN)", b=""}, | 55 | {a="%-?(iNI?)", b=""}, |
56 | -- initial straight double quote gives a connective ʾalif. This has | 56 | -- initial straight double quote gives a connective ʾalif. This has |
57 | -- nothing to do with the tanwīn, but I put it here for time being. | 57 | -- nothing to do with the tanwīn, but I put it here for time being. |
58 | {a="^\"", b="ٱ"}, | 58 | {a="^\"", b="ٱ"}, |
diff --git a/arabluatex_trans.lua b/arabluatex_trans.lua index 45fd3d5..76e297e 100644 --- a/arabluatex_trans.lua +++ b/arabluatex_trans.lua | |||
@@ -138,8 +138,15 @@ tanwintrdmg = { | |||
138 | {a="(T)%-?(aN)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="t\\arbup{ani}%3%4"}, | 138 | {a="(T)%-?(aN)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="t\\arbup{ani}%3%4"}, |
139 | {a="([^TA])%-?(aN)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="%1\\arbup{ani}%3%4"}, | 139 | {a="([^TA])%-?(aN)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="%1\\arbup{ani}%3%4"}, |
140 | {a="%-?(iN)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="\\arbup{ini}%2%3"}, | 140 | {a="%-?(iN)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="\\arbup{ini}%2%3"}, |
141 | -- tmp (+ ibn) | ||
142 | {a="%-?(uN)(%s)(i)", b="\\arbup{uni}%2'"}, | ||
143 | {a="%-?(aN)(_A)(%s)(i)", b="ạ\\arbup{ni}%3%'"}, | ||
144 | {a="%-?(aN)(Y)(%s)(i)", b="ạ\\arbup{ni}%3%'"}, | ||
145 | {a="(T)%-?(aN)(%s)(i)", b="t\\arbup{ani}%3%'"}, | ||
146 | {a="([^TA])%-?(aN)(%s)(i)", b="%1\\arbup{ani}%3%'"}, | ||
147 | {a="%-?(iN)(%s)(i)", b="\\arbup{ini}%2%'"}, | ||
141 | -- | 148 | -- |
142 | -- {a="uN", b="\\arbup{un}"}, (now included in last line in this table) | 149 | -- {a="uN", b="\\arbup{un}"}, (now included in the last line of this table) |
143 | {a="%-?(aN)(_A)", b="ạ\\arbup{n}"}, | 150 | {a="%-?(aN)(_A)", b="ạ\\arbup{n}"}, |
144 | {a="%-?(aN)(Y)", b="ạ\\arbup{n}"}, | 151 | {a="%-?(aN)(Y)", b="ạ\\arbup{n}"}, |
145 | {a="(T)%-?(\"?aN)", b="t\\arbup{an}"}, | 152 | {a="(T)%-?(\"?aN)", b="t\\arbup{an}"}, |
@@ -260,10 +267,16 @@ trigraphstrdmgeasy = { -- see the differences below under 'easy' tag | |||
260 | digraphstrdmg = { | 267 | digraphstrdmg = { |
261 | {a="([uai]%-)(\"?[uai])", b="%1'"}, -- hyphen + initial alif without hamza | 268 | {a="([uai]%-)(\"?[uai])", b="%1'"}, -- hyphen + initial alif without hamza |
262 | {a="^(\"?[uai])", b="%1"}, -- initial alif without hamza | 269 | {a="^(\"?[uai])", b="%1"}, -- initial alif without hamza |
270 | -- this is not necessary, take out for now: | ||
263 | -- {a="([%_]?[uaiUAIY])(%s)([uai])", b="%1%2'"}, -- initial alif without hamza | 271 | -- {a="([%_]?[uaiUAIY])(%s)([uai])", b="%1%2'"}, -- initial alif without hamza |
264 | {a="(aW)(%s)(\"?[uai])", b="awu%2%3"}, | 272 | {a="(aW)(%s)(\"?[uai])", b="awu%2%3"}, |
265 | {a="([^%_][uai])(%s)(\"?[uai])", b="%1%2'"}, | 273 | {a="([^%_][uai])(%s)(\"?[uai])", b="%1%2'"}, |
266 | {a="([%_]?[AYa])(%s)(\"?[uai])", b="a%2'"}, | 274 | --tmp (more complex, see next 4 l.) |
275 | -- {a="([%_]?[AYa])(%s)(\"?[uai])", b="a%2'"}, | ||
276 | {a="(%_A)(%s)(\"?[uai])", b="ạ%2'"}, | ||
277 | {a="(Y)(%s)(\"?[uai])", b="ạ%2'"}, | ||
278 | {a="(%_a)(%s)(\"?[uai])", b="a%2'"}, | ||
279 | {a="(A)(%s)(\"?[uai])", b="a%2'"}, | ||
267 | {a="([%_]?[Uu])(%s)(\"?[uai])", b="u%2'"}, | 280 | {a="([%_]?[Uu])(%s)(\"?[uai])", b="u%2'"}, |
268 | {a="([%_]?[Ii])(%s)(\"?[uai])", b="i%2'"}, | 281 | {a="([%_]?[Ii])(%s)(\"?[uai])", b="i%2'"}, |
269 | -- ʾiʿrāb hyphen (begin) | 282 | -- ʾiʿrāb hyphen (begin) |
@@ -281,7 +294,11 @@ digraphstrdmg = { | |||
281 | -- shorten long vowels preceding ʾalif conjunctionis | 294 | -- shorten long vowels preceding ʾalif conjunctionis |
282 | {a="(U)(A)", b="U"}, | 295 | {a="(U)(A)", b="U"}, |
283 | {a="(aW)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="awu%2%3"}, | 296 | {a="(aW)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="awu%2%3"}, |
284 | {a="([%_]?[AYa])(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="a%2%3"}, | 297 | --tmp {a="([%_]?[AYa])(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="a%2%3"}, |
298 | {a="(%_a)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="a%2%3"}, | ||
299 | {a="(%_A)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="ạ%2%3"}, | ||
300 | {a="(A)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="a%2%3"}, | ||
301 | {a="(Y)(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="ạ%2%3"}, | ||
285 | {a="([%_]?[Uu])(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="u%2%3"}, | 302 | {a="([%_]?[Uu])(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="u%2%3"}, |
286 | {a="([%_]?[Ii])(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="i%2%3"}, | 303 | {a="([%_]?[Ii])(%s)(['][%_%^%.]?[l'btjghxdrzs`fqkmnwy]%-)", b="i%2%3"}, |
287 | {a="%-%-", b=""}, | 304 | {a="%-%-", b=""}, |
diff --git a/arabluatex_voc.lua b/arabluatex_voc.lua index 0097450..0331794 100644 --- a/arabluatex_voc.lua +++ b/arabluatex_voc.lua | |||
@@ -93,8 +93,9 @@ hamza = { | |||
93 | {a="'i'([^uaiUAI])", b="إI%1"}, | 93 | {a="'i'([^uaiUAI])", b="إI%1"}, |
94 | -- madda (historic writing below) | 94 | -- madda (historic writing below) |
95 | {a="'a'([^uaiUAI])", b="آ%1"}, | 95 | {a="'a'([^uaiUAI])", b="آ%1"}, |
96 | --tmp {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, | 96 | {a="([^uiUI])\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, |
97 | {a="([^UIui])'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | 97 | {a="^\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, |
98 | {a="(%W)\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | ||
98 | {a="(A)(')(uN?)$", b="aآء%3"}, | 99 | {a="(A)(')(uN?)$", b="aآء%3"}, |
99 | {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, | 100 | {a="(A)(')(uN?)(%W)", b="aآء%3%4"}, |
100 | {a="(A)(')(iN?)$", b="aآء%3"}, | 101 | {a="(A)(')(iN?)$", b="aآء%3"}, |
@@ -179,8 +180,9 @@ hamzaeasy = { -- differences marked below with 'easy' | |||
179 | {a="'i'([^uaiUAI])", b="إI%1"}, | 180 | {a="'i'([^uaiUAI])", b="إI%1"}, |
180 | -- madda (historic writing below) | 181 | -- madda (historic writing below) |
181 | {a="'a'([^uaiUAI])", b="آ%1"}, | 182 | {a="'a'([^uaiUAI])", b="آ%1"}, |
182 | --tmp {a="'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, | 183 | {a="([^uiUI])\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, |
183 | {a="([^UIui])'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | 184 | {a="^\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="آ%1"}, |
185 | {a="(%W)\'a?A([%_%^%.]?[%`%'btjghdrzsfqklmnywAY])", b="%1آ%2"}, | ||
184 | --easy (begin) | 186 | --easy (begin) |
185 | {a="(A)(')(uN?)$", b="aاء%3"}, | 187 | {a="(A)(')(uN?)$", b="aاء%3"}, |
186 | {a="(A)(')(uN?)(%W)", b="aاء%3%4"}, | 188 | {a="(A)(')(uN?)(%W)", b="aاء%3%4"}, |
@@ -246,69 +248,69 @@ hamzaeasy = { -- differences marked below with 'easy' | |||
246 | } | 248 | } |
247 | 249 | ||
248 | tanwin = { | 250 | tanwin = { |
249 | {a="uNU", b="ٌو"}, | 251 | {a="%-?uNU", b="ٌو"}, |
250 | {a="aNU", b="ًوا"}, | 252 | {a="%-?aNU", b="ًوا"}, |
251 | {a="iNU", b="ٍو"}, | 253 | {a="%-?iNU", b="ٍو"}, |
252 | -- assimilations (begin) | 254 | -- assimilations (begin) |
253 | {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, | 255 | {a="%-?(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, |
254 | {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 256 | {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
255 | {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 257 | {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
256 | {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 258 | {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
257 | {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 259 | {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
258 | {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, | 260 | {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, |
259 | {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, | 261 | {a="%-?(iNI?)(%s)([rlmnwy])", b="ٍ%2%3%3"}, |
260 | -- assimilations (end) | 262 | -- assimilations (end) |
261 | -- quoted tanwīn (begin) | 263 | -- quoted tanwīn (begin) |
262 | {a="(\"uN)", b=""}, | 264 | {a="%-?(\"uN)", b=""}, |
263 | {a="(B)(\"aN)", b="%1"}, | 265 | {a="(B)%-?(\"aN)", b="%1"}, |
264 | {a="(\"aN)(_A)", b="ى"}, | 266 | {a="%-?(\"aN)(_A)", b="ى"}, |
265 | {a="(\"aN)(Y)", b="ى"}, | 267 | {a="%-?(\"aN)(Y)", b="ى"}, |
266 | {a="(T)(\"aN)", b="%1"}, | 268 | {a="(T)%-?(\"aN)", b="%1"}, |
267 | {a="(ء)(\"aN)", b="%1"}, | 269 | {a="(ء)%-?(\"aN)", b="%1"}, |
268 | {a="([^TA])(\"aN)", b="%1ا"}, | 270 | {a="([^TA])%-?(\"aN)", b="%1ا"}, |
269 | {a="(\"iN)", b=""}, | 271 | {a="%-?(\"iNI?)", b=""}, |
270 | -- quoted tanwīn (end) | 272 | -- quoted tanwīn (end) |
271 | {a="(uN)", b="ٌ"}, | 273 | {a="%-?(uN)", b="ٌ"}, |
272 | {a="(B)(aN)", b="%1ً"}, | 274 | {a="(B)%-?(aN)", b="%1ً"}, |
273 | {a="(aN)(_A)", b="ًى"}, | 275 | {a="%-?(aN)(_A)", b="ًى"}, |
274 | {a="(aN)(Y)", b="ًى"}, | 276 | {a="%-?(aN)(Y)", b="ًى"}, |
275 | {a="(T)(aN)", b="%1ً"}, | 277 | {a="(T)%-?(aN)", b="%1ً"}, |
276 | {a="(ء)(aN)", b="%1ً"}, | 278 | {a="(ء)%-?(aN)", b="%1ً"}, |
277 | {a="([^TA])(aN)", b="%1ًا"}, | 279 | {a="([^TA])%-?(aN)", b="%1ًا"}, |
278 | {a="(iNI?)", b="ٍ"} | 280 | {a="%-?(iNI?)", b="ٍ"} |
279 | } | 281 | } |
280 | 282 | ||
281 | tanwineasy = { -- 'easy' requires some lines to be taken out: | 283 | tanwineasy = { -- 'easy' requires some lines to be taken out: |
282 | {a="uNU", b="ٌو"}, | 284 | {a="%-?uNU", b="ٌو"}, |
283 | {a="aNU", b="ًوا"}, | 285 | {a="%-?aNU", b="ًوا"}, |
284 | {a="iNU", b="ٍو"}, | 286 | {a="%-?iNU", b="ٍو"}, |
285 | -- assimilations (begin) | 287 | -- assimilations (begin) |
286 | -- {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, | 288 | -- {a="%-?(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, |
287 | -- {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 289 | -- {a="%-?(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
288 | -- {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, | 290 | -- {a="%-?(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, |
289 | -- {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 291 | -- {a="(T)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
290 | -- {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | 292 | -- {a="(ء)%-?(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, |
291 | -- {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, | 293 | -- {a="([^TA])%-?(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, |
292 | -- {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, | 294 | -- {a="%-?(iNI?)(%s)([rlmnwy])", b="ٍ%2%3%3"}, |
293 | -- assimilations (end) | 295 | -- assimilations (end) |
294 | -- quoted tanwīn (begin) | 296 | -- quoted tanwīn (begin) |
295 | {a="(\"uN)", b=""}, | 297 | {a="%-?(\"uN)", b=""}, |
296 | {a="(B)(\"aN)", b="%1"}, | 298 | {a="(B)%-?(\"aN)", b="%1"}, |
297 | {a="(\"aN)(_A)", b="ى"}, | 299 | {a="%-?(\"aN)(_A)", b="ى"}, |
298 | {a="(\"aN)(Y)", b="ى"}, | 300 | {a="%-?(\"aN)(Y)", b="ى"}, |
299 | {a="(T)(\"aN)", b="%1"}, | 301 | {a="(T)%-?(\"aN)", b="%1"}, |
300 | {a="(ء)(\"aN)", b="%1"}, | 302 | {a="(ء)%-?(\"aN)", b="%1"}, |
301 | {a="([^TA])(\"aN)", b="%1ا"}, | 303 | {a="([^TA])%-?(\"aN)", b="%1ا"}, |
302 | {a="(\"iN)", b=""}, | 304 | {a="%-?(\"iNI?)", b=""}, |
303 | -- quoted tanwīn (end) | 305 | -- quoted tanwīn (end) |
304 | {a="(uN)", b="ٌ"}, | 306 | {a="%-?(uN)", b="ٌ"}, |
305 | {a="(B)(aN)", b="%1ً"}, | 307 | {a="(B)%-?(aN)", b="%1ً"}, |
306 | {a="(aN)(_A)", b="ًى"}, | 308 | {a="%-?(aN)(_A)", b="ًى"}, |
307 | {a="(aN)(Y)", b="ًى"}, | 309 | {a="%-?(aN)(Y)", b="ًى"}, |
308 | {a="(T)(aN)", b="%1ً"}, | 310 | {a="(T)%-?(aN)", b="%1ً"}, |
309 | {a="(ء)(aN)", b="%1ً"}, | 311 | {a="(ء)%-?(aN)", b="%1ً"}, |
310 | {a="([^TA])(aN)", b="%1ًا"}, | 312 | {a="([^TA])%-?(aN)", b="%1ًا"}, |
311 | {a="(iNI?)", b="ٍ"} | 313 | {a="%-?(iNI?)", b="ٍ"} |
312 | } | 314 | } |
313 | 315 | ||
314 | trigraphs = { -- trigraphs or more | 316 | trigraphs = { -- trigraphs or more |
@@ -452,7 +454,7 @@ digraphs = { | |||
452 | --tmp-added hyphen + initial alif without hamza: | 454 | --tmp-added hyphen + initial alif without hamza: |
453 | {a="(%-)([uai])([%^%_%.%`]?)(%a)", b="%1ا%3%4"}, | 455 | {a="(%-)([uai])([%^%_%.%`]?)(%a)", b="%1ا%3%4"}, |
454 | {a="^([uai])", b="ا%1"}, -- initial alif without hamza | 456 | {a="^([uai])", b="ا%1"}, -- initial alif without hamza |
455 | {a="(%s)([uai])", b="%1ا%2"}, -- initial alif without hamza | 457 | {a="(%s)([uai])", b="%1ا"}, -- initial alif without hamza |
456 | {a="%-%-", b="ـ"}, | 458 | {a="%-%-", b="ـ"}, |
457 | {a="ؤؤ", b="ؤّ"}, | 459 | {a="ؤؤ", b="ؤّ"}, |
458 | {a="أأ", b="أّ"}, | 460 | {a="أأ", b="أّ"}, |