diff options
-rw-r--r-- | arabluatex.dtx | 229 | ||||
-rw-r--r-- | arabluatex.lua | 4 | ||||
-rw-r--r-- | arabluatex_fullvoc.lua | 25 |
3 files changed, 230 insertions, 28 deletions
diff --git a/arabluatex.dtx b/arabluatex.dtx index d61316d..8ed305c 100644 --- a/arabluatex.dtx +++ b/arabluatex.dtx | |||
@@ -324,9 +324,9 @@ | |||
324 | % does not show the \arb[trans]{wa.slaT} above the \arb[trans]{'alif}; | 324 | % does not show the \arb[trans]{wa.slaT} above the \arb[trans]{'alif}; |
325 | % instead, the accompanying vowel is expressed (\arb{u a i}). | 325 | % instead, the accompanying vowel is expressed (\arb{u a i}). |
326 | % | 326 | % |
327 | % \DescribeOption{fullvoc}\\ In addition to what the |voc| mode does, | 327 | % \DescribeOption{fullvoc}\\ \label{fullvoc-mode}In addition to what |
328 | % |fullvoc| expresses the \arb[trans]{sukUn} and the | 328 | % the |voc| mode does, |fullvoc| expresses the \arb[trans]{sukUn} and |
329 | % \arb[trans]{wa.slaT}. | 329 | % the \arb[trans]{wa.slaT}. |
330 | % | 330 | % |
331 | % \DescribeOption{novoc}\\ None of the diacritics is showed in |novoc| | 331 | % \DescribeOption{novoc}\\ None of the diacritics is showed in |novoc| |
332 | % mode, unless otherwise specified (see \enquote{quoting} technique | 332 | % mode, unless otherwise specified (see \enquote{quoting} technique |
@@ -393,7 +393,7 @@ consonants, though three of them are also used as vowels | |||
393 | \begin{arabluacode} | 393 | \begin{arabluacode} |
394 | \begin{arab} | 394 | \begin{arab} |
395 | 'at_A .sadIquN 'il_A ju.hA ya.tlubu min-hu .himAra-hu | 395 | 'at_A .sadIquN 'il_A ju.hA ya.tlubu min-hu .himAra-hu |
396 | li-yarkaba-hu fI safraTiN qa.sIraTiN wa-qAla la-hu: | 396 | li-yarkaba-hu fI safraTiN qa.sIraTiN. wa-qAla la-hu: |
397 | \enquote{sawfa 'u`Idu-hu 'ilay-ka fI 'l-masA'i | 397 | \enquote{sawfa 'u`Idu-hu 'ilay-ka fI 'l-masA'i |
398 | wa-'adfa`u la-ka 'ujraTaN.} fa-qAla ju.hA: | 398 | wa-'adfa`u la-ka 'ujraTaN.} fa-qAla ju.hA: |
399 | \enquote{'anA 'AsifuN jiddaN 'annI lA 'asta.tI`u 'an | 399 | \enquote{'anA 'AsifuN jiddaN 'annI lA 'asta.tI`u 'an |
@@ -700,6 +700,11 @@ consonants, though three of them are also used as vowels | |||
700 | % \arb[trans]{'iqlIduN}, |'anna| \arb[voc]{'anna} | 700 | % \arb[trans]{'iqlIduN}, |'anna| \arb[voc]{'anna} |
701 | % \arb[trans]{'anna}, |'inna| \arb[voc]{'inna} \arb[trans]{'inna}. | 701 | % \arb[trans]{'anna}, |'inna| \arb[voc]{'inna} \arb[trans]{'inna}. |
702 | % | 702 | % |
703 | % \arb[trans]{hamzaT} followed by the long vowel \arb[novoc]{U} is | ||
704 | % encoded |'_U|: |'_Ul_A| \arb[voc]{'_Ul_A} \arb[trans]{'_Ul_A}, |'_UlU| | ||
705 | % \arb[voc]{'_UlU} \arb[trans]{'_UlU}, |'_UlA'ika| | ||
706 | % \arb[voc]{'_UlA'ika} \arb[trans]{'_UlA'ika}. | ||
707 | % | ||
703 | % \textbf{Middle \arb[trans]{hamzaT}}: |xA.ti'Ina| | 708 | % \textbf{Middle \arb[trans]{hamzaT}}: |xA.ti'Ina| |
704 | % \arb[voc]{xA.ti'Ina} \arb[trans]{xA.ti'Ina}, |ru'UsuN| | 709 | % \arb[voc]{xA.ti'Ina} \arb[trans]{xA.ti'Ina}, |ru'UsuN| |
705 | % \arb[voc]{ru'UsuN}, \arb[trans]{ru'UsuN}, |xa.tI'aTuN| | 710 | % \arb[voc]{ru'UsuN}, \arb[trans]{ru'UsuN}, |xa.tI'aTuN| |
@@ -788,40 +793,212 @@ consonants, though three of them are also used as vowels | |||
788 | % \end{quote} | 793 | % \end{quote} |
789 | % | 794 | % |
790 | % \paragraph{\arb[trans]{^saddaT}} | 795 | % \paragraph{\arb[trans]{^saddaT}} |
791 | % The \emph{necessary} \arb[trans]{ta^sdId} that always follows a | 796 | % \arb[trans]{ta^sdId} is either \emph{necessary} or \emph{euphonic}. |
792 | % vowel, whether short or long \parencite[see][i. 15 A--B]{Wright}, is | 797 | % |
793 | % encoded in writing the consonant that carries it twice: | 798 | % \subparagraph{The necessary \arb[trans]{ta^sdId}} always follows a |
799 | % vowel, whether short or long \parencite[see][i. 15 A--B]{Wright}. It | ||
800 | % is encoded in writing the consonant that carries it twice: | ||
794 | % \begin{quote} | 801 | % \begin{quote} |
795 | % |`allaqa| \arb[voc]{`allaqa} \arb[trans]{`allaqa}, |mAdduN| | 802 | % |`allaqa| \arb[voc]{`allaqa} \arb[trans]{`allaqa}, |mAdduN| |
796 | % \arb[voc]{mAdduN} \arb[trans]{mAdduN}, |'ammara| | 803 | % \arb[voc]{mAdduN} \arb[trans]{mAdduN}, |'ammara| |
797 | % \arb[voc]{'ammara} \arb[trans]{ammara}, |murruN| \arb[voc]{murruN} | 804 | % \arb[voc]{'ammara} \arb[trans]{ammara}, |murruN| \arb[voc]{murruN} |
798 | % \arb[trans]{murruN} | 805 | % \arb[trans]{murruN} |
799 | % \end{quote} | 806 | % \end{quote} |
800 | % | 807 | % |
801 | % The same applies e.g. for the \emph{euphonic} \arb[trans]{ta^sdId} | 808 | % \subparagraph{The euphonic \arb[trans]{ta^sdId}} always follows a |
802 | % with the letters \arb[novoc]{r}, \arb[novoc]{l}, \arb[novoc]{m}, | 809 | % vowelless consonant which is passed over in pronunciation and |
810 | % assimilated to a following consonant. It may be | ||
811 | % found \parencite[i. 15 B--16 C]{Wright}:--- | ||
812 | % \begin{enumerate}[(a)] | ||
813 | % \item With the \emph{solar} letters \arb[novoc]{t}, \arb[novoc]{_t}, | ||
814 | % \arb[novoc]{d}, \arb[novoc]{_d}, \arb[novoc]{r}, \arb[novoc]{z}, | ||
815 | % \arb[novoc]{s}, \arb[novoc]{^s}, \arb[novoc]{.s}, \arb[novoc]{.d}, | ||
816 | % \arb[novoc]{.t}, \arb[novoc]{.z}, \arb[novoc]{l}, \arb[novoc]{n}, | ||
817 | % after the article \arb[fullvoc]{al-}:--- | ||
818 | % \iffalse | ||
819 | %<*example> | ||
820 | % \fi | ||
821 | \begin{arabluacode}[text only] | ||
822 | Unlike \package{arabtex} and \package{arabxetex}, | ||
823 | \package{arabluatex} \emph{never requires the solar letter to be | ||
824 | written twice}, as it automatically generates the euphonic | ||
825 | \arb[trans]{ta^sdId} above the letter that carries it, whether the | ||
826 | article is written in the assimilated form or not, e.g. |al-^samsu| | ||
827 | \arb[voc]{al-^samsu} \arb[trans]{al-^samsu}, or |a^s-^samsu| | ||
828 | \arb[voc]{a^s-^samsu} \arb[trans]{a^s-^samsu}. | ||
829 | \end{arabluacode} | ||
830 | % \iffalse | ||
831 | %</example> | ||
832 | % \fi | ||
833 | % \begin{quote} | ||
834 | % |al-tamru| \arb[voc]{al-tamru} \arb[trans]{al-tamru}, | ||
835 | % |al-ra.hm_anu| \arb[voc]{al-ra.hm_anu} \arb[trans]{al-ra.hm_anu}, | ||
836 | % |al-.zulmu| \arb[voc]{al-.zulmu} \arb[trans]{al-.zulmu}, | ||
837 | % |al-lu.gaTu| \arb[voc]{al-lu.gaTu} \arb[trans]{al-lu.gaTu}. | ||
838 | % \end{quote} | ||
839 | % \item With the letters \arb[novoc]{r}, \arb[novoc]{l}, \arb[novoc]{m}, | ||
803 | % \arb[novoc]{w}, \arb[novoc]{y} after \arb[voc]{n} with | 840 | % \arb[novoc]{w}, \arb[novoc]{y} after \arb[voc]{n} with |
804 | % \arb[trans]{jazmaT}, or with the letter \arb[voc]{t} after the | 841 | % \arb[trans]{jazmaT}, and also after the \arb[trans]{tanwIn}:--- |
805 | % dentals (\arb[novoc]{_t}, \arb[novoc]{d}, \arb[novoc]{_d}, | ||
806 | % \arb[novoc]{.d}, \arb[novoc]{.t}, \arb[novoc]{.z}): | ||
807 | % \begin{quote} | 842 | % \begin{quote} |
808 | % |min rabbi-hi| \arb[voc]{min rabbi-hi}, \arb[trans]{min | 843 | % Note the absence of \arb[trans]{sukUn} above the passed over |
809 | % rabbi-hi},\footnote{\arb[trans]{min rabbi-hi} is actually wrong; | 844 | % \arb[novoc]{n} in the following examples, each of which is |
810 | % the correct romanization should be \emph{mir rabbi-hi}. Please | 845 | % accompanied with a consistent transliteration: |min rabbi-hi| |
811 | % adapt. This feature will be implemented in the next release of | 846 | % \arb[fullvoc]{min rabbi-hi}, \arb[trans]{min rabbi-hi}, % |
812 | % \package{arabluatex}.} % | 847 | % |min layliN| \arb[fullvoc]{min layliN} \arb[trans]{min layliN}, % |
813 | % |min layliN| \arb[voc]{min layliN} \arb[trans]{min | 848 | % |'an yaqtula| \arb[fullvoc]{'an yaqtula} \arb[trans]{'an yaqtula}. |
814 | % layliN},\footnote{For \emph{mil laylin}.}, % | 849 | % |
815 | % |'an yaqtula| \arb[voc]{'an yaqtula} \arb[trans]{'an | 850 | % With \arb[trans]{tanwIn}: |kitAbuN mubInuN| % |
816 | % yaqtula},\footnote{For \emph{ʾay yaqtula}.} |kitAbuN mubInuN| | 851 | % \arb[voc]{kitAbuN mubInuN} \arb[trans]{kitAbuN mubInuN}.% |
817 | % \arb[voc]{kitAbuN mubInuN} \arb[trans]{kitAbuN mubInuN}. | 852 | % \end{quote} |
818 | % | 853 | % \item With the letter \arb[voc]{t} after the dentals |
819 | % The second kind of assimilation, e.g. \arb[voc]{labi_tttu} for | 854 | % \arb[novoc]{_t}, \arb[novoc]{d}, \arb[novoc]{_d}, \arb[novoc]{.d}, |
855 | % \arb[novoc]{.t}, \arb[novoc]{.z} in certain parts of the verb: | ||
856 | % this kind of assimilation, e.g. \arb[voc]{labi_tttu} for | ||
820 | % \arb[voc]{labi_ttu} \arb[trans]{labi_ttu}, will be discarded here, | 857 | % \arb[voc]{labi_ttu} \arb[trans]{labi_ttu}, will be discarded here, |
821 | % as it is largely condemned by the | 858 | % as it is largely condemned by the |
822 | % grammarians \parencite[see][i. 16 B--C]{Wright}. | 859 | % grammarians \parencite[see][i. 16 B--C]{Wright}. |
860 | % \end{enumerate} | ||
861 | % | ||
862 | % \paragraph{The definite article and the \arb[trans]{'alifu 'l-wa.sli}} | ||
863 | % At the beginning of a sentence, \txarb{\char"0671} is never written, | ||
864 | % as \arb[fullvoc]{'l-.hamdu li-ll_ahi}; instead, to indicate that the | ||
865 | % \arb[trans]{'alif} is a connective \arb[trans]{'alif} | ||
866 | % (\arb[trans]{'alifu 'l-wa.sli}), the \arb[trans]{hamzaT} is omitted | ||
867 | % and only its accompanying vowel is expressed: | ||
868 | % \begin{quote} | ||
869 | % |al-.hamdu li-ll_ahi| \arb[fullvoc]{al-.hamdu li-ll_ahi} | ||
870 | % \arb[trans]{al-.hamdu li-ll_ahi}. | ||
871 | % \end{quote} | ||
872 | % As said above in section\vref{fullvoc-mode}, |fullvoc| is the mode | ||
873 | % in which \package{arabluatex} expresses the \arb[trans]{sukUn} and | ||
874 | % the \arb[trans]{wa.slaT}. \package{arabluatex} will take care of | ||
875 | % doing this automatically provided that the vowel which is to be | ||
876 | % absorbed by the final vowel of the preceding word is properly | ||
877 | % encoded, like so:--- | ||
878 | % \begin{enumerate}[(a)] | ||
879 | % \item Definite article at the beginning of a sentence is encoded\\ | ||
880 | % \arabluaverb{al-}, or \arabluaverb{a<solar letter>-}\\ if one | ||
881 | % wishes to mark the assimilation---which is in no way required, as | ||
882 | % \package{arabulatex} will detect all cases of assimilation. | ||
883 | % \item Definite article inside sentences is encoded\\ \arabluaverb{'l-} | ||
884 | % or \arabluaverb{'<solar letter>-}. | ||
885 | % \item In all remaining cases of elision, the \arb[trans]{'alifu | ||
886 | % 'l-wa.sli} is expressed by the vowel that accompanies the omitted | ||
887 | % \arb[trans]{hamzaT}: \meta{u, a, i}. | ||
888 | % \end{enumerate} | ||
889 | % \begin{quote} | ||
890 | % \textbf{Article}: |bAbu| |'l-madrasaTi| \arb[fullvoc]{bAbu | ||
891 | % 'l-madrasaTi} \arb[trans]{bAbu 'l-madrasaTi}, |al-maqAlaTu| | ||
892 | % |'l-'_Ul_A| \arb[fullvoc]{al-maqAlaTu 'l-'_Ul_A} | ||
893 | % \arb[trans]{al-maqAlaTu 'l-'_Ul_A}, |al-lu.gaTu| |'l-`arabiyyaTu| | ||
894 | % \arb[fullvoc]{al-lu.gaTu 'l-`arabiyyaTu} \arb[trans]{al-lu.gaTu | ||
895 | % 'l-`arabiyyaTu}, |fI| |.sinA`aTi| |'l-.tibbi| \arb[fullvoc]{fI | ||
896 | % .sinA`aTi 'l-.tibbi} \arb[trans]{fI .sinA`aTi 'l-.tibbi}, |'il_A| | ||
897 | % |'l-intiqA.di| \arb[fullvoc]{'il_A 'l-intiqA.di} \arb[trans]{'il_A | ||
898 | % 'l-intiqA.di}, |fI| |'l-ibtidA'i| \arb[fullvoc]{fI 'l-ibtidA'i} | ||
899 | % \arb[trans]{fI 'l-ibtidA'i}, |'abU| |'l-wazIri| \arb[fullvoc]{'abU | ||
900 | % 'l-wazIri} \arb[trans]{'abU 'l-wazIri}, |fa-lammA| |ra'aW| | ||
901 | % |'l-najma| \arb[fullvoc]{fa-lammA ra'aW 'l-najma} | ||
902 | % \arb[trans]{fa-lammA ra'aW 'l-najma}. | ||
903 | % | ||
904 | % \textbf{Particles}:--- | ||
905 | % \begin{enumerate}[(a)] | ||
906 | % \item \arb[trans]{li-}: \arb[trans]{'alifu 'l-wa.sli} is omitted | ||
907 | % in the article \arb[fullvoc]{al} when it is preceded by the | ||
908 | % preposition \arb[fullvoc]{li}: |li-l-rajuli| | ||
909 | % \arb[fullvoc]{li-l-rajuli} | ||
910 | % \arb[trans]{li-l-rajuli}.\\ | ||
911 | % If the first letter of the noun be \arb[novoc]{l}, then the | ||
912 | % \arb[novoc]{l} of the article also falls away, but | ||
913 | % \package{arabluatex} is aware of that: |li-l-laylaTi| | ||
914 | % \arb[fullvoc]{li-l-laylaTi} \arb[trans]{li-l-laylaTi}. | ||
915 | % \item \arb[trans]{la-}: the same applies for the affirmative | ||
916 | % particle \arb[fullvoc]{la}: |la-l-.haqqu| | ||
917 | % \arb[fullvoc]{la-l-.haqqu} \arb[trans]{la-l-.haqqu}. | ||
918 | % \item With the other particles, \arb[trans]{'alifu 'l-wa.sli} is | ||
919 | % expressed: |fI| |'l-madInaTi| \arb[fullvoc]{fI 'l-madInaTi} | ||
920 | % \arb[trans]{fI 'l-madInaTi}, |wa-'l-rajulu| | ||
921 | % \arb[fullvoc]{wa-'l-rajulu} \arb[trans]{wa-'l-rajulu}, | ||
922 | % |bi-'l-qalami| \arb[fullvoc]{bi-'l-qalami} | ||
923 | % \arb[trans]{bi-'l-qalami}, |bi-'l-ru`bi| | ||
924 | % \arb[fullvoc]{bi-'l-ru`bi} \arb[trans]{bi-'l-ru`bi}. | ||
925 | % \end{enumerate} | ||
926 | % | ||
927 | % \textbf{Perfect active, imperative, nomen actionis}: |qAla| | ||
928 | % |isma`| \arb[fullvoc]{qAla isma`} \arb[trans]{qAla isma`}, |qAla| | ||
929 | % |uqtul| \arb[fullvoc]{qAla uqtul} \arb[trans]{qAla uqtul}, |huwa| | ||
930 | % |inhazama| \arb[fullvoc]{huwa inhazama} \arb[trans]{huwa | ||
931 | % inhazama}, |wa-ustu`mila| \arb[fullvoc]{wa-ustu`mila} | ||
932 | % \arb[trans]{wa-ustu`mila}, |qad-i| |in.sarafa| \arb[fullvoc]{qadi | ||
933 | % in.sarafa} \arb[trans]{qadi in.sarafa}, |al-iqtidAru| | ||
934 | % \arb[fullvoc]{al-iqtidAru} \arb[trans]{al-iqtidAru}, |'il_A| | ||
935 | % |'l-intiqA.di| \arb[fullvoc]{'il_A 'l-intiqA.di} \arb[trans]{'il_A | ||
936 | % 'l-intiqA.di}, |lawi| |istaqbala| \arb[fullvoc]{lawi istaqbala} | ||
937 | % \arb[trans]{lawi istaqbala}. | ||
938 | % | ||
939 | % \textbf{Other cases}: |'awi| |ismu-hu| \arb[fullvoc]{'awi ismu-hu} | ||
940 | % \arb[trans]{'awi ismu-hu}, |.hunaynu| |ibnu| |'is.h_aqa| | ||
941 | % \arb[fullvoc]{.hunaynu ibnu 'is.h_aqa} \arb[trans]{\cap{.h}unaynu | ||
942 | % ibnu \cap{'is.h_aqa}}, |imru'u| |'l-qaysi| \arb[fullvoc]{imru'u | ||
943 | % 'l-qaysi} \arb[trans]{\cap{i}mru'u \cap{'l-qaysi}}, |la-aymunu| | ||
944 | % |'l-l_ahi| \arb[fullvoc]{la-aymunu 'l-l_ahi} \arb[trans]{la-aymunu | ||
945 | % 'l-l_ahi}. | ||
946 | % \end{quote} | ||
947 | % | ||
948 | % \subparagraph{\arb[trans]{'alifu 'l-wa.sli} preceded by a long | ||
949 | % vowel} The long vowel preceding the connective \arb[trans]{'alif} is | ||
950 | % shortened in pronunciation \parencite[i. 21 B--D]{Wright}. This is | ||
951 | % does not appear in the Arabic script, but \package{arabluatex} takes | ||
952 | % it into account in some transliteration standards:--- | ||
953 | % \begin{quote} | ||
954 | % |fI| |'l-nAsi| \arb[fullvoc]{fI 'l-nAsi} \arb[trans]{fI 'l-nAsi}, | ||
955 | % |'abU| |'l-wazIri| \arb[fullvoc]{'abU 'l-wazIri} \arb[trans]{'abU | ||
956 | % 'l-wazIri}, |fI| |'l-ibtidA'i| \arb[fullvoc]{fI 'l-ibtidA'i} | ||
957 | % \arb[trans]{fI 'l-ibtidA'i}, |_dU 'l-i`lAli| \arb[fullvoc]{_dU | ||
958 | % 'l-i`lAli} \arb[trans]{_dU 'l-i`lAli}. | ||
959 | % \end{quote} | ||
960 | % | ||
961 | % \subparagraph{\arb[trans]{'alifu 'l-wa.sli} preceded by a diphthong} | ||
962 | % The diphthong is resolved into two simple vowels \parencite[i. 21 | ||
963 | % D--22 A]{Wright} viz. \emph{ay}~→ \emph{\u{a}\u{i}} and \emph{aw}~→ | ||
964 | % \emph{\u{a}\u{u}}. \package{arabluatex} detects the cases in which | ||
965 | % this rule applies:--- | ||
966 | % \begin{quote} | ||
967 | % |fI| |`aynay| |'l-maliki| \arb[fullvoc]{fI `aynay 'l-maliki} | ||
968 | % \arb[trans]{fI `aynay 'l-maliki}, |ix^say| |'l-qawma| | ||
969 | % \arb[fullvoc]{ix^say 'l-qawma} \arb[trans]{ix^say 'l-qawma}, | ||
970 | % |mu.s.tafaw| |'l-l_ahi| \arb[fullvoc]{mu.s.tafaw 'l-l_ahi} | ||
971 | % \arb[trans]{mu.s.tafaw 'l-l_ahi}. | ||
972 | % | ||
973 | % |ramaW| |'l-.hijAraTa| \arb[fullvoc]{ramaW 'l-.hijAraTa} | ||
974 | % \arb[trans]{ramaW 'l-.hijAraTa}, |fa-lammA| |ra'aW | |'l-najma| | ||
975 | % \arb[fullvoc]{fa-lammA ra'aW 'l-najma} \arb[trans]{fa-lammA ra'aW | ||
976 | % 'l-najma}. | ||
977 | % \end{quote} | ||
978 | % | ||
979 | % \subparagraph{\arb[trans]{'alifu 'l-wa.sli} preceded by a consonant | ||
980 | % with \arb[trans]{sukUn}} | ||
981 | % The vowel which the consonant takes, either its original vowel, or | ||
982 | % that which belongs to the connective \arb[trans]{'alif} or the | ||
983 | % \arb[trans]{kasraT}; in most of the cases \parencite[i. 22 | ||
984 | % A--C]{Wright}, it is encoded explicitly, like so:--- | ||
985 | % \begin{quote} | ||
986 | % |'antumu| |'l-kA_dibUna| \arb[fullvoc]{'antumu 'l-kA_dibUna} | ||
987 | % \arb[trans]{'antumu 'l-kA_dibUna}, |ra'aytumu| |'l-rajula| | ||
988 | % \arb[fullvoc]{ra'aytumu 'l-rajula} \arb[trans]{ra'aytumu | ||
989 | % 'l-rajula}, |mani| |'l-ka_d_dAbu| \arb[fullvoc]{mani 'l-ka_d_dAbu} | ||
990 | % \arb[trans]{mani 'l-ka_d_dAbu}, |qatalati| |'l-rUmu| | ||
991 | % \arb[fullvoc]{qatalati 'l-rUmu} \arb[trans]{qatalati | ||
992 | % \cap{'l-rUmu}}. | ||
993 | % \end{quote} | ||
994 | % However, the Arabic script does not shows the \arb[trans]{kasraT} | ||
995 | % which is taken by the nouns having \arb[trans]{tanwIn} although it | ||
996 | % is explicit in pronunciation and must appear in some transliteration | ||
997 | % standards. \package{arabluatex} takes care of this automatically:--- | ||
998 | % \begin{quote} | ||
999 | % |mu.hammaduN| |'l-nabI| \arb[fullvoc]{mu.hammaduN 'l-nabI} | ||
1000 | % \arb[trans]{\cap{m}u.hammaduN 'l-nabI}. | ||
823 | % \end{quote} | 1001 | % \end{quote} |
824 | % | ||
825 | % | 1002 | % |
826 | % \StopEventually{} | 1003 | % \StopEventually{} |
827 | % | 1004 | % |
diff --git a/arabluatex.lua b/arabluatex.lua index de33bb3..c14e396 100644 --- a/arabluatex.lua +++ b/arabluatex.lua | |||
@@ -165,8 +165,8 @@ local function fullvoc(str) | |||
165 | for i = 1,#hamzafv do | 165 | for i = 1,#hamzafv do |
166 | inside = string.gsub(inside, hamzafv[i].a, hamzafv[i].b) | 166 | inside = string.gsub(inside, hamzafv[i].a, hamzafv[i].b) |
167 | end | 167 | end |
168 | for i = 1,#tanwin do | 168 | for i = 1,#tanwinfv do |
169 | inside = string.gsub(inside, tanwin[i].a, tanwin[i].b) | 169 | inside = string.gsub(inside, tanwinfv[i].a, tanwinfv[i].b) |
170 | end | 170 | end |
171 | for i = 1,#trigraphsfv do | 171 | for i = 1,#trigraphsfv do |
172 | inside = string.gsub(inside, trigraphsfv[i].a, trigraphsfv[i].b) | 172 | inside = string.gsub(inside, trigraphsfv[i].a, trigraphsfv[i].b) |
diff --git a/arabluatex_fullvoc.lua b/arabluatex_fullvoc.lua index e6cdb42..8f6ce66 100644 --- a/arabluatex_fullvoc.lua +++ b/arabluatex_fullvoc.lua | |||
@@ -173,6 +173,31 @@ trigraphsfv = { -- trigraphs or more | |||
173 | {a="(n)(%s)([rlmnwy])", b="%1%2%3%3"} | 173 | {a="(n)(%s)([rlmnwy])", b="%1%2%3%3"} |
174 | } | 174 | } |
175 | 175 | ||
176 | tanwinfv = { | ||
177 | {a="uNU", b="ٌو"}, | ||
178 | {a="aNU", b="ًوا"}, | ||
179 | {a="iNU", b="ٍو"}, | ||
180 | {a="([uai]N)(%s)([uai])", b="%1%2ٱ"}, | ||
181 | {a="(aN[%_]?[AY])(%s)([uai])", b="%1%2ٱ"}, | ||
182 | -- assimilations (begin) | ||
183 | {a="(uN)(%s)([rlmnwy])", b="ٌ%2%3%3"}, | ||
184 | {a="(aN)(_A)(%s)([rlmnwy])", b="ًى%3%4%4"}, | ||
185 | {a="(aN)(Y)(%s)([rlmnwy])", b="ًى%3%4%4"}, | ||
186 | {a="(T)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | ||
187 | {a="(ء)(aN)(%s)([rlmnwy])", b="%1ً%3%4%4"}, | ||
188 | {a="([^TA])(aN)(%s)([rlmnwy])", b="%1ًا%3%4%4"}, | ||
189 | {a="(iN)(%s)([rlmnwy])", b="ٍ%2%3%3"}, | ||
190 | -- assimilations (end) | ||
191 | {a="(uN)", b="ٌ"}, | ||
192 | {a="(B)(aN)", b="%1ً"}, | ||
193 | {a="(aN)(_A)", b="ًى"}, | ||
194 | {a="(aN)(Y)", b="ًى"}, | ||
195 | {a="(T)(aN)", b="%1ً"}, | ||
196 | {a="(ء)(aN)", b="%1ً"}, | ||
197 | {a="([^TA])(aN)", b="%1ًا"}, | ||
198 | {a="(iN)", b="ٍ"} | ||
199 | } | ||
200 | |||
176 | -- this is new | 201 | -- this is new |
177 | digraphsfv = { | 202 | digraphsfv = { |
178 | -- diphthongs to be resolved before ʾalif conjunctionis | 203 | -- diphthongs to be resolved before ʾalif conjunctionis |