diff options
author | Karl Berry <karl@freefriends.org> | 2010-03-05 00:33:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-03-05 00:33:58 +0000 |
commit | bee7379de288cd8caaec136a9bf4d51c84990842 (patch) | |
tree | 412948a75ed8be3a5e732fb3a6895805039d7f72 /Master/texmf-dist/doc | |
parent | 5f599586aa0d469798bf20018a6d4b730726a43c (diff) |
arabxetex update (4mar10)
git-svn-id: svn://tug.org/texlive/trunk@17320 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/README | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps | 294 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/arabtex-uighur.maps | 281 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/arabtex.maps | 780 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx | 2058 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf | bin | 315621 -> 317330 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/examples/ednotes_example.pdf (renamed from Master/texmf-dist/doc/xelatex/arabxetex/ednotes_example.pdf) | bin | 70740 -> 70740 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/examples/ednotes_example.tex (renamed from Master/texmf-dist/doc/xelatex/arabxetex/ednotes_example.tex) | 0 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/examples/minimal.tex (renamed from Master/texmf-dist/doc/xelatex/arabxetex/minimal.tex) | 8 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/arabxetex/makemaps.pl | 1117 |
10 files changed, 8 insertions, 4534 deletions
diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/README b/Master/texmf-dist/doc/xelatex/arabxetex/README index 5a0b68f143f..06ad3a8c06f 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/README +++ b/Master/texmf-dist/doc/xelatex/arabxetex/README @@ -1,5 +1,5 @@ -------------------------- -THE ARABXETEX PACKAGE v1.1.2 +THE ARABXETEX PACKAGE v1.1.4 This package provides a convenient ArabTeX-like user-interface for typesetting languages using the Arabic script in XeLaTeX, with flexible access to font @@ -14,4 +14,4 @@ The TECkit fontmapping files (*.map and *.tec) should be copied to ------------------------- François Charette -2007-2008 +© 2007–2010 diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps b/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps deleted file mode 100644 index 75e4da0ebd0..00000000000 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-kurdish.maps +++ /dev/null @@ -1,294 +0,0 @@ -LHSName "ArabTeX-Kurdish" -RHSName "UNICODE" - -Define a U+0061 ;a -Define b U+0062 ;b -Define c U+0063 ;c -Define d U+0064 ;d -Define e U+0065 ;e -Define f U+0066 ;f -Define g U+0067 ;g -Define h U+0068 ;h -Define i U+0069 ;i -Define j U+006A ;j -Define k U+006B ;k -Define l U+006C ;l -Define m U+006D ;m -Define n U+006E ;n -Define o U+006F ;o -Define p U+0070 ;p -Define q U+0071 ;q -Define r U+0072 ;r -Define s U+0073 ;s -Define t U+0074 ;t -Define u U+0075 ;u -Define v U+0076 ;v -Define w U+0077 ;w -Define x U+0078 ;x -Define y U+0079 ;y -Define z U+007A ;z -Define A U+0041 ;A -Define B U+0042 ;B -Define E U+0045 ;E -Define G U+0047 ;G -Define I U+0049 ;I -Define N U+004E ;N -Define O U+004F ;O -Define T U+0054 ;T -Define U U+0055 ;U -Define Y U+0059 ;Y -Define C U+005E ;^ << CARET -Define UL U+005F ;_ << UNDERLINE -Define P U+002E ;. << DOT -Define V U+002C ;, << COMMA (_V_irgule) -Define CO U+003A ;: << COLON -Define Ain U+0060 ;` -Define H U+0027 ;' << HAMZA -Define Q U+0022 ;" << QUOTE -Define Z U+002D ;- << HYPHEN -Define BAR U+007C ;| -Define LLAH U+006C U+006C U+005F U+0061 U+0068 - -pass(Unicode) - -Class [Digits] = (U+0030..U+0039) -Class [ArDigits] = (U+0660..U+0669) - - -; special ligatures -;; 1. Standard ArabTeX input -;; WARNING! there are, alas, two classes of Arabic fonts: -;; a) Those that are Unicode-compliant and include the initial alif in glyph U+FDF2 -;; For these the ligature llah can be accessed by the sequence lam-lam-ha -;; b) Those that do not have the initial alif in U+FDF2 -#0 (a|A) l Z LLAH > U+0627 U+FDF2 ;; 'al-ll_ah' or 'Al-ll_ah' -#1 (a|A) l Z LLAH > U+FDF2 ;; 'al-ll_ah' or 'Al-ll_ah' -#0 LLAH > U+FDF2 ;; 'll_ah' > U+FDF2 -#1 LLAH > U+0644 U+0644 U+0647 ;; 'll_ah' -> 'l l h' -;; UPPERCASE mnemonics for various ligatures or special glyphs -;; 2a. custom ArabXeTeX input for ligatures not defined in Unicode -U+004C U+004C U+0048 > U+0644 U+0644 U+0647 ;; 'LLH' -> 'l l h' -U+0046 U+0041 U+004C U+0049 U+004C U+004C U+0041 U+0048 > U+0641 U+064E U+0644 U+0650 U+0644 U+0647 ;; 'FALILLAH' : ligature in Adobe Arabic -;; 2b. Ligatures and glyphs defined in Unicode: -#0 U+0041 U+004C U+004C U+0041 U+0048 > U+0627 U+FDF2 ; 'ALLAH' -#1 U+0041 U+004C U+004C U+0041 U+0048 > U+FDF2 ; 'ALLAH' -#0 U+004C U+004C U+0041 U+0048 > U+FDF2 ; 'LLAH' -#1 U+004C U+004C U+0041 U+0048 > U+0644 U+0644 U+0647 ; 'LLAH' - -U+0053 U+004C U+004D > U+FDFA ; 'SLM' : .sallY al-ll_ah `alayhi wa-sallam -U+0028 U+0028 > U+FD3F ;; '((' : ornate right par -U+0029 U+0029 > U+FD3E ;; '))' : ornate left par -U+0052 U+0049 U+0059 U+0041 U+004C > U+FDFC ;; 'RIYAL' : Saudi currency sign -;; most fonts won't have the following ones: -U+0053 U+0041 U+004C U+004C U+0041 U+0053 U+0054 U+004F U+0050 > U+FDF0 ;; 'SALLASTOP' (.sallY with "ye-barree", Quranic stop sign) -U+0051 U+0041 U+004C U+0041 > U+FDF1 ;; 'QALA' : qalY with ye-barree, Quranic stop sign -U+0041 U+004B U+0042 U+0041 U+0052 > U+FDF3 ;; 'AKBAR' -U+004D U+0055 U+0048 U+0041 U+004D U+004D U+0041 U+0044 > U+FDF4 ;; 'MUHAMMAD' -U+0053 U+0041 U+004C U+0041 U+004D > U+FDF5 ;; 'SALAM' -U+0052 U+0041 U+0053 U+004F ? U+0055 U+004C > U+FDF6 ;; 'RASUL' (also unicode 'RASOUL)' -U+0041 U+004C U+0041 U+0059 U+0048 (U+0049|U+0045) > U+FDF7 ;; 'ALAYHI' (also unicode 'ALAYHE)' -U+0057 U+0041 U+0053 U+0041 U+004C U+004C U+0041 U+004D > U+FDF8 ;; 'WASALLAM' -U+0053 U+0041 U+004C U+004C U+0041 > U+FDF9 ;; 'SALLA' -U+004A U+0041 U+004C U+004C U+0041 > U+FDFB ;; 'JALLA' : "jalla jalAluhu" -U+0042 U+0041 U+0053 U+004D U+0041 U+004C U+0041 > U+FDFD ;; 'BASMALA' : very few fonts have this ligature afaik - -U+005E U+0053 U+004C U+0059 > U+06D6 ;; ^SLY -U+005E U+0051 U+004C U+0059 > U+06D7 ;; ^QLY -U+005E U+004D U+0049 U+004D > U+06D8 ;; ^MIM- -U+005E U+004C U+0041 > U+06D9 ;; ^LA -U+005E U+004A U+0049 U+004D > U+06DA ;; ^JIM -U+005E U+0044 U+004F U+0054 U+0053 > U+06DB ;; ^DOTS -U+005E U+0053 U+0049 U+004E > U+06DC ;; ^SIN -U+0048 U+0049 U+005A U+0042 > U+06DE ;; HIZB -U+0043 U+0049 U+0052 U+0043 U+005A U+0045 U+0052 U+004F > U+06DF ;; CIRCZERO -U+0052 U+0045 U+0043 U+0054 U+005A U+0045 U+0052 U+004F > U+06E0 ;; RECTZERO -U+005E U+004A U+0041 U+005A U+004D > U+06E1 ;; ^JAZM -U+005E U+004D U+0049 U+004D > U+06E2 ;; ^MIM -U+005F U+0053 U+0049 U+004E > U+06E3 ;; _SIN -U+005E U+004D U+0041 U+0044 U+0044 U+0041 > U+06E4 ;; ^MADDA -U+0057 U+0041 U+0057 > U+06E5 ;; WAW -U+0059 U+0045 U+0048 > U+06E6 ;; YEH -U+005E U+0059 U+0045 U+0048 > U+06E7 ;; ^YEH -U+005E U+004E U+0055 U+004E > U+06E8 ;; ^NUN -U+0053 U+0041 U+004A U+0044 U+0041 > U+06E9 ;; SAJDA -U+005F U+0053 U+0054 U+004F U+0050 > U+06EA ;; _STOP -U+005E U+0053 U+0054 U+004F U+0050 > U+06EB ;; ^STOP -U+005E U+0052 U+0053 U+0054 U+004F U+0050 > U+06EC ;; ^RSTOP -U+005F U+004D U+0049 U+004D > U+06ED ;; _MIM - -U+0044 U+004F U+0054 U+0053 > U+061E ;; DOTS (also possible by typing "::") - -;; This is to enclose digits within glyph U+06DD, see http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=ArabicFonts -U+005B U+005B ([Digits]+)=dig U+005D U+005D > U+202E U+06DD @dig U+202C ; [[digits]] - - -; vowels - -E / # _ > U+0626 U+06CE -E > U+06CE -e / # _ > U+0626 U+0647 U+200C ; h always final -e > U+0647 U+200C -i / # _ > U+0626 -Q i > U+0650 -i > ; -Q I / # _ > U+0626 U+064A U+0650 -Q I > U+064A U+0650 -I / # _ > U+0626 U+064A -I > U+064A -(a|A) / # _ > U+0626 U+0627 -(a|A) > U+0627 -(o|O) / # _ > U+0626 U+06C6 -(o|O) > U+06C6 -u / # _ > U+0626 U+0648 -u > U+0648 -U / # _ > U+0626 U+0648 U+0648 -U > U+0648 U+0648 -Ain e > U+0639 U+0647 U+200C - - -P z P z > U+0638 U+0651 ;;SHADDA -P z > U+0638 -C z C z > U+0698 U+0651 ;;SHADDA -C z > U+0698 -V z V z > U+0696 U+0651 ;pashto ;;SHADDA -V z > U+0696 ;pashto -z z > U+0632 U+0651 ;;SHADDA -z > U+0632 -Y Y > U+0649 U+0651 ;;SHADDA -Y > U+0649 -w w > U+0648 U+0651 ;;SHADDA -w > U+0648 -y y > U+064A U+0651 ;;SHADDA -y > U+064A -v v > U+06A4 U+0651 ;;SHADDA -v > U+06A4 -V t V t > U+0679 U+0651 ; urdu ;;SHADDA -V t > U+0679 -UL t UL t > U+062B U+0651 ;;SHADDA -UL t > U+062B -P t P t > U+0637 U+0651 ;;SHADDA -P t > U+0637 -t t > U+062A U+0651 ;;SHADDA -t > U+062A -T T > U+0629 U+0651 ;;SHADDA -T > U+0629 -(C|V) s (C|V) s > U+0634 U+0651 ;;SHADDA -(C|V) s > U+0634 -P s P s > U+0635 U+0651 ;;SHADDA -P s > U+0635 -CO s CO s > U+069B U+0651 -CO s > U+069B ; sin with 3 dots below -s s > U+0633 U+0651 ;;SHADDA -s > U+0633 -;; also missing U+0694 : r with dot below -V r V r > U+0694 U+0651 ;Kurdish ;;SHADDA -V r > U+0694 -C r C r > U+0692 U+0651 ;Kurdish ;;SHADDA ; missing in ArabTeX <<< -C r > U+0692 -P r P r > U+0695 U+0651 ;Kurdish ;;SHADDA -P r > U+0695 -r r > U+0631 U+0651 ;;SHADDA -r > U+0631 -P q P q > U+066F U+0651 ;;SHADDA -P q > U+066F -q q > U+0642 U+0651 ;;SHADDA -q > U+0642 -p p > U+067E U+0651 ;;SHADDA -p > U+067E -C n C n > U+06AD U+0651 ;;SHADDA -C n > U+06AD -P n P n > U+06BA U+0651 ; urdu ;;SHADDA -P n > U+06BA ; -V n V n > U+06BC U+0651 ; Pashto -V n > U+06BC ; Pashto -n n > U+0646 U+0651 ;;SHADDA -n > U+0646 -m m > U+0645 U+0651 ;;SHADDA -m > U+0645 -P l P l > U+06B6 U+0651 ; -P l > U+06B6 ; ADDED <<< -C l C l > U+06B5 U+0651 ;kurdish ;;SHADDA -C l > U+06B5 -l l > U+0644 U+0651 ;;SHADDA -l > U+0644 -P k P k > U+06A9 U+0651 ; pashto urdu ;;SHADDA -P k > U+06A9 -UL k UL k > U+063A U+0651 ;;SHADDA -UL k > U+063A -k k > U+0643 U+0651 ;;SHADDA -k > U+0643 -c c > U+062C U+0651 ;;SHADDA -c > U+062C -x x > U+062E U+0651 ;;SHADDA -x > U+062E -j j > U+0698 U+0651 ;;SHADDA -j > U+0698 -UL h UL h > U+062E U+0651 ;;SHADDA -UL h > U+062E -P h P h > U+062D U+0651 ;;SHADDA -P h > U+062D -V h V h > U+06C1 U+0651 -V h > U+06C1 -h h > U+200C U+06BE U+0651 ;;SHADDA -h > U+200C U+06BE ; h always initial form -V g V g > U+06AC U+0651 ;;SHADDA -V g > U+06AC ; kaf with dot above -P (g|x) P (g|x) > U+063A U+0651 ;;SHADDA -P (g|x) > U+063A -C g C g > U+063A U+0651 ;;SHADDA -C g > U+063A -g g > U+06AF U+0651 ;;SHADDA -g > U+06AF -G G > U+06AB U+0651 ;pashto ;;SHADDA -G > U+06AB ;pashto -P f P f > U+06A1 U+0651 ;;SHADDA -P f > U+06A1 -f f > U+0641 U+0651 ;;SHADDA -f > U+0641 -V d V d > U+0688 U+0651 ;urdu ;;SHADDA -V d > U+0688 ;urdu -C d C d > U+06EE ; not defined in ArabTeX U+0651 ;;SHADDA -C d > U+06EE ; not defined in ArabTeX -UL d UL d > U+0630 U+0651 ;;SHADDA -UL d > U+0630 -P d P d > U+0636 U+0651 ;;SHADDA -P d > U+0636 -d d > U+062F U+0651 ;;SHADDA -d > U+062F -(C|V) c (C|V) c > U+0686 U+0651 ;;SHADDA -(C|V) c > U+0686 -P b P b > U+066E U+0651 ;;SHADDA -P b > U+066E -b b > U+0628 U+0651 ;;SHADDA -b > U+0628 -Ain Ain > U+0639 U+0651 ;;SHADDA -Ain > U+0639 -H > U+0626 -U+002C / [Digits] _ [Digits] > U+002C ; comma in numerical context not an Arabic comma -Z Z / [Digits] _ [Digits] > U+2013 ; two hyphens in numerical context -> endash -(Z|U+005D|U+005B|U+0028|U+0029)=xx / [Digits] _ [Digits] > U+202D @xx U+202C ; hyphen or brackets in numerical context: surrounded by LRO & PDF marks -[Digits] > [ArDigits] -Z Z Z / # _ # > U+2014 -Z Z / # _ # > U+2013 -Z Z > U+0640 -B > U+0640 -Z / # _ > U+200D ; -x > force initial form with "zero-width joiner" -Z / _ # > U+200D ; x- > force final form -U+003C U+003C > U+00BB ;<< -U+003E U+003E > U+00AB ;>> -U+00AB > U+00BB -U+00BB > U+00AB -UL > U+0640 ;_ -U+003F > U+061F ;? -U+003B > U+061B ;; -U+003A U+003A > U+061E ;; '::' ligature 'DOTS' also defined above... -U+002C > U+060C ;, -U+005D / . _ . > U+200D U+005D U+200D ; keep shaping when inserting ...[...]... -U+005B / . _ . > U+200D U+005B U+200D ; ... (but of course this screws up contextual analysis, so quoting of hamzas etc may be necessary) -Q > ; -N > ; -C > ;^ -Z > ;- -BAR > ;| - - diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-uighur.maps b/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-uighur.maps deleted file mode 100644 index 27da35ca0d2..00000000000 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex-uighur.maps +++ /dev/null @@ -1,281 +0,0 @@ -LHSName "ArabTeX-Uighur" -RHSName "UNICODE" - -Define a U+0061 ;a -Define b U+0062 ;b -Define c U+0063 ;c -Define d U+0064 ;d -Define e U+0065 ;e -Define f U+0066 ;f -Define g U+0067 ;g -Define h U+0068 ;h -Define i U+0069 ;i -Define j U+006A ;j -Define k U+006B ;k -Define l U+006C ;l -Define m U+006D ;m -Define n U+006E ;n -Define o U+006F ;o -Define p U+0070 ;p -Define q U+0071 ;q -Define r U+0072 ;r -Define s U+0073 ;s -Define t U+0074 ;t -Define u U+0075 ;u -Define v U+0076 ;v -Define w U+0077 ;w -Define x U+0078 ;x -Define y U+0079 ;y -Define z U+007A ;z -Define A U+0041 ;A -Define B U+0042 ;B -Define E U+0045 ;E -Define G U+0047 ;G -Define I U+0049 ;I -Define N U+004E ;N -Define O U+004F ;O -Define T U+0054 ;T -Define U U+0055 ;U -Define Y U+0059 ;Y -Define C U+005E ;^ << CARET -Define UL U+005F ;_ << UNDERLINE -Define P U+002E ;. << DOT -Define V U+002C ;, << COMMA (_V_irgule) -Define CO U+003A ;: << COLON -Define Ain U+0060 ;` -Define H U+0027 ;' << HAMZA -Define Q U+0022 ;" << QUOTE -Define Z U+002D ;- << HYPHEN -Define BAR U+007C ;| -Define LLAH U+006C U+006C U+005F U+0061 U+0068 - -pass(Unicode) - -Class [Digits] = (U+0030..U+0039) -Class [ArDigits] = (U+0660..U+0669) - - -; special ligatures -;; 1. Standard ArabTeX input -;; WARNING! there are, alas, two classes of Arabic fonts: -;; a) Those that are Unicode-compliant and include the initial alif in glyph U+FDF2 -;; For these the ligature llah can be accessed by the sequence lam-lam-ha -;; b) Those that do not have the initial alif in U+FDF2 -#0 (a|A) l Z LLAH > U+0627 U+FDF2 ;; 'al-ll_ah' or 'Al-ll_ah' -#1 (a|A) l Z LLAH > U+FDF2 ;; 'al-ll_ah' or 'Al-ll_ah' -#0 LLAH > U+FDF2 ;; 'll_ah' > U+FDF2 -#1 LLAH > U+0644 U+0644 U+0647 ;; 'll_ah' -> 'l l h' -;; UPPERCASE mnemonics for various ligatures or special glyphs -;; 2a. custom ArabXeTeX input for ligatures not defined in Unicode -U+004C U+004C U+0048 > U+0644 U+0644 U+0647 ;; 'LLH' -> 'l l h' -U+0046 U+0041 U+004C U+0049 U+004C U+004C U+0041 U+0048 > U+0641 U+064E U+0644 U+0650 U+0644 U+0647 ;; 'FALILLAH' : ligature in Adobe Arabic -;; 2b. Ligatures and glyphs defined in Unicode: -#0 U+0041 U+004C U+004C U+0041 U+0048 > U+0627 U+FDF2 ; 'ALLAH' -#1 U+0041 U+004C U+004C U+0041 U+0048 > U+FDF2 ; 'ALLAH' -#0 U+004C U+004C U+0041 U+0048 > U+FDF2 ; 'LLAH' -#1 U+004C U+004C U+0041 U+0048 > U+0644 U+0644 U+0647 ; 'LLAH' - -U+0053 U+004C U+004D > U+FDFA ; 'SLM' : .sallY al-ll_ah `alayhi wa-sallam -U+0028 U+0028 > U+FD3F ;; '((' : ornate right par -U+0029 U+0029 > U+FD3E ;; '))' : ornate left par -U+0052 U+0049 U+0059 U+0041 U+004C > U+FDFC ;; 'RIYAL' : Saudi currency sign -;; most fonts won't have the following ones: -U+0053 U+0041 U+004C U+004C U+0041 U+0053 U+0054 U+004F U+0050 > U+FDF0 ;; 'SALLASTOP' (.sallY with "ye-barree", Quranic stop sign) -U+0051 U+0041 U+004C U+0041 > U+FDF1 ;; 'QALA' : qalY with ye-barree, Quranic stop sign -U+0041 U+004B U+0042 U+0041 U+0052 > U+FDF3 ;; 'AKBAR' -U+004D U+0055 U+0048 U+0041 U+004D U+004D U+0041 U+0044 > U+FDF4 ;; 'MUHAMMAD' -U+0053 U+0041 U+004C U+0041 U+004D > U+FDF5 ;; 'SALAM' -U+0052 U+0041 U+0053 U+004F ? U+0055 U+004C > U+FDF6 ;; 'RASUL' (also unicode 'RASOUL)' -U+0041 U+004C U+0041 U+0059 U+0048 (U+0049|U+0045) > U+FDF7 ;; 'ALAYHI' (also unicode 'ALAYHE)' -U+0057 U+0041 U+0053 U+0041 U+004C U+004C U+0041 U+004D > U+FDF8 ;; 'WASALLAM' -U+0053 U+0041 U+004C U+004C U+0041 > U+FDF9 ;; 'SALLA' -U+004A U+0041 U+004C U+004C U+0041 > U+FDFB ;; 'JALLA' : "jalla jalAluhu" -U+0042 U+0041 U+0053 U+004D U+0041 U+004C U+0041 > U+FDFD ;; 'BASMALA' : very few fonts have this ligature afaik - -U+005E U+0053 U+004C U+0059 > U+06D6 ;; ^SLY -U+005E U+0051 U+004C U+0059 > U+06D7 ;; ^QLY -U+005E U+004D U+0049 U+004D > U+06D8 ;; ^MIM -U+005E U+004C U+0041 > U+06D9 ;; ^LA -U+005E U+004A U+0049 U+004D > U+06DA ;; ^JIM -U+005E U+0044 U+004F U+0054 U+0053 > U+06DB ;; ^DOTS -U+005E U+0053 U+0049 U+004E > U+06DC ;; ^SIN -U+0048 U+0049 U+005A U+0042 > U+06DE ;; HIZB -U+0043 U+0049 U+0052 U+0043 U+005A U+0045 U+0052 U+004F > U+06DF ;; CIRCZERO -U+0052 U+0045 U+0043 U+0054 U+005A U+0045 U+0052 U+004F > U+06E0 ;; RECTZERO -U+0053 U+0041 U+004A U+0044 U+0041 > U+06E9 ;; SAJDA - -U+0044 U+004F U+0054 U+0053 > U+061E ;; DOTS (also possible by typing "::") - -;; This is to enclose digits within glyph U+06DD, see http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=ArabicFonts -U+005B U+005B ([Digits]+)=dig U+005D U+005D > U+202E U+06DD @dig U+202C ; [[digits]] - - -; vowels - -a / # _ > U+0626 U+0627 -a > U+0627 -(CO a|U+00E4) / # _ > U+0626 U+0647 U+200C -(CO a|U+00E4) > U+0647 U+200C -o / # _ > U+0626 U+0648 ; -o > U+0648 ; -(CO o|U+00F6) / # _ > U+0626 U+06C6 -(CO o|U+00F6) > U+06C6 -i / # _ # > U+0626 U+0649 -i / # _ > U+0626 U+066E -i / _ # > U+0649 -i > U+066E -e / # _ > U+0626 U+06D0 -e > U+06D0 -u / # _ > U+0626 U+06C7 ; -u > U+06C7 ; -(CO u|U+00FC) / # _ > U+0626 U+06C8 ; -(CO u|U+00FC) > U+06C8 ; -l Q a > U+0644 U+064E U+0627 ; -l a > U+0644 U+0627 ; - -P z P z > U+0638 U+0651 ;;SHADDA -P z > U+0638 -C z C z > U+0698 U+0651 ;;SHADDA -C z > U+0698 -V z V z > U+0696 U+0651 ;pashto ;;SHADDA -V z > U+0696 ;pashto -z z > U+0632 U+0651 ;;SHADDA -z > U+0632 -Y Y > U+0649 U+0651 ;;SHADDA -Y > U+0649 -w w > U+06CB U+0651 ;;SHADDA -w > U+06CB -y y > U+064A U+0651 ;;SHADDA -y > U+064A -v v > U+06A4 U+0651 ;;SHADDA -v > U+06A4 -V t V t > U+0679 U+0651 ; urdu ;;SHADDA -V t > U+0679 -UL t UL t > U+062B U+0651 ;;SHADDA -UL t > U+062B -P t P t > U+0637 U+0651 ;;SHADDA -P t > U+0637 -t t > U+062A U+0651 ;;SHADDA -t > U+062A -T T > U+0629 U+0651 ;;SHADDA -T > U+0629 -C s C s > U+0634 U+0651 ;;SHADDA -C s > U+0634 -P s P s > U+0635 U+0651 ;;SHADDA -P s > U+0635 -V s V s > U+069A U+0651 ;Pashto ;;SHADDA -V s > U+069A ;Pashto -CO s > U+069B ; sin with 3 dots below -s s > U+0633 U+0651 ;;SHADDA -s > U+0633 -C r C r > U+0692 U+0651 ;Kurdish ;;SHADDA ; missing in ArabTeX <<< -C r > U+0692 -P r P r > U+0695 U+0651 ;Kurdish ;;SHADDA -P r > U+0695 -V r V r > U+0691 U+0651 ;Urdu ;;SHADDA -V r > U+0691 ;Urdu -r r > U+0631 U+0651 ;;SHADDA -r > U+0631 -P q P q > U+066F U+0651 ;;SHADDA -P q > U+066F -q q > U+0642 U+0651 ;;SHADDA -q > U+0642 -p p > U+067E U+0651 ;;SHADDA -p > U+067E -C n C n > U+06AD U+0651 ;;SHADDA -C n > U+06AD -P n P n > U+06BA U+0651 ; urdu ;;SHADDA -P n > U+06BA ; -V n V n > U+06BC U+0651 ; Pashto -V n > U+06BC ; Pashto -n n > U+0646 U+0651 ;;SHADDA -n > U+0646 -m m > U+0645 U+0651 ;;SHADDA -m > U+0645 -C l C l > U+06B5 U+0651 ;kurdish ;;SHADDA -C l > U+06B5 -l l > U+0644 U+0651 ;;SHADDA -l > U+0644 -P k P k > U+06A9 U+0651 ; pashto urdu ;;SHADDA -P k > U+06A9 -UL k UL k > U+063A U+0651 ;;SHADDA -UL k > U+063A -k k > U+0643 U+0651 ;;SHADDA -k > U+0643 -j j > U+062C U+0651 ;;SHADDA -j > U+062C -x x > U+062E U+0651 ;;SHADDA -x > U+062E -UL h UL h > U+062E U+0651 ;;SHADDA -UL h > U+062E -P h P h > U+062D U+0651 ;;SHADDA -P h > U+062D -V h V h > U+06C1 U+0651 -V h > U+06C1 -h h > U+0647 U+0651 ;;SHADDA -h > U+0647 -V g V g > U+06AC U+0651 ;;SHADDA -V g > U+06AC ; kaf with dot above -P g P g > U+063A U+0651 ;;SHADDA -P g > U+063A -C g C g > U+063A U+0651 ;;SHADDA -C g > U+063A -g g > U+06AF U+0651 ;;SHADDA -g > U+06AF -G G > U+06AB U+0651 ;pashto ;;SHADDA -G > U+06AB ;pashto -P f P f > U+06A1 U+0651 ;;SHADDA -P f > U+06A1 -f f > U+0641 U+0651 ;;SHADDA -f > U+0641 -V d V d > U+0688 U+0651 ;urdu ;;SHADDA -V d > U+0688 ;urdu -C d C d > U+06EE ; not defined in ArabTeX U+0651 ;;SHADDA -C d > U+06EE ; not defined in ArabTeX -UL d UL d > U+0630 U+0651 ;;SHADDA -UL d > U+0630 -P d P d > U+0636 U+0651 ;;SHADDA -P d > U+0636 -d d > U+062F U+0651 ;;SHADDA -d > U+062F -V c V c > U+0685 U+0651 ;pashto ;;SHADDA -V c > U+0685 -C c C c > U+0686 U+0651 ;;SHADDA -C c > U+0686 -c c > U+0681 U+0651 -c > U+0681 ; ح with hamza above -P b P b > U+066E U+0651 ;;SHADDA -P b > U+066E -b b > U+0628 U+0651 ;;SHADDA -b > U+0628 -Ain Ain > U+0639 U+0651 ;;SHADDA -Ain > U+0639 -H > U+0626 -U+002C / [Digits] _ [Digits] > U+002C ; comma in numerical context not an Arabic comma -Z Z / [Digits] _ [Digits] > U+2013 ; two hyphens in numerical context -> endash -(Z|U+005D|U+005B|U+0028|U+0029)=xx / [Digits] _ [Digits] > U+202D @xx U+202C ; hyphen or brackets in numerical context: surrounded by LRO & PDF marks -[Digits] > [ArDigits] -Z Z Z / # _ # > U+2014 -Z Z / # _ # > U+2013 -Z Z > U+0640 -B > U+0640 -Z / # _ > U+200D ; -x > force initial form with "zero-width joiner" -Z / _ # > U+200D ; x- > force final form -U+003C U+003C > U+00BB ;<< -U+003E U+003E > U+00AB ;>> -U+00AB > U+00BB -U+00BB > U+00AB -UL > U+0640 ;_ -U+003F > U+061F ;? -U+003B > U+061B ;; -U+003A U+003A > U+061E ;; '::' ligature 'DOTS' also defined above... -U+002C > U+060C ;, -U+005D / . _ . > U+200D U+005D U+200D ; keep shaping when inserting ...[...]... -U+005B / . _ . > U+200D U+005B U+200D ; ... (but of course this screws up contextual analysis, so quoting of hamzas etc may be necessary) -Q > ; -N > ; -C > ;^ -Z > ;- -BAR > ;| - - diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex.maps b/Master/texmf-dist/doc/xelatex/arabxetex/arabtex.maps deleted file mode 100644 index a71c56292f8..00000000000 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabtex.maps +++ /dev/null @@ -1,780 +0,0 @@ -## This is the master file to generate the TECkit ArabTeX font mappings -## for use with XeTeX -## The mappings are generated with a simple sed script -## -## Conventions used: -## --------------------------------------------------------------------------------- -## Lines starting with ## are comments that don't appear in the map files -## -## Lines that don't begin with # are common to all mappings -## Otherwise the letters following '#' indicate specific mappings -## according to vocalization modes and languages -## #...n -> non-vocalized -## #...v -> vocalized and fully voc. -## #...f -> fully voc. -## @v -> voc only -## The language codes are: -## A -> Arabic -# B -> Maghribi Arabic -## P -> Persian -## U -> Urdu -## T -> Pashto -## S -> Sindhi -## K -> Kashmiri -## O -> Ottoman Turkish -## M -> Malay -## KURDISH AND UIGHUR ARE CODED SEPARATELY <<< -## The above can be negated with #-[APUTSKOM] -## Lines starting with '@[AP...][nvf]' are specific to the mapping -## indicated by the two-letter key, following the conventions above -## ---------------------------------------------------------------------------------- -@An LHSName "ArabTeX-novowels" -@Av LHSName "ArabTeX-vocalized" -@Af LHSName "ArabTeX-fullvocalized" -@Bn LHSName "ArabTeX-maghribi-novowels" -@Bv LHSName "ArabTeX-maghribi-vocalized" -@Bf LHSName "ArabTeX-maghribi-fullvocalized" -@Pn LHSName "ArabTeX-farsi-novowels" -@Pv LHSName "ArabTeX-farsi-vocalized" -@Pf LHSName "ArabTeX-farsi-fullvocalized" -@Un LHSName "ArabTeX-urdu-novowels" -@Uv LHSName "ArabTeX-urdu-vocalized" -@Uf LHSName "ArabTeX-urdu-fullvocalized" -@Sn LHSName "ArabTeX-sindhi-novowels" -@Sv LHSName "ArabTeX-sindhi-vocalized" -@Sf LHSName "ArabTeX-sindhi-fullvocalized" -@Kn LHSName "ArabTeX-kashmiri-novowels" -@Kv LHSName "ArabTeX-kashmiri-vocalized" -@Kf LHSName "ArabTeX-kashmiri-fullvocalized" -@Tn LHSName "ArabTeX-pashto-novowels" -@Tv LHSName "ArabTeX-pashto-vocalized" -@Tf LHSName "ArabTeX-pashto-fullvocalized" -## @Kn LHSName "ArabTeX-kurdish-novowels" -## @Kv LHSName "ArabTeX-kurdish-vocalized" -## @Kf LHSName "ArabTeX-kurdish-fullvocalized" -@On LHSName "ArabTeX-turk-novowels" -@Ov LHSName "ArabTeX-turk-vocalized" -@Of LHSName "ArabTeX-turk-fullvocalized" -@Mn LHSName "ArabTeX-malay-novowels" -@Mv LHSName "ArabTeX-malay-vocalized" -@Mf LHSName "ArabTeX-malay-fullvocalized" -## @Rn LHSName "ArabTeX-uighur-novowels" -## @Rv LHSName "ArabTeX-uighur-vocalized" -## @Rf LHSName "ArabTeX-uighur-fullvocalized" -## -## -RHSName "UNICODE" - -Define a U+0061 ;a -Define b U+0062 ;b -Define c U+0063 ;c -Define d U+0064 ;d -Define e U+0065 ;e -Define f U+0066 ;f -Define g U+0067 ;g -Define h U+0068 ;h -Define i U+0069 ;i -Define j U+006A ;j -Define k U+006B ;k -Define l U+006C ;l -Define m U+006D ;m -Define n U+006E ;n -Define o U+006F ;o -Define p U+0070 ;p -Define q U+0071 ;q -Define r U+0072 ;r -Define s U+0073 ;s -Define t U+0074 ;t -Define u U+0075 ;u -Define v U+0076 ;v -Define w U+0077 ;w -Define x U+0078 ;x -Define y U+0079 ;y -Define z U+007A ;z -Define A U+0041 ;A -Define B U+0042 ;B -Define E U+0045 ;E -Define G U+0047 ;G -Define I U+0049 ;I -Define N U+004E ;N -Define O U+004F ;O -Define T U+0054 ;T -Define U U+0055 ;U -Define W U+0057 ;W -Define Y U+0059 ;Y -Define C U+005E ;^ << CARET -Define UL U+005F ;_ << UNDERLINE -Define P U+002E ;. << DOT -Define V U+002C ;, << COMMA (_V_irgule) -Define CO U+003A ;: << COLON -Define SC U+003B ;; << SEMICOLON -Define Ain U+0060 ;` -Define H U+0027 ;' << HAMZA -Define Q U+0022 ;" << QUOTE -Define Z U+002D ;- << HYPHEN -Define BAR U+007C ;| -Define AN U+0061 U+004E ; aN -Define LLAH U+006C U+006C U+005F U+0061 U+0068 -;Define NUL U+00A6; -Define Ha U+0623 -Define Hi U+0625 -Define Hy U+0626 -Define Hw U+0624 -Define Hh U+06C0 ;; = U+0647 U+0654 -Define HA U+0622 -Define HB U+0640 U+0654 -Define HBAR U+0621 ; '| - -pass(Unicode) - -U+E000 > ; eliminate special code for capitalization in transliterations - -pass(Unicode) - -Class [VWL] = (U+0061 U+0065 U+0069 U+006F U+0075 ) ;(a e i o u) -Class [LTR] = (U+0061..U+007A U+0041 U+0045 U+0047 U+0049 U+004F U+0055 U+0042 U+004E U+0054 U+0059 U+005E U+002E U+005F U+0022 U+0027 U+0060) ;a..z A E I O U B N T Y ^ . _ " "" ` -Class [BRACKETS] = (U+003C U+003E U+00AB U+00BB U+0028 U+0029 U+005B U+005D U+2018 U+2019 U+201C U+201D); < > () « » [ ] ‘ ’ “ ” -Class [PUNCT] = (V SC P CO) -Class [Iy] = (U+0049 U+0079) ;(I y) -Class [Uw] = (U+0055 U+0077) ;(U w) -Class [Uwu] = (U+0055 U+0077 U+0075) ;(U w u) -;Class [ae] = (U+0061 U+0065) ;(a e) -;Class [ou] = (U+0075 U+006F) ;(u o) -Class [Iyi] = (U+0069 U+0079 U+0049) -Class [UI] = (U+0049 U+0055) ; U I -Class [Digits] = (U+0030..U+0039) - -Define BEG (#|Z|[BRACKETS]) -Define END (#|[BRACKETS]|[PUNCT] U+0020|[PUNCT] #) -Define ENDZ (#|[BRACKETS]|[PUNCT] U+0020|[PUNCT] #|Z) - -; special ligatures -;; 1. Standard ArabTeX input -;; WARNING! there are, alas, two classes of Arabic fonts: -;; a) Those that are Unicode-compliant and include the initial alif in glyph U+FDF2 -;; For these the ligature llah can be accessed by the sequence lam-lam-ha -;; b) Those that do not have the initial alif in U+FDF2 -;; The BAR is used in the DMG transliteration to suppress the initial A -#0 (a|A) BAR? l Z LLAH > U+0627 U+FDF2 ;; 'al-ll_ah' or 'Al-ll_ah' -#1 (a|A) BAR? l Z LLAH > U+FDF2 ;; 'al-ll_ah' or 'Al-ll_ah' -#0 LLAH > U+FDF2 ;; 'll_ah' > U+FDF2 -#1 LLAH > U+0644 U+0644 U+0647 ;; 'll_ah' -> 'l l h' -;; UPPERCASE mnemonics for various ligatures or special glyphs -;; 2a. custom ArabXeTeX input for ligatures not defined in Unicode -U+004C U+004C U+0048 > U+0644 U+0644 U+0647 ;; 'LLH' -> 'l l h' -U+0046 U+0041 U+004C U+0049 U+004C U+004C U+0041 U+0048 > U+0641 U+064E U+0644 U+0650 U+0644 U+0647 ;; 'FALILLAH' : ligature in Adobe Arabic -;; 2b. Ligatures and glyphs defined in Unicode: -#0 U+0041 U+004C U+004C U+0041 U+0048 > U+0627 U+FDF2 ; 'ALLAH' -#1 U+0041 U+004C U+004C U+0041 U+0048 > U+FDF2 ; 'ALLAH' -#0 U+004C U+004C U+0041 U+0048 > U+FDF2 ; 'LLAH' -#1 U+004C U+004C U+0041 U+0048 > U+0644 U+0644 U+0647 ; 'LLAH' - -U+0053 U+004C U+004D > U+FDFA ; 'SLM' : .sallY al-ll_ah `alayhi wa-sallam -U+0028 U+0028 > U+FD3F ;; '((' : ornate right par -U+0029 U+0029 > U+FD3E ;; '))' : ornate left par -U+0052 U+0049 U+0059 U+0041 U+004C > U+FDFC ;; 'RIYAL' : Saudi currency sign -;; most fonts won't have the following ones: -U+0053 U+0041 U+004C U+004C U+0041 U+0053 U+0054 U+004F U+0050 > U+FDF0 ;; 'SALLASTOP' (.sallY with "ye-barree", Quranic stop sign) -U+0051 U+0041 U+004C U+0041 > U+FDF1 ;; 'QALA' : qalY with ye-barree, Quranic stop sign -U+0041 U+004B U+0042 U+0041 U+0052 > U+FDF3 ;; 'AKBAR' -U+004D U+0055 U+0048 U+0041 U+004D U+004D U+0041 U+0044 > U+FDF4 ;; 'MUHAMMAD' -U+0053 U+0041 U+004C U+0041 U+004D > U+FDF5 ;; 'SALAM' -U+0052 U+0041 U+0053 U+004F ? U+0055 U+004C > U+FDF6 ;; 'RASUL' (also unicode 'RASOUL') -U+0041 U+004C U+0041 U+0059 U+0048 (U+0049|U+0045) > U+FDF7 ;; 'ALAYHI' (also unicode 'ALAYHE') -U+0057 U+0041 U+0053 U+0041 U+004C U+004C U+0041 U+004D > U+FDF8 ;; 'WASALLAM' -U+0053 U+0041 U+004C U+004C U+0041 > U+FDF9 ;; 'SALLA' -U+004A U+0041 U+004C U+004C U+0041 > U+FDFB ;; 'JALLA' : "jalla jalAluhu" -U+0042 U+0041 U+0053 U+004D U+0041 U+004C U+0041 > U+FDFD ;; 'BASMALA' : very few fonts have this ligature afaik - -U+005E U+0053 U+004C U+0059 > U+06D6 ;; ^SLY -U+005E U+0051 U+004C U+0059 > U+06D7 ;; ^QLY -U+005E U+004D U+0049 U+004D > U+06D8 ;; ^MIM- -U+005E U+004C U+0041 > U+06D9 ;; ^LA -U+005E U+004A U+0049 U+004D > U+06DA ;; ^JIM -U+005E U+0044 U+004F U+0054 U+0053 > U+06DB ;; ^DOTS -U+005E U+0053 U+0049 U+004E > U+06DC ;; ^SIN -U+0048 U+0049 U+005A U+0042 > U+06DE ;; HIZB -U+0043 U+0049 U+0052 U+0043 U+005A U+0045 U+0052 U+004F > U+06DF ;; CIRCZERO -U+0052 U+0045 U+0043 U+0054 U+005A U+0045 U+0052 U+004F > U+06E0 ;; RECTZERO -U+005E U+004A U+0041 U+005A U+004D > U+06E1 ;; ^JAZM -U+005E U+004D U+0049 U+004D > U+06E2 ;; ^MIM -U+005F U+0053 U+0049 U+004E > U+06E3 ;; _SIN -U+005E U+004D U+0041 U+0044 U+0044 U+0041 > U+06E4 ;; ^MADDA -U+0057 U+0041 U+0057 > U+06E5 ;; WAW -U+0059 U+0045 U+0048 > U+06E6 ;; YEH -U+005E U+0059 U+0045 U+0048 > U+06E7 ;; ^YEH -U+005E U+004E U+0055 U+004E > U+06E8 ;; ^NUN -U+0053 U+0041 U+004A U+0044 U+0041 > U+06E9 ;; SAJDA -U+005F U+0053 U+0054 U+004F U+0050 > U+06EA ;; _STOP -U+005E U+0053 U+0054 U+004F U+0050 > U+06EB ;; ^STOP -U+005E U+0052 U+0053 U+0054 U+004F U+0050 > U+06EC ;; ^RSTOP -U+005F U+004D U+0049 U+004D > U+06ED ;; _MIM - -U+0044 U+004F U+0054 U+0053 > U+061E ;; DOTS (also possible by typing "::") - -;; This is to enclose digits within glyph U+06DD, see http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=ArabicFonts -U+005B U+005B ([Digits]+)=dig U+005D U+005D > U+202E U+06DD @dig U+202C ; [[digits]] - - -; vowels -u u > U -i i > I -a a > A -#T a e > a U+0626 -#T E e > U+0659 U+06CD -#T e e > U+0659 U+0626 -#T E > U+0659 U+06D0 -CO O > U+06FC ; -#T O > U+0657 w -#T o > U+0657 -#U H E > U+06D3 ;; hamza + yeh barree -#U E / _ # > U+06D2 -#U E > y -#U a e / _ # > a U+06D2 -#-T a e > a y -a o > a w -#PUK (o|u)? O / # _ > U+0627 w -#PUK (o|u)? O > w -CO U > U+06C7 ; -#-TK e > i ;; but not pashto > U+0659 and kashmiri > y + U+0658 (U+06CE is kurdish) -#T e > U+0659 -#K e / # _ # > U+0627 U+06D2 U+0658 ; Alif + yeh barree + bow accent -#K e / _ # > U+06D2 U+0658 ; yeh barree + bow accent -#K e / # _ > U+0627 y U+0658 ; alif + ya + bow accent -#K e > y U+0658 -#K E / # _ # > U+0627 U+06D2 ; Alif + yeh barree -#K E / _ # > U+06D2 ; yeh barree -#K E / # _ > U+0627 y ; alif + ya -#K E > y -#K o / # _ > U+0627 U+06C6 -#K o > U+06C6 -#-TK o > u -#AP E > I -#A O > U -#K P A > U+0672 -#K P U > U+0673 ; > this is the initial or lone form, but medial and final require wavy hamza below previous letter (not in Unicode)! Perhaps an OT font could solve this :: in Scheherazade the glyph needed is named _wavyHamza <<< -#K P a / # _ > U+0623 -#K P a > U+0654 -#K P u > U+0655 -#K P o / # _ > U+0627 U+06C4 -#K P o > U+06C4 -#K P O / # _ > U+0627 U+06C4 U+0627 U+064E -#K P O > U+06C4 U+0627 U+064E -#K I > y U+0656 -#K I / _ # > y -#K U / _ # > U+0627 w U+0657 -#K U > w U+0657 -#-ASMK I / _ # > i y - - -#-A ;; Persian ezafe (ALL BUT ARABIC AND UIGHUR) -#-A U+0048 Z UL? (Q? (i|e))=vv / _ END > U+06C0 @vv U+200C ;H-i -> heh+hamza final; what about 06C2 in Urdu ?<<< -#-A U+0048 Z Q?=qq (I|E)=vv / _ END > h U+0020 U+0627 @qq i @vv ; H-I -#-A Q?=q1 (I|E) Z UL? Q?=q2 (i|e) / _ END > @q1 i U+0626 @q2 i U+200C ; ...I-e -#-A Z Q?=qq I / (A|U) _ ENDZ > U+0626 @qq i y ; ...A-I or ...U-I -#-A Z UL? (Q? (i|e))=vv / (A|U) _ END > U+0649 @vv ; ...A-i or ...U-i -#-A Z Q?=q1 (e|i) / _ ENDZ > @q1 i ; ...-i -#-A Z / U+0048 _ > U+0020 ; -#-A b Q?=q1 (e|i) Q?=q2 U / # _ > b @q1 i U+0627 @q2 u w ;; special case of prep be without hyphen - -;; initial characters ... -a l Z / BEG _ > U+0627 l Z -#An H l Z / BEG _ > U+0627 l Z -@Av H l Z / BEG _ > U+0627 l Z -@Bv H l Z / BEG _ > U+0627 l Z -#Af H l Z / BEG _ > U+0671 l Z ; THIS IS NOT AN ARABTEX CONVENTION! it's a work-around coz pattern-matching across word boundaries does not work in teckit , so min al- must be written mina 'l- in fullvocalize mode -#n H / BEG _ l l > U+0627 ; -#v H / BEG _ l l > U+0671 ; e.g. alla_dI -> 'lla_dI -#n [VWL]=v1 / BEG _ > A @v1 -#v [VWL]=v1 / BEG _ > U+0627 @v1 -#An A / BEG _ > A a -#Av A / BEG _ > U+0627 a -#PU A / BEG _ > HA ;; ADD MORE ? <<< -#n Q?=q1 U / BEG _ > A @q1 u w ; -U -#v Q?=q1 U / BEG _ > U+0627 @q1 u w ; -U -#n ; Q?=q1 I / BEG _ > A @q1 i y ; -I ; but not when I is final FIXME!!! -#v ; Q?=q1 I / BEG _ > U+0627 @q1 i y ; -I -#-Pn Q?=q1 I / BEG _ > A @q1 i y ; except for Persian, coz of ezafe rules -#-Pv Q?=q1 I / BEG _ > U+0627 @q1 i y -#Pn Q?=q1 I / BEG _ ^# > A @q1 i y ; -I... -#Pv Q?=q1 I / BEG _ ^# > U+0627 @q1 i y ; -I... -#P Z Q?=qq (I|E) / _ (#|Z) > @qq i y ; -#P UL Q?=q1 U > @q1 U -#P Q?=q1 U / # _ # > U+0627 @q1 u w -#P Q BAR > U+0020; "| to separate compounds >> IN TRANSLIT THIS WILL BE REMOVED - - -;; Words with anomalous orthography: - -; mi'aT -> ماية -;;; i H / m Q ? _ Q ? a ? (T|t) > i A Hy -#n m Q i H Q a / _ (T|t) > m Q i A Hy Q a -#n m Q i H a / _ (T|t) > m Q i A Hy -#n m i H Q a / _ (T|t) > m A Hy Q a -#n m i H a / _ (T|t) > m A Hy -#v m Q i H Q a / _ (T|t) > m U+0627 Hy -#v m Q i H a / _ (T|t) > m U+0627 Hy a -#v m i H Q a / _ (T|t) > m i U+0627 Hy -#v m i H a / _ (T|t) > m i U+0627 Hy a - -#-S -#-S ;; contextual analysis of hamzas -#-S ;; THESE DO NOT APPLY FOR SINDHI -#-S -#-S ; initial hamzas -#-S H / (#|^[LTR]) _ Q? [Iyi] > Hi -#-S H Q A / (#|^[LTR]) _ > HA ; alif madda -#-S H / (#|^[LTR]) _ Q? [Uwu] > Ha -#-S H / (#|^[LTR]) _ Q? a > Ha -#-S Q H / (#|^[LTR]) _ > HB ; quoted isolated hamza at beginning of word -#-S -#-S ; quoted hamzas in contextual mode, equivalent to verbatim mode -#-S a Q H > Ha -#-S i Q H > Hi -#-S y Q H > Hy -#-S w Q H > Hw -#-S h Q H > Hh -#-S A Q H > HA -#-S B Q H > HB -#-S BAR Q H > HBAR -#-S -#-S ; hamza + fathatan -#-S H / a _ Q? AN > Ha -#-S ;;H / [Iyi] _ Q? AN > Hy -#-S H / _ Q? AN > Hy -#-S -#-S ;final hamzas -#-S H / A _ Q? [VWL]? N? (#|^[LTR]) > HBAR -#-S H / [Uw] _ Q? [VWL]? N? (#|^[LTR]) > HBAR -#-S H / [Iy] _ Q? (i N?|u N?)? (#|^[LTR]) > HBAR ; not AN ... -#-S H / a _ Q? (#|^[LTR]) > Ha ; not AN... -#-S H / a _ Q? (u|i) N? (#|^[LTR]) > Ha ; not AN... -#-S H / i _ Q? [VWL]? N? (#|^[LTR]) > Hy -#-S H / u _ Q? [VWL]? N? (#|^[LTR]) > Hw -#-S -#-S ;;and more hamzas ... -#-S -#-S ; n°1: kasra/ya -#-S H / [LTR] _ Q? [Iyi] ^N > Hy -#-S H / [Iyi] _ > Hy -#-S -#-S ; n°2: damma/waw -#-S H / [LTR] _ Q? (U|u) ^N > Hw -#-S H / (U|u) _ Q? ^[Iyi] > Hw -#-S H / U _ > HBAR -#-S -#-S ; n°3: fatha/alif -#-S H Q? A > HA -#-S H / A _ Q? a > HBAR -#-S H / ^[UI] _ Q? a > Ha -#-S H / a _ Q? ^[UI] > Ha - -## -##;; take care of all shaddas at once? NOT WORKING, have to give them one by one -##;; ((V|C|P|UL)=l1 (b|c|d|f|g|h|j|k|l|m|n|p|q|r|s|t|w|x|y|z|Ain|T)=l2){2,2} > @l1 @l2 U+0651 ; -##;; ((b|c|d|f|g|h|j|k|l|m|n|p|q|r|s|t|w|x|y|z|Ain|T)=l1){2,2} > @l1 U+0651 ; -##;; #U ;special rules for Urdu : NO! tashdid realized as ^c^ch instead of ^ch^ch -##;; #U (C (c|g)=x h){2,2} > C @x h U+0651 -##;; #U (V (t|d|r)=x h){2,2} > V @x h U+0651; -##;; #U ((b|p|t|j|d|r|k|g|l|m|n)=x h){2,2} > @x h U+0651 - -pass(Unicode) - -Class [Digits] = (U+0030..U+0039) -Class [ArDigits] = (U+0660..U+0669) -Class [ArEasternDigits] = (U+06F0..U+06F9) -Class [VWL] = (U+0061 U+0065 U+0069 U+006F U+0075 ) ;(a e i o u) -Class [LTR] = (U+0061..U+007A U+0041 U+0045 U+0049 U+004F U+0055 U+0042 U+004E U+0054 U+0059 U+005E U+002E U+005F U+0022 U+0027 U+0060) ;(a..z A E I O U B N T Y ^ . _ " "" `) -Class [Iy] = (U+0049 U+0079) ;(I y) -Class [Uw] = (U+0055 U+0077) ;(U w) - - -##; all hamzas are now in verbatim mode -##;;;H a > U+0623 -##;;;H i > U+0625 -##;;;H y > U+0626 -##;;;H w > U+0624 -##;;;H h > U+0647 U+0654 -##;;;H A > U+0622 -##;;;H B > U+0640 U+0654 -##;;;H BAR > U+0621 ; '| - - -;normal code -## add code for V S M K .k .l (.p=.f) (.v=.b) .y -## .A .U (.T=Y) -## CHECK ,a ,c ,d ,e ,g ,h ,n ,r ,s ,t ,z ,A -## ^ alone=alif with hazma above, ^a=alif hamza fatha, ^i = alif hamza kasra, ^u=alif damma waw (no hamza) -## CHECK ^d ^e ^i ^l ^n ^z -## CHECK (^A='A) -## CHECK (_k=.g) (_s=_t) (_z=_d) -## IMPLEMENT (:a :e :i :o :u = alif + vowel) -## IMPLEMENT :b :d :g :j :n :s (:t=.t?) (:z=.d?) :O :U - -#S ;; special code for sindhi -#S ;; U+004D U+0049 U+004E > U+06FE ; define macro \MIN in sindhi env -#S P m I N > U+06FE ; .mIN -#S ;; U+0049 U+004E > U+06FD ; IN define macro \IN in sindhi env -#S H BAR I N > U+06FD ; '|IN - -#K CO z CO z > U+0636 U+0651 ;;SHADDA -#K CO z > U+0636 -(P z|U+1E93) (P z|U+1E93) > U+0638 U+0651 ;;SHADDA -(P z|U+1E93) > U+0638 -C z C z > U+0698 U+0651 ;;SHADDA -C z > U+0698 -#-O V z V z > U+0696 U+0651 ;;SHADDA -#-O V z > U+0696 ;pashto -#O V z V z > U+0636 U+0651 ;;SHADDA -#O V z > U+0636 -z z > U+0632 U+0651 ;;SHADDA -z > U+0632 -#n Y Y > U+0649 U+0651 ;;SHADDA -#n Y > U+0649 -#v Q Y Y > U+0649 U+0651 ;;SHADDA -#v Q Y > U+0649 -#v Y Y > U+064E U+0649 U+0651 ;;SHADDA -#v Y > U+064E U+0649 -#K ;; .b with ring below : FIXME not in Unicode! but U+06EA is a poor replacement: -#K P y / # _ # > U+0627 U+06D2 U+06EA -#K P y / _ # > U+0649 -#K P y > U+066E U+06EA -#-ASM ;; y / _ # > U+0649 ; y final in persian,ottoman,urdu,pashto,kashmiri has no dots -#-ASM y y > U+06CC U+0651 ;;SHADDA -#-ASM y > U+06CC ; yeh in persian etc. > iso and final shapes have no dots -#ASMv P I P I / _ # > U+0650 U+06CC U+0651 ;; SHADDA -#ASMv P I / _ # > U+0650 U+06CC ;; workaround to have ya without dots in Arabic -#ASMn P I P I / _ # > U+06CC U+0651 ;; SHADDA -#ASMn P I / _ # > U+06CC ;; workaround to have ya without dots in Arabic -#ASM y y > U+064A U+0651 ;;SHADDA -#ASM y > U+064A -#B v v > U+06A5 U+0651 ;;SHADDA -#B v > U+06A5 ;; maghribi -#M v v > U+06CF U+0651 ;;SHADDA -#M v > U+06CF -#-MB v v > U+06A4 U+0651 ;;SHADDA -#-MB v > U+06A4 -W > U+0648 U+0627 ; waw + alif -C U > U+064F U+0648 U+0653; historical spelling : madda on waw -#n Q U [Uw] > U+064F U+0648 U+0651 ;;SHADDA -#n Q U > U+064F U+0648 -#n [Uw] [Uw] > U+0648 U+0651 ;;SHADDA -#n [Uw] > U+0648 -C w C w > U+06C9 U+0651 ;;SHADDA -C w > U+06C9 -CO w CO w > U+06CA U+0651 ;,SHADDA -CO w > U+06CA -#n Q u N > U+064C -#n u N > -#n Q u > U+064F -#v U A / _ # > U+064F U+0648 U+0627 -#v Q U [Uw] > U+0648 U+0651 ;;SHADDA -#v Q U > U+0648 -#v U [Uw] > U+064F U+0648 U+0651 ;;SHADDA -#v U > U+064F U+0648 -#v w w > U+0648 U+0651 ;;SHADDA -#v w > U+0648 -#v Q u N? > -#v u N > U+064C -#v u > U+064F -#S V t h V t h > U+067A U+0651 ;;SHADDA -#S V t h > U+067A -#S t h t h > U+067F U+0651 ;;SHADDA -#S t h > U+067F -#S V t V t > U+067D U+0651 ;;SHADDA -#S V t > U+067D -#T V t V t > U+067C U+0651 ;;SHADDA -#T V t > U+067C ; pashto -#-TS V t V t > U+0679 U+0651 ;;SHADDA -#-TS V t > U+0679 ;urdu -UL (t|s) UL (t|s) > U+062B U+0651 ;;SHADDA -UL (t|s) > U+062B -(P t|U+1E6D) (P t|U+1E6D) > U+0637 U+0651 ;;SHADDA -(P t|U+1E6D) > U+0637 -t t > U+062A U+0651 ;;SHADDA -t > U+062A -#n T T Q AN > U+0629 U+0651 U+064B ;;SHADDA -#n T Q AN > U+0629 U+064B -#n T AN > U+0629 -#v T T Q AN > U+0629 U+0651 ;;SHADDA -#v T Q AN > U+0629 -#v T AN > U+0629 U+064B -T T > U+0629 U+0651 ;;SHADDA -T > U+0629 -C s C s > U+0634 U+0651 ;;SHADDA -C s > U+0634 -(P s|U+1E63) (P s|U+1E63) > U+0635 U+0651 ;;SHADDA -(P s|U+1E63) > U+0635 -#-O V s V s > U+069A U+0651 ;;SHADDA -#-O V s > U+069A ;Pashto -#O V s V s > U+0634 U+0651 ;;SHADDA -#O V s > U+0634 -CO s CO s > U+069B U+0651 ;;SHADDA -CO s > U+069B ; sin with 3 dots below -## ;; ADD 069C-069F <<<<<<<<<< -s s > U+0633 U+0651 ;;SHADDA -s > U+0633 -C r C r > U+06EF U+0651 ;;SHADDA ; missing in ArabTeX <<< -C r > U+06EF -CO r CO r > U+0697 U+0651 ;;SHADDA ; missing in ArabTeX <<< -CO r > U+0697 ; Dargwa language, Dagestan -P r P r > U+0694 U+0651 ;;SHADDA -P r > U+0694 ; r with dot below; in Kurdish .r -> 0694 -#S V r V r > U+0699 U+0651 ;;SHADDA -#S V r > U+0699 -#T V r V r > U+0693 U+0651 ;;SHADDA -#T V r > U+0693 ;Pashto -#-ST V r V r > U+0691 U+0651 ;;SHADDA -#-ST V r > U+0691 ;Urdu -r r > U+0631 U+0651 ;;SHADDA -r > U+0631 -P q P q > U+066F U+0651 ;;SHADDA -P q > U+066F -#-B q q > U+0642 U+0651 ;;SHADDA -#-B q > U+0642 -#B q q > U+06A7 U+0651 ;; maghribi -#B q > U+06A7 ;; maghribi -#S p h p h > U+06A6 U+0651 ;;SHADDA -#S p h > U+06A6 -#M p p > U+06A8 U+0651 ;;SHADDA -#M p > U+06A8 ;Old malay -#-M p p > U+067E U+0651 ;;SHADDA -#-M p > U+067E -CO n CO n > U+06B1 U+0651 ;;SHADDA -CO n > U+06B1 -#M C n C n > U+06BD U+0651 ;;SHADDA -#M C n > U+06BD ; <<< ArabTeX yields nūn with three dots below, which is not in Unicode! -#S C n C n > U+0683 U+0651 ;;SHADDA -#S C n > U+0683 -#-SM C n C n > U+06AD U+0651 ;;SHADDA -#-SM C n > U+06AD -## U+06AE Berber <<< -#S P P n P P n > U+06B2 U+0651 ;;SHADDA -#S P P n > U+06B2 ;; old sindhi? (not in ArabTeX) <<< -P n P n > U+06BA U+0651 ;;SHADDA -P n > U+06BA ; urdu -#S V n V n > U+06BB U+0651 ;;SHADDA -#S V n > U+06BB -#-S V n V n > U+06BC U+0651 ;;SHADDA -#-S V n > U+06BC ; Pashto -n n > U+0646 U+0651 ;;SHADDA -n > U+0646 -m m > U+0645 U+0651 ;;SHADDA -m > U+0645 -P l P l > U+06B6 U+0651 ; -P l > U+06B6 ; ADDED <<< -C l C l > U+06B5 U+0651 ;;SHADDA -C l > U+06B5 ;kurdish -## U+06B7 U+06B8 U+06B9 missing <<< -l l > U+0644 U+0651 ;;SHADDA -l > U+0644 -#S k h k h > U+06A9 U+0651 ;;SHADDA -#S k h > U+06A9 -#-O P k P k > U+06A9 U+0651 ;;SHADDA -#-O P k > U+06A9 ; pashto urdu -#O P k P k > U+0642 U+0651 ;;SHADDA -#O P k > U+0642 ; Ottoman qaf -UL k UL k > U+063A U+0651 ;;SHADDA -UL k > U+063A -#S k k > U+06AA U+0651 ;;SHADDA -#S k > U+06AA ; kaf swash -#-S k k > U+0643 U+0651 ;;SHADDA -#-S k > U+0643 -#-MO C g C g > U+062C U+0651 ;;SHADDA -#-MO C g > U+062C -#MO C g C g > U+06A0 U+0651 ;;SHADDA -#MO C g > U+06A0 -CO j CO j > U+0684 U+0651 ;;SHADDA -CO j > U+0684 -#O j j > U+0698 U+0651 ;;SHADDA -#O j > U+0698 -#-O j j > U+062C U+0651 ;;SHADDA -#-O j > U+062C -#n Q I > U+0650 U+064A -#v Q I > U+064A -#v I > U+0650 U+064A -C I > U+0650 U+064A U+0653 ; historical spelling : madda on ya -UL I > ; suggestion of O. Smrz (arabtex-plus project) URL = ### -#n I > U+064A -#n Q i N > U+064D -#n i N > ; -#n Q i > U+0650 -#v Q i N? > ; -#v i N > U+064D -#v i > U+0650 -x x > U+062E U+0651 ;;SHADDA -x > U+062E -#PT U+0048 Z > U+0647 U+200C U+0020 ;eH-suffix > eH suffix -#PT U+0048 > U+0647 U+200C ; H is always heh final -#U U+0048 > U+06C3 -UL h UL h > U+062E U+0651 ;;SHADDA -UL h > U+062E -(P h|U+1E25) (P h|U+1E25) > U+062D U+0651 ;;SHADDA -(P h|U+1E25) > U+062D -V h V h > U+06C1 U+0651 ;;SHADDA -V h > U+06C1 -#U h h > U+06BE U+0651 ;;SHADDA -#U h > U+06BE ; urdu -#U ;; fix letter+h letter+h > letter+h shadda in URDU <<< -#S h h > U+06BE U+0651 ;;SHADDA -#S h > U+06BE -#-US h h > U+0647 U+0651 ;;SHADDA -#-US h > U+0647 -#S P CO g P CO g > U+06B4 U+0651 ;;SHADDA -#S P CO g > U+06B4 ;; old sindhi? (not in ArabTeX) <<< -CO g CO g > U+06B3 U+0651 ;;SHADDA -CO g > U+06B3 -V g V g > U+06AC U+0651 ;;SHADDA -V g > U+06AC ; kaf with dot above -P g P g > U+063A U+0651 ;;SHADDA -P g > U+063A -#M g g > U+0762 U+0651 ;;SHADDA -#M g > U+0762 -#-M g g > U+06AF U+0651 ;;SHADDA -#-M g > U+06AF -G G > U+06AB U+0651 ;;SHADDA -G > U+06AB ;pashto -## U+06B0 western punjabi <<< -P f P f > U+06A1 U+0651 ;;SHADDA -P f > U+06A1 -#B f f > U+06A2 U+0651 ;; SHADDA -#B f > U+06A2 ;; maghribi -## ingushi CO f > U+06A3 <<< -#-B f f > U+0641 U+0651 ;;SHADDA -#-B f > U+0641 -#S V d h V d h > U+068D U+0651 ;;SHADDA -#S V d h > U+068D -#-TU V d V d > U+068A U+0651 ;;SHADDA -#-TU V d > U+068A -#T V d V d > U+0689 U+0651 ;;SHADDA -#T V d > U+0689 ;pashto -#U V d V d > U+0688 U+0651 ;;SHADDA -#U V d > U+0688 ;urdu -P V d P V d > U+068B U+0651 ;;SHADDA -P V d > U+068B ;; (like U+0688 with dot below, for Lahnda = Western Punjabi) -#S d h d h > U+068C U+0651 ;;SHADDA -#S d h > U+068C -#S C d C d > U+068E ;;SHADDA -#S C d > U+068E ; old sindhi: not in ArabTeX -#-S C d C d > U+06EE U+0651 ;;SHADDA -#-S C d > U+06EE ; not defined in ArabTeX -CO d CO d > U+068F U+0651 ;;SHADDA -CO d > U+068F -#U CO CO d CO CO d > U+0690 U+0651 ;;SHADDA -#U CO CO d > U+0690 ; old urdu: not in ArabTeX -UL (d|z) UL (d|z) > U+0630 U+0651 ;;SHADDA -UL (d|z) > U+0630 -(P d|U+1E0D) (P d|U+1E0D) > U+0636 U+0651 ;;SHADDA -(P d|U+1E0D) > U+0636 -d d > U+062F U+0651 ;;SHADDA -d > U+062F -#S C c h C c h > U+0687 U+0651 ;;SHADDA -#S C c h > U+0687 -#O V c V c > U+0686 U+0651 ;;SHADDA -#O V c > U+0686 ; Ottoman ç -#-O V c V c > U+0685 U+0651 ;;SHADDA -#-O V c > U+0685 ;pashto -C c C c > U+0686 U+0651 ;;SHADDA -C c > U+0686 -P C c P C c > U+06BF U+0651 ;;SHADDA -P C c > U+06BF ;; cheh with dot above <<< -#M c c > U+0686 U+0651 ;;SHADDA -#M c > U+0686 -#O c c > U+062C U+0651 ;;SHADDA -#O c > U+062C -#-MO c c > U+0681 U+0651 ;;SHADDA -#-MO c > U+0681 ; ح with hamza above -CO c CO c > U+0682 U+0651 ;;SHADDA -CO c > U+0682 ; old pashto -#S b h b h > U+0680 U+0651 ;;SHADDA -#S b h > U+0680 -CO b CO b > U+067B U+0651 ;;SHADDA -CO b > U+067B -P b P b > U+066E U+0651 ;;SHADDA -P b > U+066E -b b > U+0628 U+0651 ;;SHADDA -b > U+0628 -H A > U+0622 -C A > U+064E U+0622 ; historical spelling -#n UL A > U+0649 -#v UL A > U+064E U+0649 -UL a > U+0670 -#A UL u > U+0657 ; inverted damma -#A UL i > U+0656 ; subscript alif -#-An UL u > ; -#-An UL i > ; -#-Av UL u > U+064F; -#-Av UL i > U+0650; -#n Q AN / (A H|Ha) _ > U+064B -#n AN / (A H|Ha) _ > ; -#v Q AN / (A H|Ha) _ > ; -#v AN / (A H|Ha) _ > U+064B -#n Q AN > U+0627 U+064B -#n AN > U+0627 -#n Q a > U+064E -#n Q A > U+064E U+0627 -#n A > U+0627 -#v Q AN > U+0627 -#v AN > U+0627 U+064B -#v Q a > -#v a > U+064E -#v Q A > U+0627 -#v A > U+064E U+0627 -Ain Ain > U+0639 U+0651 ;;SHADDA -Ain > U+0639 -H H > U+0621 U+0651 ;;SHADDA -H > U+0621 -U+002C / [Digits] _ [Digits] > U+002C ; comma in numerical context not an Arabic comma -Z Z / [Digits] _ [Digits] > U+2013 ; two hyphens in numerical context -> endash -(Z|U+005D|U+005B|U+0028|U+0029)=xx / [Digits] _ [Digits] > U+202D @xx U+202C ; hyphen or brackets in numerical context: surrounded by LRO & PDF marks -#-PUSKT [Digits] > [ArDigits] -#PUSKT [Digits] > [ArEasternDigits] -Z Z Z / # _ # > U+2014 -Z Z / # _ # > U+2013 -Z Z > U+0640 -B > U+0640 -Z / # _ > U+200D ; -x > force initial form with "zero-width joiner" -Z / _ # > U+200D ; x- > force final form -U+003C U+003C > U+00BB ;<< -U+003E U+003E > U+00AB ;>> -U+00AB > U+00BB -U+00BB > U+00AB -UL > U+0640 ;_ -U+003F > U+061F ;? -U+003B > U+061B ;; -U+003A U+003A > U+061E ;; '::' ligature 'DOTS' also defined above... -U+002C > U+060C ;, -U+005D / [LTR] _ [LTR] > U+200D U+005D U+200D ; keep shaping when inserting ...[...]... ... -U+005B / [LTR] _ [LTR] > U+200D U+005B U+200D ; (but of course this screws up contextual - ; analysis, so quoting of hamzas etc may be necessary -;U+005D > U+005B ;] these are automatically mirrored, following Unicode rules -;U+005B > U+005D ;[ -#n [VWL] > ;stripoff vowels -#v Q [VWL] > ;stripoff quoted vowels -#n Q > U+0652 -@v Q > U+0652 -U+00B0 > U+0652 ; ° -N > ; -C > ;^ -#n Z > ;- -BAR > ;| -#U P P > U+06D4 ; urdu full stop << check - -#v pass(Unicode) -#v -#v Class [CONS] = (U+0621 U+0623 U+0624 U+0626 U+0628 U+062A..U+063A U+0641..U+0647 U+066E U+066F U+0672 U+0675 U+0676 U+0678..U+06BF U+06EE U+06EF U+06FA..U+06FF U+0750..U+076D) ; to be improved: not sure that all glyphs listed (esp for Urdu,Sindhi,etc are really "consonants" in the sense that they can carry a sukun, not to mention that some of these languages may not have a sukun at all ;-) -#v Class [VWLX] = (U+0627 U+0648..U+065E U+0670) ; long vowels, vowel signs, shadda, sukun etc. -#v Class [VWL] = (U+0627 U+0648..U+0650 U+0670); -#v -#f [CONS]=k1 / _ Z? [CONS] ^U+0651 > @k1 U+0652 ; hack: 2nd consonant has no shadda -#f U+064E (U+064A|U+0648)=hc / _ (^[VWLX]|#) > U+064E @hc U+0652 ; ay and aw diphtongs -@Av U+0627 [VWL]? / [VWL] Z _ > U+0627 ; e.g. fa-isti_hraj -> initial alif has no vowel -@Bv U+0627 [VWL]? / [VWL] Z _ > U+0627 ; e.g. fa-isti_hraj -> initial alif has no vowel -#Af U+0627 [VWL]? / [VWL] Z _ > U+0671 ; e.g. fa-isti_hraj -> wasla on initial alif -#f;; U+0627 / [VWL] U+0020 _ U+0644 > U+0671 ; wasla on initial alif-lam >>>THIS DOES NOT WORK<<< implemented in first pass instead... -#f U+0627 / # _ U+0644 > U+0627 U+064E ; otherwise initial alif takes fatha -#f [CONS]=k1 / _ ([CONS]|#) > @k1 U+0652 ; consonant + (consonant or final) -#f ;; [CONS]=k1 / _ # > @k1 U+0652 ; final consonant -#f Q > ; -#v Z > ; - diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx deleted file mode 100644 index 24ee9fe8ed5..00000000000 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.dtx +++ /dev/null @@ -1,2058 +0,0 @@ -% \iffalse -% -%!TEX encoding = UTF-8 Unicode -% -% Copyright (C) 2007-2008 by François Charette <firmicus at gmx dot net> -% -% Distributable under the LaTeX Project Public License, -% version 1.3c or higher (your choice). The latest version of -% this license is at: http://www.latex-project.org/lppl.txt -% -% This work is "maintained" (as per LPPL maintenance status) -% by François Charette. -% -% This work consists of the file bidi.dtx -% and the derived files bidi.sty and bidi.pdf. -% -% -%<*batchfile> -\begingroup -\input docstrip.tex -\keepsilent -\preamble - - ____________________________ - The arabxetex package - (C) 2007-2008 François Charette - License information appended - - -\endpreamble -\postamble - -Copyright (C) 2007-2008 by François Charette <firmicus at gmx dot net> - -Distributable under the LaTeX Project Public License, -version 1.3c or higher (your choice). The latest version of -this license is at: http://www.latex-project.org/lppl.txt - -This work is "maintained" (as per LPPL maintenance status) -by François Charette. - -This work consists of the file \jobname.dtx -and the derived files \jobname.sty and \jobname.pdf. -as well as an extensive collection of TECKit files -(*.map, compiled as *.tec). - -\endpostamble -\askforoverwritefalse -\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}} -\generate{\file{\jobname.ins}{\from{\jobname.dtx}{batchfile}}} -\nopreamble\nopostamble -\generate{\file{README}{\from{\jobname.dtx}{readme}}} -\generate{\file{arabxetex-dtx-style.sty}{\from{\jobname.dtx}{dtx-style}}} -\endgroup -%</batchfile> -% -%<*driver> -\documentclass[11pt]{ltxdoc} -\usepackage{arabxetex-dtx-style} -\EnableCrossrefs -\CodelineIndex -\RecordChanges -%\OnlyDescription -\begin{document} - \DocInput{\jobname.dtx} -\end{document} -%</driver> -% -%<*readme> --------------------------- -THE ARABXETEX PACKAGE v1.1.2 - -This package provides a convenient ArabTeX-like user-interface for typesetting -languages using the Arabic script in XeLaTeX, with flexible access to font -features. Input in ArabTeX notation can be set in three different -vocalization modes or in roman transliteration. Direct UTF-8 input is also -supported. Since most of the ‘real work’ -- namely parsing and converting -ArabTeX input to Unicode -- is done at the level of TECkit mappings, -ArabXeTeX is really performant. - -The TECkit fontmapping files (*.map and *.tec) should be copied to -<TEXMF>/fonts/misc/xetex/fontmapping/arabxetex/ - -------------------------- -François Charette -2007-2008 -%</readme> -% -% \fi -% -% \errorcontextlines=999 -% \makeatletter -% -% \GetFileInfo{\jobname.sty} -% -% \title{~\hfil {\color{IslamicGreen}\arabxetex \hfil \arabxetexAr}\hfil~\\ -% An \arabtex-like interface for typesetting languages in Arabic script with \XeLaTeX} -% \author{François Charette} -% \date{\filedate \qquad \fileversion} -% -% \maketitle -% \tableofcontents -% -% -% \DeleteShortVerb{\|} -% \MakeShortVerb{\¦} -% -% \begin{abstract} -% This package provides a convenient \arabtex-like user-interface for typesetting -% languages using the Arabic script in \XeLaTeX, with flexible access to font -% features. Input in \arabtex\ notation can be set in three different vocalization -% modes or in roman transliteration. Direct UTF-8 input is also supported. -% Since most of the ‘real work’ -- namely parsing and converting \arabtex\ input to Unicode -- -% is done at the level of TECkit mappings, \arabxetex\ is really performant. -% \end{abstract} -% -% \tableofcontents -% -% \section{Introduction} -% -% Since the early 1990s, \TeX\ users who wished to typeset in Arabic script -% have relied on Klaus Lagally's excellent \arabtex\ system.\footnote{ ^^A -% \url{ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm}. -% Version 2.00 was released in April 1992 and version 3.00 in November of -% the following year. The latest stable version (dated 2 July 2006) is -% 3.11s. Since version 3.02 the Hebrew language is also supported.} -% While \arabtex's overall qualities and Lagally's masterful \TeX-programming -% abilities are undeniable, the system can hardly hide its 15-odd years of -% existence. Or to state it otherwise, it is now slowly becoming an archaic -% piece of sofware (which as a historian who has used \arabtex\ for more than -% eleven years I find a sad thing to admit). First of all, it is monolithic and -% idiosyncratic, in the sense that everything -- from parsing the input encoding, -% to doing contextual analysis, to assembling all elements of the script and -% placing them on the page from right to left, in defiance of \TeX's natural -% logic -- is taken care of by means of \TeX\ macro programming. Thus before the -% availability of relatively fast Pentium processors, \arabtex\ was really slow, -% but this is less of an issue nowadays. Another disadvantage is that one is -% inexorably bound to use the custom Naskh font, which without being necessarily -% ugly does not meet the standards of fine typesetting. Finally, the collection -% of very sophisticated \TeX\ code that constitutes the \arabtex\ package is not -% documented at all, which means that even though it is now licensed under the -% LPPL, its internals are extremely difficult to understand in depth. -% (It is only fair to state, however, that Prof.~Lagally has been extremely -% responsive to ideas, suggestions and wishes by users in the past). -% -% The introduction of Omega in \ca 1996, a \TeX\ extension for multilingual, -% multidirectional typesetting based on Unicode, raised of course many hopes, but -% these have by now completely dissipated since the project has been moribund for -% several years and is now probably defunct. Aleph, a more humble attempt to reach -% some of the goals set by Omega, has been equally unsuccessful.\footnote{ ^^A -% Based on Omega 1.15 and \eTeX, Aleph attempted to provide a usable and -% stable branch. See -% \url{http://www.tug.org/TUGboat/Articles/tb25-1/bilotta.pdf}. -% Unfortunately the project is currently dormant.} -% Both engines suffered of numerous bugs and never reached a stable and usable -% state, \textit{at least according to my own subjective experience}. -% -% After completion of the initial alpha version of \arabxetex, I came across the -% package \pkg{Arabi} by Youssef Jabri on CTAN.\footnote{ ^^A -% \url{http://www.ctan.org/tex-archive/language/arabic/arabi/}} -% This is a pure LaTeX/Babel approach to Arabic typesetting which makes use of -% TFM hackery (by means of complex sequences of ligature rules) to provide custom -% contextual analysis for individual fonts. Thus the \pkg{Arabi} only works in -% combination with the fonts for which support is built in the package. -% -% With the availability of Jonathan Kew's \XeTeX, users can now rely on a very -% up-to-date typesetting engine based on the integration of \eTeX, Unicode, and -% modern font-rendering technology (AAT and ICU), without the complex hassle of -% font installation.\footnote{ ^^A -% \url{http://scripts.sil.org/xetex}. \XeTeX\ was originally developed -% for the Mac~OS~X platform, but Linux and WIN32 ports are now available.} -% -% \section{Description} -% -% The \arabxetex\ package consists of a set of \textbf{TECkit}\footnote{ ^^A -% \url{http://scripts.sil.org/TECkit}} -% mappings for converting internally from \arabtex's \ASCII\ input convention to -% Unicode, and a \LaTeX\ style file (\pkg{arabxetex.sty}) that provides a -% convenient user interface for typesetting in those languages. -% For details on \arabtex\ and its input convention the reader is referred to -% Lagally's detailed manual.\footnote{ ^^A -% \url{http://129.69.218.213/arabtex/doc/arabdoc.pdf}} -% \arabxetex\ introduces several additions, and a few minor modifications, -% to \arabtex's conventions. These are documented in tabular form in -% Section~\ref{conventiontable}. \arabxetex\ relies on the package \pkg{bidi} -% which contains the macros necessary for bidirectional typesetting -- -% using \eTeX's \cmd{\beginR} \ldots \cmd{\endR}, \cmd{\beginL} \ldots \cmd{\endL} -% primitives. The main code in \pkg{bidi.sty} is essentially borrowed, -% with minor adaptations, from the file \pkg{rlbabel.def} in the Babel -% distribution (where it serves for typesetting Hebrew). Some improvements -% in the beta version were inspired by Youssef Jabri's \pkg{Arabi}. -% -% Languages supported at present are the same as in \arabtex, namely: Arabic, -% Maghribi Arabic, Farsi (Persian), Urdu, Sindhi, Kashmiri, Ottoman Turkish, -% Kurdish, Jawi (Malay) and Uighur. \arabxetex\ adds support for several -% additional Unicode characters, so that some more languages are probably -% supported de-facto as well (such as Western Punjabi). -% -% \subsection{The \arabtex\ input encoding} -% -% Why would one need to type those languages by means of an old-fashioned -% \ASCII\ \label{arabtexnotes} representation? -% Native speakers have access to keyboards that allow to input -% them directly in Unicode, while non-native scholars who need to type them -% can use keymaps or keyboard utilities to achieve the same, so why bother? -% An expert in Arabic mathematical linguistic and author of the Perl module -% \pkg{Encode::Arabic::ArabTeX}, Otakar Srmž, has this to say about the -% virtues of \arabtex\ \ASCII\ encoding: -% \begin{quote} -% “ArabTeX is an excellent extension to TeX/LaTeX designed for -% typesetting the right-to-left scripts of the Orient. It comes up with -% very intuitive and comprehensible lower \ASCII\ transliterations, the -% expressive power of which is even better than that of the scripts.”^^A\footnote{ % -% [Source: \url{http://search.cpan.org/~smrz/Encode-Arabic-1.16/ArabTeX/ArabTeX.pm#DESCRIPTION}. -% See also \url{http://ufal.mff.cuni.cz/~smrz/ICFP2006/icfp-encode.pdf}]^^A} -% \end{quote} -% There are indeed several advantages in using \arabtex\ input convention for -% typesetting in the Arabic script, besides ease and legibility. First it is -% possible and even trivial to switch between a representation of the data in the -% Arabic script and its romanized transliteration, without having to modify it. -% Second, despite the increasing availability of good Unicode editors that -% support bidirectionality, editing (La)\TeX\ source files with bidirectional -% content can be a real pain, for it leads to confusion and distraction. Also, -% with complex multi-layer documents such as critical editions, where footnotes -% and annotations abound, the advantage of dealing with a plain \ASCII\ encoding -% cannot be overstated. Finally, such an input convention allows far greater -% control of typographical details. -% -% \section{Usage} -% -% For short insertions (say within a LR text), use ¦\text<language>[option]{...}¦ -% \DescribeMacro{\textarab}\DescribeMacro{\textfarsi}\marginpar{\raggedleft\small etc.} -% where ¦<language>¦ is one of the following (alternative names are given in brackets): -% \begin{compactitem}[\textbf{·}] -% \item ¦arab¦ (¦Arabic¦),\footnote{ ^^A -% Since the command \cmd\arabic\ is already defined in \LaTeX, we chose -% the environment ¦arab¦ and the command \cmd\textarab\ instead, -% but the equivalent environment ¦Arabic¦ and the command -% \cmd\textarabic\ are also available.} -% \item ¦farsi¦ (¦persian¦), -% \item ¦urdu¦, -% \item ¦sindhi¦, -% \item ¦pashto¦, -% \item ¦ottoman¦ (¦turk¦), -% \item ¦kurdish¦, -% \item ¦kashmiri¦, -% \item ¦malay¦ (¦jawi¦), and -% \item ¦uighur¦. -% \end{compactitem} -% For typesetting whole paragraphs in Arabic script, use -% \DescribeMacro{\begin\{arab\}}\DescribeMacro{\begin\{farsi\}}\marginpar{\raggedleft\small etc.} -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \begin{<language>}[option] -% ... -% \end{<language>} -% \end{Verbatim} -% -% Most languages can be typeset in one of four modes: non-vocalized, vocalized, -% fully-vocalized, and transliterated, exactly as in \arabtex, and these are -% switched by means of the options ¦novoc¦, ¦voc¦, ¦fullvoc¦ and ¦trans¦, -% respectively. Note that Kurdish and Uighur only have one vocalization mode. -% The mode can be determined either globally as an option to the \pkg{arabxetex} -% package, or as a local option of either the ¦\text<language>¦ commands or -% ¦\begin{<language>}¦ \ldots ¦\end{<language>}¦ environments. -% When no option is set locally, the global option is chosen. -% The default global option is always \textit{non-vocalized} mode. -% -% There is also an option \pkg{utf} for input in plain UTF-8 encoding. Note that -% it is also possible to mix \arabtex\ input convention and UTF-8 characters, -% since the latter will not be affected by the font-mapping (except of course in -% transliteration mode, unless your roman font also contains Arabic characters). -% There are also advantages of choosing an \arabtex\ mapping (\ie one of the -% ¦novoc¦, ¦voc¦ and ¦fullvoc¦ modes) even with UTF-8 encoding, as it provides -% easy access to special glyphs and some useful features. See further below. -% -% Left-to-right insertions in Latin script within an Arabic environment -% can be made by means of the \DescribeMacro{\textLR} -% command \cmd\textLR¦{…}¦.\new{1.1.2}\footnote{ % -% In version 1.0 this was called \cmd\textlatin, which was renamed \cmd\textroman -% in version 1.1. But the former conflicted with \pkg{Babel}, -% and the latter with \pkg{Beamer}. Hopefully \cmd\textLR\ -% won't be as short-lived!} -% Emphasis in Arabic is traditionally indicated by -% overlining the text, and this can be achieved with the command -% \DescribeMacro{\aemph} -% \cmd\aemph:\footnote{ ^^A -% This macro makes use of the mathematical command \cmd\overline, -% which explains why \pkg{arabxetex} requires the \pkg{amsmath} package. -% I welcome any suggestion that would make it possible to circumvent this dependency -% by emulating \cmd\overline\ directly.} -% -% \parindentoff -% \begin{minipage}[t]{.4\textwidth} -% \begin{Verbatim}[gobble=2] -% \begin{arab}[novoc] -% mi_tAl: \aemph{45} darajaT -% \end{arab} -% \end{Verbatim} -% \end{minipage} -% \hfill -% \begin{minipage}[t]{.4\textwidth} -% \begin{arab}[novoc] -% ~ \\ -% mi_tAl: \aemph{45} darajaT -% \end{arab} -% \end{minipage} -% \medskip -% -%\subsection{Font setup} -% -% \arabxetex\ requires the user to define an \cmd\arabicfont\ in the preamble. -% \DescribeMacro{\arabicfont} -% The recommended procedure, by means of \pkg{fontspec}, is to define it as follows: -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \newfontfamily\arabicfont[Script=Arabic]{<fontname>} -% \end{Verbatim} -% If not, then a warning is issued and \arabxetex\ will attempt to load -% the font \textbf{Scheherazade} (designed by Bob Halissy and -% Jonathan Kew of SIL International).\footnote{ -% Available from \url{http://scripts.sil.org/ArabicFonts}. For -% typesetting Sindhi and Kashmiri, the font \textbf{Lateef}, available at -% the same place, is also recommended.} -% You can also define specific fonts \new{1.1} for all other languages, by similarly defining -% ¦\<language>font¦, such as for example: -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \newfontfamily\urdufont[Script=Arabic]{Nafees Pakistani Naskh} -% \end{Verbatim} -% So for example if the \cmd\texturdu\ command or the ¦urdu¦ environment is used, -% \arabxetex\ will use the \cmd\urdufont\ if it is defined, -% and the \cmd\arabicfont\ if not. In the same manner one can define -% \cmd\maghribifont, \cmd\ottomanfont, \cmd\uighurfont, etc. -% -% -% -% -% \subsection{Examples} -% -% \subsubsection{Contextual analysis of \textit{hamza}} -% -% As with \arabtex, a contextual analysis of the input encoding is performed -% (at the font-mapping level) to automatically determine the carrier of the -% \textit{hamza}, as illustrated by the following examples: -% -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \begin{arab} -% 'amruN, 'ibiluN, 'u_htuN, '"u_ht"uN, '"Uql"Id"Is, ra'suN, 'ar'asu, -% sa'ala, qara'a, bu'suN, 'ab'usuN, ra'ufa, ru'asA'u, bi'ruN, 'as'ilaTuN, -% ka'iba, qA'imuN, ri'AsaTuN, su'ila, samA'uN, barI'uN, sU'uN, bad'uN, -% ^say'uN, ^say'iN, ^say'aN, sA'ala, mas'alaTuN, saw'aTuN, _ha.tI'aTuN, -% jA'a, ridA'uN, ridA'aN, jI'a, radI'iN, sU'uN, .daw'uN, qay'iN, .zim'aN -% , yatasA'alUna, 'a`dA'akum, 'a`dA'ikum, 'a`dA'ukum maqrU'aT, mU'ibAt, -% taw'am, yas'alu, 'a.sdiq^A$\;$'uh_u, ya^g^I'u, s^U'ila -% \end{arab} -% \end{Verbatim} -% -% \begin{arab}[voc] -% 'amruN, 'ibiluN, 'u_htuN, '"u_ht"uN, '"Uql"Id"Is, ra'suN, 'ar'asu, -% sa'ala, qara'a, bu'suN, 'ab'usuN, ra'ufa, ru'asA'u, bi'ruN, 'as'ilaTuN, -% ka'iba, qA'imuN, ri'AsaTuN, su'ila, samA'uN, barI'uN, sU'uN, bad'uN, -% ^say'uN, ^say'iN, ^say'aN, sA'ala, mas'alaTuN, saw'aTuN, _ha.tI'aTuN, -% jA'a, ridA'uN, ridA'aN, jI'a, radI'iN, sU'uN, .daw'uN, qay'iN, .zim'aN -% , yatasA'alUna, 'a`dA'akum, 'a`dA'ikum, 'a`dA'ukum maqrU'aT, mU'ibAt, -% taw'am, yas'alu, 'a.sdiq^A$\;$'uh_u, ya^g^I'u, s^U'ila -% \end{arab} -% -% \subsubsection{Special orthographies} -% -% Some Arabic words, like \textit{miʾa} “hundred”, have irregular orthographies. -% \arabxetex\ recognizes them automatically. -% -% \begin{minipage}[t]{.4\textwidth} -% \begin{Verbatim}[gobble=2] -% \begin{arab}[voc] -% mi'aT , mi'at"An , sab`ami'"aT -% \end{arab} -% \end{Verbatim} -% \end{minipage} -% \hfill -% \begin{minipage}[t]{.4\textwidth} -% \begin{arab}[voc] -% ~ \\ -% mi'aT , mi'at"An , sab`ami'"aT -% \end{arab} -% \end{minipage} -% \bigskip -% -% \textbf{NB}: For the time being only \textit{miʾa} is supported, but more irregular -% constructs should be added in later versions. -% -% \subsubsection{Typesetting the Holy Qurʾān} -% -% High-quality typesetting of the Holy Qurʾān (\textarab{al-qur'An al-karIm}) is a -% most complex and demanding task, which probably should be left to professional -% typesetters. Nevertheless, with Open Type fonts that cover the full Unicode range -% for the Arabic script, it is possible to achieve pretty decent results. -% The following examples represent my attempt to reproduce, with the font -% Scheherazade, the various typographic features of a typical printed edition -% from Saudi Arabia. -% -% In printed Qurʾāns, one frequently encounters typographical oddities that are -% not taken into account by Unicode, such as the \textit{hamza} placed directly over -% the baseline instead as over the \textit{alif}. -% But with a \TeX\ macro it is possible to emulate this rather well: -% -% \begin{Verbatim}[gobble=2,fontsize=\small] -% \newcommand{\hamzaB}{\char"200D\char"0640\raise-.95ex\hbox{\char"0654}\char"200D} -% -% \begin{arab}[fullvoc] -% mina 'l-qur'Ani 'l-karImi, sUraTu 'l-ssajdaTi 15--16: -% -% 'innamA yu'minu bi-\hamzaB a|"Ay___atinA 'lla_dIna 'i_dA _dukkirUA bihA -% _harrUA sujjadaN wa-sabba.hUA bi-.hamdi rabbihim wa-hum lA yastakbirUna -% SAJDA [[15]] tatajAfY_a junUbuhum `ani 'l-ma.dAji`i yad`Una rabbahum -% _hawfaN wa-.tama`aN wa-mimmA razaqn_ahum yunfiqUna [[16]] -% \end{arab} -% -% \begin{arab}[fullvoc] -% sUraTu 'l-baqaraTi 71--72: -% -% qAla 'innahu, yaqUlu 'innahA baqaraTuN llA _dalUluN tu_tIru 'l-'ar.da wa-lA -% tasq.I 'l-.har_ta musallamaTuN llA ^siyaTa fIhA|^JIM qAluW" 'l-\hamzaB a___ana -% ji'ta bi-'l-.haqqi|^JIM fa_daba.hUhA wa-mA kAdduW" yaf`alUna [[71]] wa-'i_d -% qataltum nafsaN fa-udda$\,$_ara|'|_i"tum fIhA|^SLY wa-al-ll_ahu mu_hrijuN mmA -% kun"tum taktumUna [[72]] -% \end{arab} -% \end{Verbatim} -% -% \begin{arab}[fullvoc] -% mina 'l-qur'Ani 'l-karImi, sUraTu 'l-ssajdaTi 15--16: -% -% 'innamA yu'minu bi-\hamzaB a|"Ay___atinA 'lla_dIna 'i_dA _dukkirUA bihA _harrUA -% sujjadaN wa-sabba.hUA bi-.hamdi rabbihim wa-hum lA yastakbirUna SAJDA [[15]] -% tatajAfY_a junUbuhum `ani 'l-ma.dAji`i yad`Una rabbahum _hawfaN wa-.tama`aN -% wa-mimmA razaqn_ahum yunfiqUna [[16]] -% \end{arab} -% -% \begin{arab}[fullvoc] -% sUraTu 'l-baqaraTi 71--72: -% -% qAla 'innahu, yaqUlu 'innahA baqaraTuN llA _dalUluN tu_tIru 'l-'ar.da wa-lA -% tasq.I 'l-.har_ta musallamaTuN llA ^siyaTa fIhA|^JIM qAluW" 'l-\hamzaB a___ana -% ji'ta bi-'l-.haqqi|^JIM fa_daba.hUhA wa-mA kAdduW" yaf`alUna [[71]] wa-'i_d -% qataltum nafsaN fa-udda$\,$_ara|'|_i"tum fIhA|^SLY wa-al-ll_ahu mu_hrijuN mmA -% kun"tum taktumUna [[72]] -% \end{arab} -% -% \subsubsection{Farsi} -% -% These are some of the Persian examples in the \arabtex\ documentation, -% typeset with the font Simple Farsi Bold: -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \begin{farsi}[voc] -% _hwAb, xwI^s, _hwod, ^ceH, naH, yal_aH, _hAneH, _hAneHhA, _hAneH-hA, -% ketAb-e, U, rAh-e, t_U, nAmeH-i, man, bInI-e, An, mard, pA-i, In, -% zan, bAzU-i, In, zan, dAr-_i, man, _hU-_i, t_U, nAmeH-_i, sormeH-_i, -% gofteH-_i, ketAb-I, rAh-I, nAmeH-I, dAnA-I, pArU-I, dAnA-I-keH, -% pArU-I-keH, rafteH-am, rafteH-Im, AnjA-st, U-st, t_U-st, ketAb-I-st, -% be-man, be-t_U, be-An, be-In, be-insAn, beU, be-U, .sA.heb"|_hAneH, -% pas"|andAz, naw"|AmUz -% \end{farsi} -% \end{Verbatim} -% -% \begin{farsi}[voc] -% _hwAb, xwI^s, _hwod, ^ceH, naH, yal_aH, _hAneH, _hAneHhA, _hAneH-hA, -% ketAb-e, U, rAh-e, t_U, nAmeH-i, man, bInI-e, An, mard, pA-i, In, -% zan, bAzU-i, In, zan, dAr-_i, man, _hU-_i, t_U, nAmeH-_i, sormeH-_i, -% gofteH-_i, ketAb-I, rAh-I, nAmeH-I, dAnA-I, pArU-I, dAnA-I-keH, -% pArU-I-keH, rafteH-am, rafteH-Im, AnjA-st, U-st, t_U-st, ketAb-I-st, -% be-man, be-t_U, be-An, be-In, be-insAn, beU, be-U, .sA.heb"|_hAneH, -% pas"|andAz, naw"|AmUz -% \end{farsi} -% -% \subsubsection{Urdu} -% -% An Urdu example, typeset with Nafees Pakistani Naskh:\footnote{ ^^A -% The example is borrowed from -% \url{http://tabish.freeshell.org/u-trans/urducode.html}} -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \begin{urdu}[novoc] -% ,ham `i^sq kE mArO.n kA itnA ,hI fasAna,h ,hae -% rOnE kO na,hI.n kO'I ,ha.nsnE kO zamAna,h ,hae -% -% ya,h kiskA ta.sawwur ,hae ya,h kiskA fasAna,h ,hae -% jO a^sk ,hae A.nkhO.n mE.n tasbI.h kA dAnA ,hae -% \end{urdu} -% \end{Verbatim} -% -% \begin{urdu}[novoc] -% ,ham `i^sq kE mArO.n kA itnA ,hI fasAna,h ,hae\\ -% rOnE kO na,hI.n kO'I ,ha.nsnE kO zamAna,h ,hae -% -% ya,h kiskA ta.sawwur ,hae ya,h kiskA fasAna,h ,hae\\ -% jO a^sk ,hae A.nkhO.n mE.n tasbI.h kA dAnA ,hae -% \end{urdu} -% ^^Aﮨﹷﻢ ﻋﹻﺸﻖ ﻛﮯ ﻣﺎﺭﻭﮞ ﰷ ﹺﺍﺗﻨﺎ ﮨﹻﯽ ﻓﹷﺴﺎﻧﹷﻪ ﮨﹷﮯ -% ^^Aﺭﻭﻧﮯ ﻛﻮ ﻧﹷﮩﹻﻴﮟ ﻛﻮﺋﹻﯽ ﮨﹷﻨﺴﻨﮯ ﻛﻮ ﺯﹶﻣﺎﻧﹷﻪ ﮨﹷﮯ -% -% ^^Aﻳﹷﻪ ﻛﹻﺴﲀ ﺗﹷﺼﹷﻮﹽﹸﺭ ﮨﹷﮯ ﻳﹷﻪ ﻛﹻﺴﲀ ﻓﹷﺴﺎﻧﹷﻪ ﮨﹷﮯ -% ^^Aﺟﻮ ﺍﺷﻚ ﮨﹷﮯ ﺁﻧﻜﮭﻮﮞ ﻣﻴﮟ ﺗﹷﺴﺒﹻﻴﺢ ﰷ ﺩﺍﻧﺎ ﮨﹷﮯ -% \renewcommand{\urdufont}{\arabicfont} -% \renewcommand{\farsifont}{\arabicfont} -% -% \subsection{Special considerations} -% \parindenton -% \subsubsection{The name of God} \label{allahliga} -% -% The glyph \textsf{FDF2}, defined as ‘\textsc{arabic ligature allah isolated form}’ -% by the Unicode Consortium, is a source of great confusion. -% It is displayed in the Unicode Book with an initial alif and thus represents the -% name of God, Allāh, which in Arabic is always written as a special ligature -% (\ie {\tradarabic اﷲ} and not {\arabicfont الله}).\footnote{ ^^A -% The glyph {\tradarabic اﷲ} is taken from the font Traditional Arabic. -% In Scheherazade its design is rather suboptimal: {\arabicfont\char"FDF2}.} -% -% However, a substantial portion of real-world fonts rather represent that -% ligature \textit{without} the initial alif.\footnote{ ^^A -% My research on Arabic fonts available or known to me yields the following picture: -% The fonts that do not display the initial alif in the ligature \textsf{FDF2} -% include those provided by \href{http://www.linotype.com/2517/arabicfonts.html}{Linotype}; -% the great majority of those licensed to or developed by -% \href{http://www.microsoft.com/typography/links/FontPortal.aspx?PID=8}{Microsoft} -% (I could verify it for Times New Roman, Arial, Courier New, Microsoft Sans Serif, -% Arabic Transparent, Simplified Arabic, Simplified Arabic Fixed, -% WinSoft Serif Pro, Traditional Arabic, Andalus, Old Antic Bold, -% Old Antic Decorated and Farsi Simple Bold); the fonts distributed by -% \href{http://www.arabeyes.org}{Arabeyes.org}; -% \href{http://scripts.sil.org/ArabicFonts}{SIL}'s Lateef; -% and the fonts developed by \href{www.crulp.org}{CRULP} in Pakistan. -% The Unicode-conformant fonts, on the other hand, are: -% \href{http://scripts.sil.org/ArabicFonts}{SIL}'s Scheherazade, -% \href{http://www.tdc.org/news/2006Results/AdobeArabic.html}{Adobe Arabic} -% (distributed with the \href{http://www.adobe.com/ceea/}{Middle-Eastern version} -% of the latest \href{http://www.adobe.com/products/acrobat/readermain.html}{Adobe Reader 7}), -% Arial Unicode MS, and \href{http://sakkal.com/type/typesetting.html}{Arabic Typesetting} -% (distributed with \href{http://www.microsoft.com/typography/VOLT.mspx}{VOLT} -% and with \href{http://www.microsoft.com/office/editions/prodinfo/language/proofingtools.mspx}{Microsoft Office Proofing Tools 2003}).} -% The confusion probably has to do with Unicode’s omission to include the ALLAH -% ligature without the initial alif, which is imperatively required for typesetting -% expressions like \textit{al-ḥamdu li-llāh} \RL{\tradarabic الحمد ﷲ}. -% Many fonts code the ligature {\tradarabic ﷲ} in the Private Use Area -% and make it accessible as a default ligature for the sequence \textit{lām-lām-hāʾ}. -% In such a case it can be generated from the input ¦\textarab{l|lh}¦ -% (the vertical bar here tells \arabxetex\ not to interpret the sequence ¦ll¦ -% as \textit{lām} with \textit{shadda}).\footnote{ ^^A -% This currently does not work with Scheharazade, but the -% developers are aware of the issue.} -% Besides not being a standard \arabtex\ input sequence, the trouble is that -% there is no way to know a priori whether the font provides the glyph {\tradarabic ﷲ} -% at all, and whether it is defined as a default ligature from the above input. -% -% To solve this problem with \arabxetex, we had no choice but provide two classes of -% font mappings, one for each of the above two categories of Arabic fonts.\footnote{ ^^A -% This has the unfortunate consequence of doubling the number of mappings shipped -% with \arabxetex. But since their size is small, it is more an esthetic annoyance -% than a practical one.} -% By default we assume the canonical situation where \textsf{U+FDF2} corresponds to -% {\tradarabic اﷲ}, but the user can change this by choosing one of the package options -% ¦fdf2alif¦ or ¦fdf2noalif¦; it can also be changed locally by means of the commands -% \DescribeMacro{\SetAllahWithAlif} -% \DescribeMacro{\SetAllahWithoutAlif} -% \cmd\SetAllahWithAlif\ and \cmd\SetAllahWithoutAlif\ \textit{before} making use of -% \cmd\arabicfont. In a future version we might perhaps implement a database of Arabic fonts -% within \arabxetex, so that this would work automatically in the most common cases. -% -% The font Adobe Arabic has in addition the ligature \textit{fa-li-llāh}: -% \textit{fā fatḥa lām kasra lām hāʾ} $\rightarrow$ {\adobearabic فَلِله}, which can be -% entered in \arabtex\ notation as ¦\textarab{falilh}¦. In this particular case we also -% provide the input convention ¦FALILLAH¦. -% -% -% ^^ATEST Scheherazade: \textarab{l|lh} -% ^^A -% ^^A\renewcommand{\arabicfont}{\tradarabic} -% ^^ATEST Trad Arabic: \textarab{l|lh} -% -% ^^ALinotype: \\ -% ^^ALotus Linotype {\lotusfont\char"FDF2} --- -% ^^AAlHarfAlJadid Linotype One {\fontspec[Scale=1.5]{AlHarfAlJadid Linotype One}\char"FDF2} --- -% ^^AAlHarfAlJadid Linotype Two {\fontspec[Scale=1.5]{AlHarfAlJadid Linotype Two}\char"FDF2} --- -% ^^AMariam Linotype {\fontspec[Scale=1.5]{Mariam Linotype}\char"FDF2} --- -% ^^AQadi Linotype {\fontspec[Scale=1.5]{Qadi Linotype}\char"FDF2} -% ^^A -% ^^AFonts from or licensed to Microsoft: \\ -% ^^ATimes New Roman {\fontspec[Scale=1.5]{Times New Roman}\char"FDF2} --- -% ^^AArial {\fontspec[Scale=1.5]{Arial}\char"FDF2} --- -% ^^ACourier New {\fontspec[Scale=1.5]{Courier New}\char"FDF2} --- -% ^^AMicrosoft Sans Serif {\fontspec[Scale=1.5]{Microsoft Sans Serif}\char"FDF2} --- -% ^^AArial Unicode MS {\arialuni\char"FDF2} --- -% ^^AArabic Transparent {\fontspec[Scale=1.5]{Arabic Transparent}\char"FDF2} --- -% ^^ASimplified Arabic {\fontspec[Scale=1.5]{Simplified Arabic}\char"FDF2} --- -% ^^ASimplified Arabic Fixed {\fontspec[Scale=1.5]{Simplified Arabic Fixed}\char"FDF2} --- -% ^^AWinSoft Serif Pro {\fontspec[Scale=1.5]{WinSoft Serif Pro}\char"FDF2} --- -% ^^ATraditional Arabic {\fontspec[Scale=1.5]{Traditional Arabic}\char"FDF2} --- -% ^^AArabic Typesetting {\arabtype\char"FDF2} --- -% ^^AAndalus {\fontspec[Scale=1.5]{Andalus}\char"FDF2} --- -% ^^AOld Antic Bold {\fontspec[Scale=1.5]{Old Antic Bold}\char"FDF2} --- -% ^^AFarsi Simple Bold {\fontspec[Scale=1.5]{Farsi Simple Bold}\char"FDF2} -% ^^A -% ^^A -% ^^AAdobe:\\ -% ^^AAdobe Arabic {\adobearabic\char"FDF2} --- -% ^^A -% ^^ASIL: \\ -% ^^AScheherazade {\arabicfont\char"FDF2} --- -% ^^ALateef {\fontspec{Lateef}\char"FDF2} -% ^^A -% ^^A%CRULP:\\ -% ^^A%Nafees Nastaleeq {\fontspec{Nafees Nastaleeq}\char"FDF2} --- -% ^^A%{\fontspec{Nafees Pakistani Naskh}\char"FDF2} -% ^^A -% ^^AArabeyes:\\ -% ^^AKacstBook {\fontspec{KacstBook}\char"FDF2} -% ^^AKacstFarsi {\fontspec{KacstFarsi}\char"FDF2} -% -% -% -% -% \subsection{Transliteration} -% -% At the moment transliteration mappings are provided for Arabic, Persian, Urdu, -% Sindhi and Pashto. The rest may be provided in a future version. -% As a rule the default conventions provided are those of the Library of Congress. -% \new{1.1.2}For Arabic the alternative transliteration of the -% \href{http://www.orientasia.info/download/arab_trans.pdf}{Deutsche Morgenländische Gesellschaft} -% is also available (but should be still considered experimental). -% You can set it with the command \DescribeMacro{\SetTranslitConvention} -% ¦\SetTranslitConvention{dmg}¦. -% To switch back to the Library of Congress transliteration, type -% ¦\SetTranslitConvention{loc}¦. -% Additional conventions for other languages, as with \arabtex, \eg -% Encyclopedia of Islam, Encyclopedia Iranica, etc., might be added later.\footnote{ % -% It is suggested that you contact the author if you have such needs.} -% -% Transliteration is set in italics by default. This can be changed by declaring, e.g., -% \DescribeMacro{\SetTranslitStyle} -% ¦\SetTranslitStyle{\upshape}¦. -% To transliterate proper nouns with capitals, prefix the words to be capitalized with \cmd\UC: -% \DescribeMacro{\UC} -% \begin{Verbatim}[gobble=2,fontsize=\normalsize] -% \begin{arab}[trans] -% al-^say_h al-`Alim \UC na.sIr \UC al-dIn \UC al-.tUsI -% \end{arab} -% \end{Verbatim} -% ^^A\SetTranslitStyle{\gentium\itshape} -% \begin{arab}[trans] -% \noindent al-^say_h al-`Alim \UC na.sIr \UC al-dIn \UC al-.tUsI -% \end{arab} -% Note that the article \textit{al-} is automatically skipped. -% Note also that since the transliteration is coded in Unicode at the level of -% the font-mapping, it is necessary that the font contains all required glyphs.\footnote{ ^^A -% See Appendix~\ref{latinextfonts} for a list of recommended Unicode fonts that cover the -% full \textsc{latin extended additional} plane.} -% -% ^^AIf your default roman font does not have the required -% ^^Adiacritics, you can declare for instance -% ^^A¦\SetTranslitStyle{\fontspec{Gentium}\itshape}¦. -% -% ^^A\section{TODO} -% ^^A -% ^^A\begin{MYitemize} -% ^^A \item implement romanized transliterations for kashmiri, turkish, kurdish, malay and uighur. -% ^^A \item perhaps at a later stage: add support for hebrew and judeo-arabic? -% ^^A \item syriac? -% ^^A\end{MYitemize} -% ^^A -% -% \subsection{Typesetting critical editions with \pkg{ednotes}} -% \unsetfootnoteRL -% -% In conjunction with \pkg{bidi}, the \pkg{ednotes} package makes it wonderfully -% easy to typeset critical editions of texts in Arabic script (or other RTL -% scripts).\footnote{ -% The package \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/ledmac/ledmac.pdf}{\pkg{ledmac}} -% has not been extensively tested with \pkg{bidi} yet, but our initial -% trials were not successful.} -% ^^A Be aware that -- as any package which plays with the primitive \cmd\everypar -- -% ^^A is not compatible with \pkg{bidi}. -% The direction of each level of footnotes can be controlled by -% means of ¦\SetFootnoteHook{\setRL}¦ (or ¦\setLR¦) right before the declaration -% ¦\DeclareNewFootnote{X}[…]¦. Here is an example preamble that might be used -% for typesetting a critical edition with \pkg{ednotes} and \arabxetex.\footnote{ ^^A -% Of course if the edition is typed directly in UTF-8 encoding, -% the use of \arabxetex\ is by no means compulsory. Yet see the -% remarks in §~\ref{arabtexnotes} above.} -% See the \pkg{ednotes} documentation for more details.\footnote{ ^^A -% \url{http://www.ctan.org/tex-archive/macros/latex/contrib/ednotes/ednotugb.pdf}. -% See also \url{http://www.webdesign-bu.de/uwe_lueck/critedltx.html}.} -% -% \begin{Verbatim}[gobble=2,fontsize=\small] -% \usepackage[modulo,perpage,para*]{ednotes}%this calls manyfoot.sty and lineno.sty -% \usepackage{arabxetex} -% -% % make \footnoterule of \textwidth -% \makeatletter% -% \renewcommand{\footnoterule}{\kern-3\p@ -% \hrule width \textwidth \kern 2.6\p@} -% \makeatother -% -% \modulolinenumbers[5] -% % this is to set linenumbering in Arabic: -% \renewcommand{\linenumberfont}{\arabicfont\addfontfeature{Mapping=arabicdigits}\tiny} -% -% \renewcommand{\extrafootnoterule}{} -% \SelectFootnoteRule[0]{extra} -% \SetFootnoteHook{\unsetRL}%--> must appear immediately before \DeclareNewFootnote -% %% For ednotes the command \PrecedeLevelWith{X}{hook} is available -% \DeclareNewFootnote{B}[fnsymbol] -% \renewcommand*{\differentlines}[2]{\linesfmt{\RL{#1$-$#2}}}% -% \renewcommand*{\linesfmt}[1]{\raisebox{1ex}{\linenumberfont #1}~}% -% \renewcommand{\lemmafmt}[1]{#1~[ }% -% %Custom macros to enter variants, additions, omissions, illegible passages, -% % text above the line, marginal notes, lacunae, and restorations: -% \newcommand{\VAR}[2]{\Anote{\textarab{#1}}{\textarab{#2}}} -% \newcommand{\ADD}{\textroman{\textbf{+}}\,}% or \textarab{zAyid fI}\ -% \newcommand{\OM}{\textroman{\textbf{\char"2013}}\,}% or \textarab{nAqi.s fI}\ -% \newcommand{\ILLEG}{\textarab{.gayr maqrU' fI}\ } -% \newcommand{\BLANK}{\textarab{bayA.d fI}\ } -% \newcommand{\SUPERLIN}{\textarab{ta.ht al-sa.tr fI}\ } -% \newcommand{\MARG}{\textarab{bi-al-hAmi^s fI}\ } -% \newcommand{\LACUNA}{\textroman{\textlangle~{\dots}~\textrangle}} -% \newcommand{\RESTOR}[1]{\textroman{\textrangle}#1\textroman{\textlangle}} -% % to separate lemmas in different manuscripts: -% \def\SEP{\enskip$\Vert$\enskip} -% \end{Verbatim} -% -% For a real-life example of how to use ednotes with \arabxetex, see -% the file ¦ednotes_example.tex¦ which comes with this package. -% -% -% \section{Tabular overview of \arabtex\ encoding conventions} -% \label{conventiontable} -% -% The table is arranged alphabetically following the most signicant letter of the -% \ASCII\ input code. Color convention: red means that the glyph is the default -% for the given input code, and that it is available in all languages except -% those where different glyphs are shown (in black). That default glyph is also -% displayed in light gray under each language in which it is featured. Glyphs in -% blue are archaic forms (\eg old Urdu). An asterisk after the Unicode number -% means that the character was not available with \arabtex. Green glyphs are -% special: either they are used to represent defective writing or they provide -% characters for other languages. Those shown in the column for Arabic are -% available by default. See the relevant notes at the end. -% -% \begin{center}\footnotesize -% \renewcommand{\arraystretch}{2} -% ^^A 1 2 3 4 5 6 7 8 9 10 -% ^^A\tablefirsthead{% -% ^^Acode & arab & farsi & urdu & pashto & sindhi & ottoman & kurdish & kashmiri & malay & uighur \\\hline} -% \tablehead{^^A -% \hline -% ^^A\tiny code &\tiny arab &\tiny farsi &\tiny urdu &\tiny pashto &\tiny sindhi &\tiny ottoman &\tiny kurdish &\tiny kashmiri &\tiny malay &\tiny uighur \\\hline} -% ^^A next line: language codes after ISO-639-1 -% code & ar & fa & ur & ps & sd & tr & ku & ks & ms & ug \\\hline} -% \tabletail{\hline} -% \begin{supertabular}{|c|c|c|c|c|c|c|c|c|c|c|c|} -% ^^A\tablelasttail{\hline} -% ¦a¦ & \GR{Ba}{064E}&&&&&&\GN[kurdish]{a/Ba}{}&&&\\ -% ¦A¦ & \GR{BA}{0627}&&&&&&\GN[kurdish]{A/BA}{}&&&\\ -% ¦.a¦ & &&&&&&&\GN[kashmiri]{B.a}{0654}&&\\ -% ¦.A¦ & &&&&&&&\GN[kashmiri]{B.A}{0672}&&\\ ^^A(kashmiri) -% ¦_a¦ & \GN{B_a}{0670}&&&&&&&&&\\ -% ¦_A¦ & \GN{B_A}{}&&&&&&&&&\\ -% ¦:a¦ & &&&&&&&&&\GN[uighur]{:a}{} \\ -% ¦b¦ & \GR{b}{0628}&\GG{b}&\GG{b}&\GG{b}&\GG{b}&\GG{b}&\GG{b}&\GG{b}&\GG{b}&\GG{b} \\ -% ¦B¦ & \GR{B}{0640}&&&&&&&&&\\ -% ¦.b¦ & \GV{.b}{066E}&&&&&&&&&\\ -% ¦:b¦ & &&&&\GR[sindhi]{:b}{067B}&&&&&\\ ^^A(sindhi) -% ¦bh¦ & &&&&\GN[sindhi]{bh}{0680}&&&&&\\ -% ¦c¦ & &&&&\GR[sindhi]{c}{0681}&\GN[turk]{c}{062C}&&&\GN[malay]{c}{0686}&\\ -% ^^A¦.c¦ & \GN{.c}{}&&&&&&&&&\\ -% ¦,c¦ & &&&\GR[pashto]{,c}{0685}&&\GN[turk]{,c}{0686}&\GN[kurdish]{,c}{0686}&&&\\ -% ¦^c¦ & \GG{^c}&\GR{^c}{0686}&\GG{^c}&\GG{^c}&\GG{^c}&\GG{^c}&\GG{^c}&\GG{^c}&\GG{^c}&\GG{^c} \\ -% ¦^ch¦ & &&&&\GN[sindhi]{^ch}{0687}&&&&&\\ -% ¦:c¦ & &&&\GR[pashto]{:c}{0682*}&&&&&&\\ -% ¦.^c¦ & \GV{.^c}{06BF*}&&&&&&&&&\\ -% ¦d¦ & \GR{d}{062F}&\GG{d}&\GG{d}&\GG{d}&\GG{d}&\GG{d}&\GG{d}&\GG{d}&\GG{d}&\GG{d} \\ -% ¦.d¦ & \GR{.d}{0636}&\GG{.d}&\GG{.d}&\GG{.d}&\GG{.d}&\GG{.d}&\GG{.d}&\GG{.d}&\GG{.d}&\GG{.d} \\ -% ¦,d¦ & &&\GN[urdu]{,d}{0688}&\GN[pashto]{,d}{0689}&\GR[sindhi]{,d}{068A}&&&&&\\ ^^Aurdu -% ¦.,d¦ & &&\GV{.,d}{068B*}$^a$&&&&&&&\\ ^^AWestern Punjabi -% ¦^d¦ & \GV{^d}{06EE*}&&&&\GB[sindhi]{^d}{068E*}&&&&&\\ -% ¦_d¦ & \GR{_d}{0630}&\GG{_d}&\GG{_d}&\GG{_d}&\GG{_d}&\GG{_d}&\GG{_d}&\GG{_d}&\GG{_d}&\\ -% ¦:d¦ & &&&&\GR[sindhi]{:d}{068F}&&&&&\\ ^^A(sindhi) -% ¦::d¦ & &&\GB[urdu]{::d}{0690*}&&&&&&&\\ -% ¦dh¦ & &&&&\GN[sindhi]{dh}{068C}&&&&&\\ -% ¦,dh¦ & &&&&\GN[sindhi]{,dh}{068D}&&&&&\\ -% ¦e¦ & &\GR{Be}{}&\GG{Be}&\GN[pashto]{Be}{0659}&\GG{Be}&&\GN[kurdish]{e/Be}{}&\GN[kashmiri]{Be}{06D2+0658}&&\GN[uighur]{Be}{06D0} \\ -% ¦E¦ & &\GR{BE}{}&\GN[urdu]{BE}{06D2}&\GN[pashto]{BE}{06D0}&&&\GN[kurdish]{E/BE}{}&\GN[kashmiri]{BE}{06D2}&&\\ -% ¦ee¦ & &&&\GN[pashto]{Bee}{}&&&&&&\\ -% ¦ae¦ & \GN{Bae}{}&&\GN[urdu]{Bae}{}&\GN[pashto]{Bae}{}&\GN[sindhi]{Bae}{}&&&&&\\ -% ¦Ee¦ & &&&\GN[pashto]{BEe}{06CD}&&&&&&\\ -% ^^A¦.e¦ & \GN{B.e}{}&&&&&&&&&\\ -% ^^A¦^e¦ & \GN{B^e}{}&&&&&&&&&\\ -% ¦_e¦ & &\GR{B_e}{}&&&&&&&&\\ -% ¦`e¦ & &&&&&&\GN[kurdish]{`e}{}&&&\\ -% ¦'E¦ & &&\GR[urdu]{B'E}{06D3}&&&&&&&\\ -% ^^A¦:e¦ & \GN{B:e}{}&&&&&&&&&\\ -% ¦f¦ & \GR{f}{0641}&\GG{f}&\GG{f}&\GG{f}&\GG{f}&\GG{f}&\GG{f}&\GG{f}&\GG{f}&\GG{f} \\ ^^A maghribi: \GN[maghribi]{f}{} -% ¦.f¦ & \GV{.f}{06A1}&&&&&&&&&\\ -% ¦g¦ & &\GR{g}{06AF}&\GG{g}&\GG{g}&\GG{g}&\GG{g}&\GG{g}&\GG{g}&\GN[malay]{g}{0762}&\GG{g} \\ -% ¦G¦ & &&&\GR[pashto]{G}{06AB}&&&&&&\\ -% ¦.g¦ & \GR{.g}{063A}&\GG{.g}&\GG{.g}&\GG{.g}&\GG{.g}&\GG{.g}&\GG{.g}&\GG{.g}&\GG{.g}&\\ -% ¦:g¦ & &&&&\GR[sindhi]{:g}{06B3}&&&&&\\ -% ¦.:g¦ & &&&&\GB[sindhi]{.:g}{06B4*}&&&&&\\ -% ¦,g¦ & \GV{,g}{06AC}$^b$ &&&&&&&&&\\ -% ¦^g¦ & \GR{^g}{062C}&\GG{j}&\GG{j}&\GG{j}&\GG{j}&\GN[turk]{^g}{06A0}&\GN[kurdish]{^g}{063A}&\GG{j}&\GN[malay]{^g}{06A0}&\GN[uighur]{^g}{063A} \\ -% ¦gh¦ & &&&&\GN[sindhi]{gh}{}&&&&&\\ -% ¦h¦ & \GR{h}{0647}&\GG{h}&\GN[urdu]{h}{06BE}&\GG{h}&\GG{h}&\GG{h}&\GG{h}&\GG{h}&\GG{h}&\GG{h} \\ -% ¦H¦ & &\GN[farsi]{-H}{0647}&\GN[urdu]{-H}{06C3}&\GN[pashto]{-H}{0647}&&&&&&\\ -% ¦.h¦ & \GR{.h}{062D}&\GG{.h}&\GG{.h}&\GG{.h}&\GG{.h}&\GG{.h}&\GG{.h}&\GG{.h}&\GG{.h}&\\ -% ¦,h¦ & &&\GR[urdu]{,h}{06C1}&&&&&\GN[kashmiri]{,h}{}&&\\ -% ¦_h¦ & \GR{_h}{062E}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\\ -% ¦i¦ & \GR{Bi}{0650}&&&&&&&&&\GN[uighur]{-i-}{066E} \\ -% ¦I¦ & \GN{BI}{064A}&\GR[farsi]{BI}{06CC}&\GG[urdu]{BI}&\GG[pashto]{BI}&\GN[sindhi]{BI}{}&\GG[turk]{BI}&\GN[kurdish]{I/BI}{}&\GG[kashmiri]{BI}&\GN[malay]{BI}{}&\\ -% ¦.I¦ & \GR{B.I}{06CC*}&&&&&&&&&\\ -% ^^A¦.i¦ & \GN{B.i}{}&&&&&&&&&\\ -% ¦_i¦ & \GR{B_i}{0656}&&&&&&&&&\\ -% ^^A¦:i¦ & \GN{B:i}{}&&&&&&&&&\\ -% ¦j¦ & \GR{j}{062C}&\GG{j}&\GG{j}&\GG{j}&\GG{j}&\GN[turk]{j}{0698}&\GN[kurdish]{j}{0698}&\GG{j}&\GG{j}&\GG{j} \\ -% ¦:j¦ & &&&&\GR[sindhi]{:j}{0684}&&&&&\\ ^^A(sindhi) -% ¦jh¦ & &&&&\GN[sindhi]{jh}{06A9}&&&&&\\ -% ¦k¦ & \GR{k}{0643}&\GG{k}&\GG{k}&\GG{k}&\GN[sindhi]{k}{06AA}&\GG{k}&\GG{k}&\GG{k}&\GG{k}&\GG{k} \\ -% ^^A¦K¦ & \GN{K}{}&&&&&&&&&\\ -% ¦.k¦ & \GV{.k}{06A9}&&&&&\GN[turk]{.k}{0642}&&&&\\ -% ¦_k¦ & \GR{_k}{063A}&&&&&&&&&\\ -% ¦kh¦ & &&&&\GN[sindhi]{kh}{}&&&&&\\ -% ¦l¦ & \GR{l}{0644}&\GG{l}&\GG{l}&\GG{l}&\GG{l}&\GG{l}&\GG{l}&\GG{l}&\GG{l}&\GG{l} \\ -% ¦.l¦ & &&&&&&\GR[kurdish]{.l}{06B6*}&&&\\ -% ¦^l¦ & &&&&&&\GR[kurdish]{^l}{06B5}&&&\\^^A(kurdish) -% ¦m¦ & \GR{m}{0645}&\GG{m}&\GG{m}&\GG{m}&\GG{m}&\GG{m}&\GG{m}&\GG{m}&\GG{m}&\GG{m} \\ -% ^^A¦M¦ & \GN{M}{}&&&&&&&&\GN[malay]{M}{}&\\ -% {\tiny ¦.mIN¦} & &&&&\GN[sindhi]{.mIN}{06FE}&&&&&\\ -% {\tiny ¦'|IN¦} & &&&&\GN[sindhi]{'|IN}{06FD}&&&&&\\ -% ¦n¦ & \GR{n}{0646}&\GG{n}&\GG{n}&\GG{n}&\GG{n}&\GG{n}&\GG{n}&\GG{n}&\GG{n}&\GG{n} \\ -% ¦aN¦ & \GR{BaN}{064B}&&&&&&&&&\\ -% ¦uN¦ & \GR{BuN}{064C}&&&&&&&&&\\ -% ¦iN¦ & \GR{BiN}{064D}&&&&&&&&&\\ -% ¦.n¦ & &&\GR{.n}{06BA}&&&&&&&\\ -% ¦..n¦ & &&&&\GB[sindhi]{..n}{06B2*}&&&&&\\ -% ¦,n¦ & &&&\GR[pashto]{,n}{06BC}&\GN[sindhi]{,n}{06BB}&&&&&\\ -% ¦^n¦ & &&&&\GN[sindhi]{^n}{0683}&&&&\GN[malay]{^n}{06BD}&\GR[uighur]{^n}{06AD} \\ -% ¦:n¦ & &&&&\GR[sindhi]{:n}{06B1}&&&&&\\ -% ¦o¦ & &\GR[farsi]{Bo}{}&&\GN[pashto]{Bo}{0657}&&&\GN[kurdish]{o/Bo}{}&\GN[kashmiri]{Bo}{06C6}&&\GN[uighur]{Bo}{} \\ -% ¦O¦ & &\GN[farsi]{BO}{}&\GN[urdu]{BO}{}&\GN[pashto]{BO}{}&&&\GN[kurdish]{O/BO}{}&\GN[kashmiri]{BO}{}&&\\ -% ¦ao¦ & &&\GR[urdu]{Bao}{}&&\GR[sindhi]{Bao}{}&&&&&\\ -% ¦.o¦ & &&&&&&&\GN[kashmiri]{B.o}{06C4}&&\\ -% ¦.O¦ & &&&&&&&\GN[kashmiri]{B.O}{}&&\\ -% ¦_o¦ & &\GR{B_o}{}&&&&&&&&\\ -% ¦_O¦ & &\GR{B_O}{}&&&&&&&&\\ -% ¦:o¦ & &&&&&&&&&\GN[uighur]{:o/B:o}{06C6} \\ -% ¦:O¦ & \GV{:O}{06FC}&&&&&&&&&\\ -% ¦p¦ & &\GR{p}{067E}&\GG{p}&\GG{p}&\GG{p}&\GG{p}&\GG{p}&\GG{p}&\GN[malay]{p}{06A8}&\GG{p} \\ -% ^^A¦.p¦ & \GN{.p}{} &&&&&&&&&\\ -% ¦ph¦ & &&&&\GN[sindhi]{ph}{06A6}&&&&&\\ -% ¦q¦ & \GR{q}{0642}&\GG{q}&\GG{q}&\GG{q}&\GG{q}&\GG{q}&\GG{q}&\GG{q}&\GG{q}&\GG{q} \\ ^^A\GN[maghribi]{q}{} -% ¦.q¦ & \GV{.q}{066F}&&&&&&&&&\\ -% ¦r¦ & \GR{r}{0631}&\GG{r}&\GG{r}&\GG{r}&\GG{r}&\GG{r}&\GG{r}&\GG{r}&\GG{r}&\GG{r} \\ -% ¦.r¦ & \GV{.r}{0694*}&&&&&&\GN[kurdish]{.r}{0695}&&&\\ -% ¦,r¦ & &&\GR[urdu]{,r}{0691}&\GN[pashto]{,r}{0693}&\GN[sindhi]{,r}{0699}&&\GN[kurdish]{,r}{0694*}&&&\\ -% ¦^r¦ & \GV{^r}{06EF*}&&&&&&\GN[kurdish]{^r}{0692*}&&&\\ -% ¦:r¦ & \GV{:r}{0697*}$^c$&&&&&&&&&\\ ^^ADargwa in Dagestan -% ¦s¦ & \GR{s}{0633}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s}&\GG{s} \\ -% ^^A¦S¦ & \GN{S}{}&&&&&&&&&\\ -% ¦.s¦ & \GR{.s}{0635}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\GG{.s}&\\ -% ¦,s¦ & &&&\GR[pashto]{,s}{069A}&&\GN[turk]{,s}{0634}&&&&\\ -% ¦^s¦ & \GR{^s}{0634}&\GG{^s}&\GG{^s}&\GG{^s}&\GG{^s}&\GG{^s}&\GG{^s}&\GG{^s}&\GG{^s}&\GG{^s} \\ -% ¦_s¦ & &&&&\GR{_s}{062B}&&&&&\\ -% ¦:s¦ & \GV{:s}{069B}&&&&&&&&&\\ -% ¦t¦ & \GR{t}{062A}&\GG{t}&\GG{t}&\GG{t}&\GG{t}&\GG{t}&\GG{t}&\GG{t}&\GG{t}&\GG{t} \\ -% ¦T¦ & \GR{T}{062A}&&&&&&&\GG{T}&&\\ -% ¦.t¦ & \GR{.t}{0637}&\GG{.t}&\GG{.t}&\GG{.t}&\GG{.t}&\GG{.t}&\GG{.t}&\GG{.t}&\GG{.t}&\\ -% ^^A¦.T¦ & \GN{.T}{}&&&&&&&&&\\ -% ¦,t¦ & &&\GR[urdu]{,t}{0679}&\GN[pashto]{,t}{067C}&\GN[sindhi]{,t}{067D}&&&&&\\ -% ¦_t¦ & \GR{_t}{062B}&\GG{_t}&\GG{_t}&&\GG{_t}&\GG{_t}&\GG{_t}&\GG{_t}&\GG{_t}&\\ -% ^^A¦:t¦ & \GN{:t}{}&&&&&&&&&\\ -% ¦th¦ & &&&&\GN[sindhi]{th}{067F}&&&&&\\ -% ¦,th¦ & &&&&\GN[sindhi]{,th}{067A}&&&&&\\ -% ¦u¦ & \GR{Bu}{064F}&\GG{Bu}&\GG{Bu}&\GG{Bu}&\GG{Bu}&\GG{Bu}&\GN[kurdish]{u/Bu}{}&\GG{Bu}&\GG{Bu}&\GN[uighur]{u/Bu}{06C7} \\ -% ¦U¦ & \GR{BU}{}&\GG{BU}&\GG{BU}&\GG{BU}&\GG{BU}&\GG{BU}&\GN[kurdish]{U/BU}{}&\GN[kashmiri]{BU}{0648+0657}&\GG{BU}&\\ -% ¦.u¦ & &&&&&&&\GN[kashmiri]{B.u}{0655}&&\\ -% ¦.U¦ & &&&&&&&\GN[kashmiri]{B.U}{0673}&&\\ -% ^^A¦^u¦ & \GN{B^u}{}&&&&&&&&&\\ -% ¦_u¦ & \GR{B_u}{0657}&&&&&&&&&\\ -% ^^A¦_U¦ & \GN{B_U}{}&&&&&&&&&\\ -% ¦:u¦ & &&&&&&&&&\GN[uighur]{:u/B:u}{06C8} \\ -% ¦:U¦ & \GV{:U}{06C7}$^d$&&&&&&&&&\\ -% ¦v¦ & \GR{v}{06A4}$^e$&&&&&&&&\GN[malay]{v}{06CF}&\\ ^^A\GN[maghribi]{v}{06A5} -% ^^A¦V¦ & \GN{V}{}&&&&&&&&&\\ -% ^^A¦.v¦ & \GN{.v}{}&&&&&&&&&\\ -% ¦w¦ & \GR{w}{0648}&\GG{w}&\GG{w}&\GG{w}&\GG{w}&\GG{w}&\GG{w}&\GG{w}&\GG{w}&\GN[uighur]{w}{06CB} \\ -% ¦W¦ & \GR{W}{}&&&&&&&&&\\ -% ¦^w¦ & \GV{^w}{06C9*}&&&&&&&&&\\ -% ¦:w¦ & \GV{:w}{06CA*}&&&&&&&&&\\ -% ¦x¦ & \GR{x}{062E}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GG{x}&\GN[uighur]{x}{} \\ -% ¦y¦ & \GR{y}{064A}&\GN[farsi]{y}{06CC}&\GG[urdu]{y}&\GG[pashto]{y}&\GG{y}&\GG[turk]{y}&\GG{y}&\GG[kashmiri]{y}&\GG{y}&\GG{y} \\ -% ¦Y¦ & \GR{"Y}{0649}&&&&&&&&&\\ -% ¦.y¦ & &&&&&&&\GN[kashmiri]{B.yB}{}&&\\ -% ¦z¦ & \GR{z}{0632}&\GG{z}&\GG{z}&\GG{z}&\GG{z}&\GG{z}&\GG{z}&\GG{z}&\GG{z}&\GG{z} \\ -% ¦.z¦ & \GR{.z}{0638}&\GG{.z}&\GG{.z}&\GG{.z}&\GG{.z}&\GG{.z}&\GG{.z}&\GG{.z}&\GG{.z}&\\ -% ¦,z¦ & &&&\GR[pashto]{,z}{0696}&&\GN[turk]{,z}{0636}&&&&\\ -% ¦^z¦ & &\GR{^z}{0698}&\GG{^z}&\GG{^z}&&&&\GG{^z}&&\GG{^z} \\ -% ¦_z¦ & \GR{_z}{0630}$^f$&&&&&&&&&\\ -% ¦:z¦ & &&&&&&&\GN[kashmiri]{:z}{0636}&&\\ -% ¦'¦ & \GR{'}{0621}&\GG{'}&\GG{'}&\GG{'}&\GG{'}&\GG{'}&\GG{'}&\GG{'}&\GG{'}&\GG{ئ-} \\ -% ¦`¦ & \GR{`}{0639}&\GG{`}&\GG{`}&\GG{`}&\GG{`}&\GG{`}&\GG{`}&\GG{`}&\GG{`}&\\ -% &&&&&&&&&& \\ -% \end{supertabular} -% \end{center} -% \footnotesize -% -% $^a$ For Western Punjabi (Lahnda).\\ -% $^b$ Alternative form of \textmalay{g} in Malay.\\ -% $^c$ For Dargwa (language of Dagestan).\\ -% $^d$ For Kirgiz (and Uighur).\\ -% $^e$ To transliterate dialects and foreign words.\\ -% $^f$ Alternative to ¦_d¦.\\ -% \normalsize\bigskip -% -% Maghribi Arabic is identical to Arabic except for the three letters ¦f¦, ¦q¦ -% and ¦v¦ which yield the glyphs \textmaghribi{f} (\textsf{U+06A2}), \textmaghribi{q} -% (\textsf{U+06A7}), and \textmaghribi{v} (\textsf{U+06A5}), respectively. -% -% ^^A TODO : implement the following ?? -% ^^A perhaps unnecessary coz it can be coded by means of Urdu -% ^^A yet it might be nice to code pashto in a standard way and -% ^^A be able to switch the representation to Pakistani -% ^^A Differences between standard Pashto and Pakistani Pashto (from inspection of the Omega OTP files) -% ^^A064A -> 06D2 -% ^^A069A -> 062E ?? -% ^^A06A9 -> 0643 -% ^^A06AF -> 06AB -% ^^A06CD -> 06D2 -% ^^A06D0 -> 06D2 -% ^^A0626 -> 06D2 -% ^^A0649 -> 06D2 -% ^^A067C -> 0679 -% ^^A0693 -> 0691 -% ^^A0696 -> 06AF -% ^^A06BC -> 0646 0631 -% ^^A0689 -> 0688 -% ^^A -% -% \section{Unicode-Encoding concordance} -% \parindent 0pt -% \let\oldbaselineskip=\baselineskip -% \baselineskip=20pt -% \begin{multicols}{2} -% \begin{tabbing} -% \textsf{060B} \qquad \= {\arabicfont\char"060B} \qquad \= \kill -% \textsf{060B} \> {\arabicfont\char"060B} \\ -% \textsf{060C} \> {\arabicfont\char"060C} \> ¦,¦ \\ -% \textsf{060D} \> {\arabicfont\char"060D} \\ -% \textsf{060E} \> {\arabicfont\char"060E} \\ -% \textsf{060F} \> {\arabicfont\char"060F} \\ -% \textsf{0610} \> {\arabicfont\char"0610} \\ -% \textsf{0611} \> {\arabicfont\char"0611} \\ -% \textsf{0612} \> {\arabicfont\char"0612} \\ -% \textsf{0613} \> {\arabicfont\char"0613} \\ -% \textsf{0614} \> {\arabicfont\char"0614} \\ -% \textsf{0615} \> {\arabicfont\char"0615} \\ -% ^^AU+0616\\ %\textarab{\char"0616} \\ -% ^^AU+0617\\ %\textarab{\char"0617} \\ -% ^^AU+0618\\ %\textarab{\char"0618} \\ -% ^^AU+0619\\ %\textarab{\char"0619} \\ -% ^^AU+061A\\ %\textarab{\char"061A} \\ -% \textsf{061B} \> {\arabicfont\char"061B} \> ¦;¦ \\ ^^A\textarab{ ; } \\ -% ^^AU+061C\\ %\textarab{\char"061C} \\ -% ^^AU+061D\\ %\textarab{\char"061D} \\ -% \textsf{061E} \> {\arabicfont\char"061E} \> ¦::¦/¦DOTS¦ \\ -% \textsf{061F} \> {\arabicfont\char"061F} \> ¦?¦ \\ ^^A\textarab{ ? } \\ -% ^^AU+0620\\ %\textarab{\char"0620} \\ -% \textsf{0621} \> {\arabicfont\char"0621} \> ¦|"'¦ \textit{or context} \\ ^^A\textverb{ '| } \\ -% \textsf{0622} \> {\arabicfont\char"0622} \> ¦A"'¦ \textit{or context} \\ ^^A\textverb{ 'A } \\ -% \textsf{0623} \> {\arabicfont\char"0623} \> ¦a"'¦ \textit{or context} \\ ^^A\textverb{ 'a } \\ -% \textsf{0624} \> {\arabicfont\char"0624} \> ¦w"'¦ \textit{or context} \\ ^^A\textverb{ 'w } \\ -% \textsf{0625} \> {\arabicfont\char"0625} \> ¦i"'¦ \textit{or context} \\ ^^A\textverb{ 'i } \\ -% \textsf{0626} \> {\arabicfont\char"0626} \> ¦y"'¦ \textit{or context} \\ ^^A\textverb{ 'y } \\ -% \textsf{0627} \> {\arabicfont\char"0627} \> ¦A¦ \\ ^^A\textarab{ A } \\ -% \textsf{0628} \> {\arabicfont\char"0628} \> ¦b¦ \\ ^^A\textarab{ b } \\ -% \textsf{0629} \> {\arabicfont\char"0629} \> ¦T¦ \\ ^^A\textarab{ T } \\ -% \textsf{062A} \> {\arabicfont\char"062A} \> ¦t¦ \\ ^^A\textarab{ t } \\ -% \textsf{062B} \> {\arabicfont\char"062B} \> ¦_t¦ \\ ^^A\textarab{ _t } \\ -% \textsf{062C} \> {\arabicfont\char"062C} \> ¦^g¦/¦j¦ \\ ^^A\textarab{ j } \\ -% \textsf{062D} \> {\arabicfont\char"062D} \> ¦.h¦ \\ ^^A\textarab{ .h } \\ -% \textsf{062E} \> {\arabicfont\char"062E} \> ¦_h¦/¦x¦ \\ ^^A\textarab{ x } \\ -% \textsf{062F} \> {\arabicfont\char"062F} \> ¦d¦ \\ ^^A\textarab{ d } \\ -% \textsf{0630} \> {\arabicfont\char"0630} \> ¦_d¦ \\ ^^A\textarab{ _d } \\ -% \textsf{0631} \> {\arabicfont\char"0631} \> ¦r¦ \\ ^^A\textarab{ r } \\ -% \textsf{0632} \> {\arabicfont\char"0632} \> ¦z¦ \\ ^^A\textarab{ z } \\ -% \textsf{0633} \> {\arabicfont\char"0633} \> ¦s¦ \\ ^^A\textarab{ s } \\ -% \textsf{0634} \> {\arabicfont\char"0634} \> ¦^s¦ \\ ^^A\textarab{ ^s } \\ -% \textsf{0635} \> {\arabicfont\char"0635} \> ¦.s¦ \\ ^^A\textarab{ .s } \\ -% \textsf{0636} \> {\arabicfont\char"0636} \> ¦.d¦ \\ ^^A\textarab{ .d } \\ -% \textsf{0637} \> {\arabicfont\char"0637} \> ¦.t¦ \\ ^^A\textarab{ .t } \\ -% \textsf{0638} \> {\arabicfont\char"0638} \> ¦.z¦ \\ ^^A\textarab{ .z } \\ -% \textsf{0639} \> {\arabicfont\char"0639} \> ¦`¦ \\ ^^A\textarab{ ` } \\ -% \textsf{063A} \> {\arabicfont\char"063A} \> ¦.g¦ \\ ^^A\textarab{ .g } \\ -% \textsf{0640} \> {\arabicfont\char"0640} \> ¦B¦ \\ ^^A\textarab{ B } \\ -% \textsf{0641} \> {\arabicfont\char"0641} \> ¦f¦ \\ ^^A\textarab{ f } \\ -% \textsf{0642} \> {\arabicfont\char"0642} \> ¦q¦ \\ ^^A\textarab{ q } \\ -% \textsf{0643} \> {\arabicfont\char"0643} \> ¦k¦ \\ ^^A\textarab{ k } \\ -% \textsf{0644} \> {\arabicfont\char"0644} \> ¦l¦ \\ ^^A\textarab{ l } \\ -% \textsf{0645} \> {\arabicfont\char"0645} \> ¦m¦ \\ ^^A\textarab{ m } \\ -% \textsf{0646} \> {\arabicfont\char"0646} \> ¦n¦ \\ ^^A\textarab{ n } \\ -% \textsf{0647} \> {\arabicfont\char"0647} \> ¦h¦ \\ ^^A\textarab{ h } \\ -% \textsf{0648} \> {\arabicfont\char"0648} \> ¦w¦ \\ ^^A\textarab{ w } \\ -% \textsf{0649} \> {\arabicfont\char"0649} \> ¦Y¦ \\ ^^A\textarab{ Y } \\ -% \textsf{064A} \> {\arabicfont\char"064A} \> ¦y¦ \\ ^^A\textarab{ y } \\ -% \textsf{064B} \> {\arabicfont\char"064B} \> ¦aN¦ \\ ^^A\textarab{ |BaN } \\ -% \textsf{064C} \> {\arabicfont\char"064C} \> ¦uN¦ \\ ^^A\textarab{ |BuN } \\ -% \textsf{064D} \> {\arabicfont\char"064D} \> ¦iN¦ \\ ^^A\textarab{ |BiN } \\ -% \textsf{064E} \> {\arabicfont\char"064E} \> ¦a¦ \\ ^^A\textarab{ |Ba } \\ -% \textsf{064F} \> {\arabicfont\char"064F} \> ¦u¦ \\ ^^A\textarab{ |Bu } \\ -% \textsf{0650} \> {\arabicfont\char"0650} \> ¦i¦ \\ ^^A\textarab{ |Bi } \\ -% \textsf{0651} \> {\arabicfont\char"0651}\\ ^^A\textarab{ |BB }\\ -% \textsf{0652} \> {\arabicfont\char"0652} \> ¦"¦ \textit{after a consonant or} ¦°¦ \\ -% \textsf{0653} \> {\arabicfont\char"0653} \> ¦^U¦ \\ -% \textsf{0654} \> {\arabicfont\char"0654} \> ¦'B¦ \\ ^^A\textverb{ 'B } \\ -% \textsf{0655} \> {\arabicfont\char"0655} \> ¦.u¦ \textit{kashmiri} \\ -% \textsf{0656} \> {\arabicfont\char"0656} \> ¦I¦ \textit{kashmiri} \\ -% \textsf{0657} \> {\arabicfont\char"0657} \> ¦o¦ \textit{pashto} \\ ^^A\textpashto{ Bo } \\ -% \textsf{0658} \> {\arabicfont\char"0658} \> \textit{see kashmiri} ¦e¦ \\ -% \textsf{0659} \> {\arabicfont\char"0659} \> ¦e¦ \textit{pashto} \\ -% \textsf{065A} \> {\arabicfont\char"065A} \\ -% \textsf{065B} \> {\arabicfont\char"065B} \\ -% \textsf{065C} \> {\arabicfont\char"065C} \\ -% \textsf{065D} \> {\arabicfont\char"065D} \\ -% \textsf{065E} \> {\arabicfont\char"065E} \\ -% \textsf{0660} \> {\arabicfont\char"0660} \> ¦0¦ \\ ^^A\textarab{ 0 } \\ -% \textsf{0661} \> {\arabicfont\char"0661} \> ¦1¦ \\ ^^A\textarab{ 1 } \\ -% \textsf{0662} \> {\arabicfont\char"0662} \> ¦2¦ \\ ^^A\textarab{ 2 } \\ -% \textsf{0663} \> {\arabicfont\char"0663} \> ¦3¦ \\ ^^A\textarab{ 3 } \\ -% \textsf{0664} \> {\arabicfont\char"0664} \> ¦4¦ \\ ^^A\textarab{ 4 } \\ -% \textsf{0665} \> {\arabicfont\char"0665} \> ¦5¦ \\ ^^A\textarab{ 5 } \\ -% \textsf{0666} \> {\arabicfont\char"0666} \> ¦6¦ \\ ^^A\textarab{ 6 } \\ -% \textsf{0667} \> {\arabicfont\char"0667} \> ¦7¦ \\ ^^A\textarab{ 7 } \\ -% \textsf{0668} \> {\arabicfont\char"0668} \> ¦8¦ \\ ^^A\textarab{ 8 } \\ -% \textsf{0669} \> {\arabicfont\char"0669} \> ¦9¦ \\ ^^A\textarab{ 9 } \\ -% \textsf{066A} \> {\arabicfont\char"066A} \> ¦\^^A¦ \\ %\textarab{ \% } \\ -% \textsf{066B} \> {\arabicfont\char"066B} \> \\ ^^A\textarab{ , } \\ -% \textsf{066C} \> {\arabicfont\char"066C} \> ¦,¦ \\ ^^A\textarab{ , } \\ -% \textsf{066D} \> {\arabicfont\char"066D} \> ¦*¦ \\ ^^A\textarab{ * } \\ -% \textsf{066E} \> {\arabicfont\char"066E} \> ¦.b¦, \quad ¦i¦ \textit{uighur} \\ ^^A\textarab{ .b } \\ -% \textsf{066F} \> {\arabicfont\char"066F} \> ¦.f¦ \\ ^^A\textarab{ .f } \\ -% \textsf{0670} \> {\arabicfont\char"0670} \> ¦_a¦ \\ ^^A\textarab{ B_a } \\ -% \textsf{0671} \> {\arabicfont\char"0671} \> \textit{automatic} \\ -% \textsf{0672} \> {\arabicfont\char"0672} \> ¦.A¦ \textit{kashmiri} \\ -% \textsf{0673} \> {\arabicfont\char"0673} \> ¦.U¦ \textit{kashmiri} \\ -% \textsf{0674} \> {\arabicfont\char"0674} \\ -% \textsf{0675} \> {\arabicfont\char"0675} \\ -% \textsf{0676} \> {\arabicfont\char"0676} \\ -% \textsf{0677} \> {\arabicfont\char"0677} \\ -% \textsf{0678} \> {\arabicfont\char"0678} \\ -% \textsf{0679} \> {\arabicfont\char"0679} \> ¦,t¦ \\ ^^A\textarab{ ,t } \\ -% \textsf{067A} \> {\arabicfont\char"067A} \> ¦,th¦ \\ ^^A\textsindhi{ ,th } \\ -% \textsf{067B} \> {\arabicfont\char"067B} \> ¦:b¦ \\ ^^A\textsindhi{ :b } \\ -% \textsf{067C} \> {\arabicfont\char"067C} \> ¦,t¦ \\ ^^A\textpashto{ ,t } \\ -% \textsf{067D} \> {\arabicfont\char"067D} \> ¦,t¦ \\ ^^A\textsindhi{ ,t } \\ -% \textsf{067E} \> {\arabicfont\char"067E} \> ¦p¦ \\ ^^A\textarab{ p } \\ -% \textsf{067F} \> {\arabicfont\char"067F} \> ¦th¦ \\ ^^A\textsindhi{ th } \\ -% \textsf{0680} \> {\arabicfont\char"0680} \> ¦bh¦ \\ ^^A\textsindhi{ bh } \\ -% \textsf{0681} \> {\arabicfont\char"0681} \> ¦c¦ \\ ^^A\textarab{ c } \\ -% \textsf{0682} \> {\arabicfont\char"0682} \> ¦:c¦ \\ ^^A (old pashto) -% \textsf{0683} \> {\arabicfont\char"0683} \> ¦^n¦ \\ ^^A\textsindhi{ ^n } \\ -% \textsf{0684} \> {\arabicfont\char"0684} \> ¦:j¦ \\ ^^A\textarab{ :j } %sindhi\\ -% \textsf{0685} \> {\arabicfont\char"0685} \> ¦,c¦ \\ ^^A\textarab{ ,c } %pashto\\ -% \textsf{0686} \> {\arabicfont\char"0686} \> ¦^c¦, \quad ¦c¦ \textit{malay} \\ ^^A\textarab{ ^c } %farsi+\\ -% \textsf{0687} \> {\arabicfont\char"0687} \> ¦^ch¦ \textit{sindhi} \\ ^^A\textsindhi{ ^ch } \\ -% \textsf{0688} \> {\arabicfont\char"0688} \> ¦,d¦ \\ ^^A\textarab{ ,d } %urdu\\ -% \textsf{0689} \> {\arabicfont\char"0689} \> ¦,d¦ \textit{pashto} \\ ^^A\textpashto{ ,d } \\ -% \textsf{068A} \> {\arabicfont\char"068A} \> ¦,d¦ \textit{sindhi} \\ ^^A\textsindhi{ ,d } \\ -% \textsf{068B} \> {\arabicfont\char"068B} \> ¦.,d¦ \\ ^^A(Western punjabi) -% \textsf{068C} \> {\arabicfont\char"068C} \> ¦dh¦ \textit{sindhi} \\ ^^A\textsindhi{ dh } \\ -% \textsf{068D} \> {\arabicfont\char"068D} \> ¦,dh¦ \textit{sindhi} \\ ^^A\textsindhi{ ,dh } \\ -% \textsf{068E} \> {\arabicfont\char"068E} \> ¦^d¦ \textit{sindhi} \\ -% \textsf{068F} \> {\arabicfont\char"068F} \> ¦:d¦ \\ ^^A\textarab{ :d } \\ -% \textsf{0690} \> {\arabicfont\char"0690} \> ¦::d¦ \textit{urdu} \\ -% \textsf{0691} \> {\arabicfont\char"0691} \> ¦,r¦ \\ ^^A\textarab{ ,r } \\ -% \textsf{0692} \> {\arabicfont\char"0692} \> ¦^r¦ \textit{kurdish} \\ ^^ANEW-> ^r\\ -% \textsf{0693} \> {\arabicfont\char"0693} \> ¦,r¦ \textit{pashto} \\ ^^A\textpashto{ ,r } \\ -% \textsf{0694} \> {\arabicfont\char"0694} \> ¦.r¦, \quad ¦,r¦ \textit{kurdish} \\ ^^ANEW-> kurdish ,r\\ -% \textsf{0695} \> {\arabicfont\char"0695} \> ¦.r¦ \textit{kurdish} \\ ^^A\textarab{ .r} \\ -% \textsf{0696} \> {\arabicfont\char"0696} \> ¦,z¦ \\ ^^A\textarab{ ,z } \\ -% \textsf{0697} \> {\arabicfont\char"0697} \> ¦:r¦ \\ -% \textsf{0698} \> {\arabicfont\char"0698} \> ¦^z¦, \quad ¦j¦ \textit{ottoman} \\ ^^A\textarab{ ^z } \\ -% \textsf{0699} \> {\arabicfont\char"0699} \> ¦:s¦ \\ ^^A\textarab{ :s } \\ -% \textsf{069A} \> {\arabicfont\char"069A} \> ¦,s¦ \\ -% \textsf{069B} \> {\arabicfont\char"069B} \> ¦:s¦ \\ -% \textsf{069C} \> {\arabicfont\char"069C} \\ -% \textsf{069D} \> {\arabicfont\char"069D} \\ -% \textsf{069E} \> {\arabicfont\char"069E} \\ -% \textsf{069F} \> {\arabicfont\char"069F} \\ -% \textsf{06A0} \> {\arabicfont\char"06A0} \> ¦^g¦ \textit{ottoman+malay} \\ ^^A\textmalay{ ^g } \\ -% \textsf{06A1} \> {\arabicfont\char"06A1} \> ¦.f¦ \\ ^^A\textarab{ .f } \\ -% \textsf{06A2} \> {\arabicfont\char"06A2} \> ¦f¦ \\ ^^A\textarab{ f } \\ -% \textsf{06A3} \> {\arabicfont\char"06A3} \\ -% \textsf{06A4} \> {\arabicfont\char"06A4} \> ¦v¦, \quad ¦p¦ \textit{malay} \\ ^^A\textarab{ V } \\ -% \textsf{06A5} \> {\arabicfont\char"06A5} \> ¦v¦ \textit{maghribi} \\ ^^A\textarab{ v } \\ -% \textsf{06A6} \> {\arabicfont\char"06A6} \> ¦ph¦ \textit{sindhi} \\ ^^A\textarab{ ph } \\ -% \textsf{06A7} \> {\arabicfont\char"06A7} \> ¦q¦ \\ ^^A\textarab{ q } \\ -% \textsf{06A8} \> {\arabicfont\char"06A8} \> ¦p¦ \\ ^^A\textarab{ p } \\ -% \textsf{06A9} \> {\arabicfont\char"06A9} \> ¦.k¦ \\ ^^A\textarab{ .k } % also M\\ -% \textsf{06AA} \> {\arabicfont\char"06AA} \> ¦k¦ \\ ^^A\textarab{ k } \\ -% \textsf{06AB} \> {\arabicfont\char"06AB} \> ¦G¦ \\ ^^A\textarab{ G } \\ -% \textsf{06AC} \> {\arabicfont\char"06AC} \> ¦,g¦ \\ ^^A\textarab{ ,g } \\ -% \textsf{06AD} \> {\arabicfont\char"06AD} \> ¦^n¦ \\ ^^A\textarab{ ^n } % also K\\ -% \textsf{06AE} \> {\arabicfont\char"06AE} \\ -% \textsf{06AF} \> {\arabicfont\char"06AF} \> ¦g¦ \\ ^^A\textarab{ g } \\ -% \textsf{06B0} \> {\arabicfont\char"06B0} \\ -% \textsf{06B1} \> {\arabicfont\char"06B1} \> ¦:n¦ \\ ^^A\textarab{ :n } \\ -% \textsf{06B2} \> {\arabicfont\char"06B2} \> ¦..n¦ \textit{sindhi} \\ -% \textsf{06B3} \> {\arabicfont\char"06B3} \> ¦:g¦ \\ ^^A\textarab{ :g } \\ -% \textsf{06B4} \> {\arabicfont\char"06B4} \> ¦.:g¦ \textit{sindhi} \\ -% \textsf{06B5} \> {\arabicfont\char"06B5} \> ¦^l¦ \\ ^^A\textarab{ ^l } % also .l -> prob a bug for the next glyph\\ -% \textsf{06B6} \> {\arabicfont\char"06B6} \> ¦.l¦ \\ ^^ANEW -> .l\\ -% \textsf{06B7} \> {\arabicfont\char"06B7} \\ ^^ANEW - \\ %NEW -> :l U+0651 ;;SHADDA\\ -% \textsf{06B8} \> {\arabicfont\char"06B8} \\ -% \textsf{06B9} \> {\arabicfont\char"06B9} \\ -% \textsf{06BA} \> {\arabicfont\char"06BA} \> ¦.n¦ \\ ^^A\textarab{ .n } \\ -% \textsf{06BB} \> {\arabicfont\char"06BB} \> ¦,n¦ \textit{sindhi} \\ ^^A\textsindhi{ .n } \\ -% \textsf{06BC} \> {\arabicfont\char"06BC} \> ¦,n¦ \\ ^^A\textpashto{ .n } \\ -% \textsf{06BD} \> {\arabicfont\char"06BD} \> ¦^n¦ \textit{malay} \\ ^^A\textmalay{ ny } %??? with \setmalay ^n ArabTeX produces nun with 3 dots below, but this is not in Unicode\\ -% \textsf{06BE} \> {\arabicfont\char"06BE} \> ¦h¦ \textit{urdu} \\ ^^A\texturdu{ h } \\ -% \textsf{06BF} \> {\arabicfont\char"06BF} \> ¦.^c¦ \\ ^^ANEW -> .^c\\ -% \textsf{06C0} \> {\arabicfont\char"06C0} \> ¦h"'¦ \textit{or context} \\ ^^A\textverb{ 'h } %verbatim ???\\ -% \textsf{06C1} \> {\arabicfont\char"06C1} \> ¦,h¦ \\ -% \textsf{06C2} \> {\arabicfont\char"06C2} \> ¦H-¦ (\textit{+ ezafe})\footnote{ Or is it ¦,h¦+ezafe?} \textit{urdu} \\ -% \textsf{06C3} \> {\arabicfont\char"06C3} \> ¦H¦ \textit{urdu} \\ ^^A\texturdu{ T } %???\\ -% \textsf{06C4} \> {\arabicfont\char"06C4} \> ¦.o¦ \textit{kashmiri} \\ ^^A\textkashmiri{ |.o } \\ -% \textsf{06C5} \> {\arabicfont\char"06C5} \\ -% \textsf{06C6} \> {\arabicfont\char"06C6} \> ¦o¦ \textit{kashmiri} ,\quad ¦:o¦ \textit{uighur} \\ ^^A\textkashmiri{ |o } \\ -% \textsf{06C7} \> {\arabicfont\char"06C7} \> ¦:U¦, \quad ¦u¦ \textit{uighur} \\ ^^A\textuighur{ u } \\ -% \textsf{06C8} \> {\arabicfont\char"06C8} \> ¦:u¦ \textit{uighur} \\ ^^A\textuighur{ |:u } \\ -% \textsf{06C9} \> {\arabicfont\char"06C9} \> ¦^w¦ \\ ^^AArabTeX internals \a@roof\\ -% \textsf{06CA} \> {\arabicfont\char"06CA} \> ¦:w¦ \\ ^^ANEW -% \textsf{06CB} \> {\arabicfont\char"06CB} \> ¦w¦ \textit{uighur} \\ ^^A\textuighur{ w } \\ -% \textsf{06CC} \> {\arabicfont\char"06CC} \> ¦y¦/¦I¦ \textit{farsi, etc.},\\ -% \> \> ¦.I¦ \textit{arabic, sindhi, malay} \\ -% \textsf{06CD} \> {\arabicfont\char"06CD} \> ¦Ee¦ \textit{pashto} \\ ^^A\textpashto{\novocalize BEe } \\ -% \textsf{06CE} \> {\arabicfont\char"06CE} \\ -% \textsf{06CF} \> {\arabicfont\char"06CF} \> ¦v¦ \textit{malay} \\ ^^A\textmalay{ v } \\ -% \textsf{06D0} \> {\arabicfont\char"06D0} \> ¦E¦ \textit{pashto}, \quad ¦e¦ \textit{uighur} \\ ^^A\textuighur{ |e } \\ -% \textsf{06D1} \> {\arabicfont\char"06D1} \\ -% \textsf{06D2} \> {\arabicfont\char"06D2} \> ¦E¦ \textit{urdu+kashmiri} \\ ^^A\texturdu{ |E } \\ -% \textsf{06D3} \> {\arabicfont\char"06D3} \> ¦'E¦ \textit{urdu} \\ ^^A\texturdu{ |'E } \\ -% \textsf{06D4} \> {\arabicfont\char"06D4} \> ¦..¦ \textit{urdu} \\ -% \textsf{06D5} \> {\arabicfont\char"06D5} \\ -% \textsf{06D6} \> {\arabicfont\char"06D6} \> ¦^SLY¦ \\ -% \textsf{06D7} \> {\arabicfont\char"06D7} \> ¦^QLY¦ \\ -% \textsf{06D8} \> {\arabicfont\char"06D8} \> ¦^MIM¦ \\ -% \textsf{06D9} \> {\arabicfont\char"06D9} \> ¦^LA¦ \\ -% \textsf{06DA} \> {\arabicfont\char"06DA} \> ¦^JIM¦ \\ -% \textsf{06DB} \> {\arabicfont\char"06DB} \> ¦^DOTS¦ \\ -% \textsf{06DC} \> {\arabicfont\char"06DC} \> ¦^SIN¦ \\ -% \textsf{06DD} \> {\arabicfont\char"06DD} \> ¦[[<digits>]]¦ \\ -% \textsf{06DE} \> {\arabicfont\char"06DE} \> ¦HIZB¦ \\ -% \textsf{06DF} \> {\arabicfont\char"06DF} \> ¦CIRCZERO¦ \\ -% \textsf{06E0} \> {\arabicfont\char"06E0} \> ¦RECTZERO¦ \\ -% \textsf{06E1} \> {\arabicfont\char"06E1} \> ¦^JAZM¦ \\ -% \textsf{06E2} \> {\arabicfont\char"06E2} \> ¦^MIM¦ \\ -% \textsf{06E3} \> {\arabicfont\char"06E3} \> ¦_SIN¦ \\ -% \textsf{06E4} \> {\arabicfont\char"06E4} \> ¦^MADDA¦ \\ -% \textsf{06E5} \> {\arabicfont\char"06E5} \> ¦WAW¦ \\ -% \textsf{06E6} \> {\arabicfont\char"06E6} \> ¦YEH¦ \\ -% \textsf{06E7} \> {\arabicfont\char"06E7} \> ¦^YEH¦ \\ -% \textsf{06E8} \> {\arabicfont\char"06E8} \> ¦^NUN¦ \\ -% \textsf{06E9} \> {\arabicfont\char"06E9} \> ¦SAJDA¦ \\ -% \textsf{06EA} \> {\arabicfont\char"06EA} \> ¦_STOP¦ \\ -% \textsf{06EB} \> {\arabicfont\char"06EB} \> ¦^STOP¦ \\ -% \textsf{06EC} \> {\arabicfont\char"06EC} \> ¦^RSTOP¦ \\ -% \textsf{06ED} \> {\arabicfont\char"06ED} \> ¦_MIM¦ \\ -% \textsf{06EE} \> {\arabicfont\char"06EE} \> ¦^d¦ \\ -% \textsf{06EF} \> {\arabicfont\char"06EF} \> ¦^r¦ \\ -% \textsf{06F0} \> {\arabicfont\char"06F0} \> ¦0¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F1} \> {\arabicfont\char"06F1} \> ¦1¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F2} \> {\arabicfont\char"06F2} \> ¦2¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F3} \> {\arabicfont\char"06F3} \> ¦3¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F4} \> {\arabicfont\char"06F4} \> ¦4¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F5} \> {\arabicfont\char"06F5} \> ¦5¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F6} \> {\arabicfont\char"06F6} \> ¦6¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F7} \> {\arabicfont\char"06F7} \> ¦7¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F8} \> {\arabicfont\char"06F8} \> ¦8¦ \textit{persian, urdu, etc.} \\ -% \textsf{06F9} \> {\arabicfont\char"06F9} \> ¦9¦ \textit{persian, urdu, etc.} \\ -% \textsf{06FA} \> {\arabicfont\char"06FA} \\ -% \textsf{06FB} \> {\arabicfont\char"06FB} \\ -% \textsf{06FC} \> {\arabicfont\char"06FC} \> ¦:O¦ \\ -% \textsf{06FD} \> {\arabicfont\char"06FD} \> ¦.|IN¦ \textit{sindhi} \\ ^^AArabTeX internal \a@bars\\ -% \textsf{06FE} \> {\arabicfont\char"06FE} \> ¦.MIN¦ \textit{sindhi} \\ -% \textsf{06FF} \> {\arabicfont\char"06FF} \\ -% \textbf{Arabic Supplement} \\ -% \textsf{0750} \> {\arabicfont\char"0750} \\ -% \textsf{0751} \> {\arabicfont\char"0751} \\ -% \textsf{0752} \> {\arabicfont\char"0752} \\ -% \textsf{0753} \> {\arabicfont\char"0753} \\ -% \textsf{0754} \> {\arabicfont\char"0754} \\ -% \textsf{0755} \> {\arabicfont\char"0755} \\ -% \textsf{0756} \> {\arabicfont\char"0756} \\ -% \textsf{0757} \> {\arabicfont\char"0757} \\ -% \textsf{0758} \> {\arabicfont\char"0758} \\ -% \textsf{0759} \> {\arabicfont\char"0759} \\ -% \textsf{075A} \> {\arabicfont\char"075A} \\ -% \textsf{075B} \> {\arabicfont\char"075B} \\ -% \textsf{075C} \> {\arabicfont\char"075C} \\ -% \textsf{075D} \> {\arabicfont\char"075D} \\ -% \textsf{075E} \> {\arabicfont\char"075E} \\ -% \textsf{075F} \> {\arabicfont\char"075F} \\ -% \textsf{0760} \> {\arabicfont\char"0760} \\ -% \textsf{0761} \> {\arabicfont\char"0761} \\ -% \textsf{0762} \> {\arabicfont\char"0762} \> ¦g¦ \textit{malay} \\ ^^A\textmalay{ g } \\ -% \textsf{0763} \> {\arabicfont\char"0763} \\ -% \textsf{0764} \> {\arabicfont\char"0764} \\ -% \textsf{0765} \> {\arabicfont\char"0765} \\ -% \textsf{0766} \> {\arabicfont\char"0766} \\ -% \textsf{0767} \> {\arabicfont\char"0767} \\ -% \textsf{0768} \> {\arabicfont\char"0768} \\ -% \textsf{0769} \> {\arabicfont\char"0769} \\ -% \textsf{076A} \> {\arabicfont\char"076A} \\ -% \textsf{076B} \> {\arabicfont\char"076B} \\ -% \textsf{076C} \> {\arabicfont\char"076C} \\ -% \textsf{076D} \> {\arabicfont\char"076D} \\ -% \textbf{Presentation Forms} * \\ -% \textsf{FD3E} \> {\arabicfont\char"FD3E} \> ¦))¦ \\ -% \textsf{FD3F} \> {\arabicfont\char"FD3F} \> ¦((¦ \\ -% \textsf{FDF0} \> {\arialuni\char"FDF0} \> ¦SALLASTOP¦ \\ -% \textsf{FDF1} \> {\arialuni\char"FDF1} \> ¦QALA¦ \\ -% \textsf{FDF2} \> {\arabicfont\char"FDF2} \> ¦al-ll_ah¦ or ¦ALLAH¦ ** \\ -% \textsf{FDF3} \> {\arialuni\char"FDF3} \> ¦AKBAR¦ \\ -% \textsf{FDF4} \> {\arialuni\char"FDF4} \> ¦MUHAMMAD¦ \\ -% \textsf{FDF5} \> {\arialuni\char"FDF5} \> ¦SALAM¦ \\ -% \textsf{FDF6} \> {\arialuni\char"FDF6} \> ¦RASUL¦ or ¦RASOUL¦ \\ -% \textsf{FDF7} \> {\arialuni\char"FDF7} \> ¦ALAYHI¦ or ¦ALAYHE¦ \\ -% \textsf{FDF8} \> {\arialuni\char"FDF8} \> ¦WASALLAM¦ \\ -% \textsf{FDF9} \> {\arialuni\char"FDF9} \> ¦SALLA¦ \\ -% \textsf{FDFA} \> {\adobearabic\char"FDFA} \> ¦SLM¦ \\ -% \textsf{FDFB} \> {\arialuni\char"FDFB} \> ¦JALLA¦ \\ -% \textsf{FDFC} \> {\arabicfont\char"FDFC} \> ¦RIYAL¦ \\ -% \textsf{FDFD} \> {\Huge\arabesque\char"F050} \> ¦BASMALA¦ \\ -% \textbf{Non-Unicode Ligatures} \\ -% \> {\tradarabic\char"FDF2} \> ¦ll_ah¦ or ¦LLAH¦ ** \\ -% \> {\adobearabic فَلِله} \> ¦FALILLAH¦ *** -% \end{tabbing} -% \end{multicols} -% \parindentoff -% -% \baselineskip 14pt -% \textit{Notes}\\ -% * Since most of these glyphs are not present in Scheherazade -% (and, with a few exceptions, are very rarely featured in other fonts), -% for illustration purposes we have taken \textsf{FDF0}, \textsf{FDF1}, -% \textsf{FDF3}--\textsf{FDF9} and \textsf{FDFB} from Arial Unicode MS, -% \textsf{FDFA} from Adobe Arabic, and \textsf{FDFD} from AGA Arabesque. -% -% ** See §~\ref{allahliga} -% -% *** Specific to the font Adobe Arabic -% -% \newpage -% \appendix -% \small -% \section{Notes on available free and commercial fonts for the Perso-Arabic script} -% \label{arabicfont} -% \texttt{TO BE COMPLETED} -% -% -% ^^AThere are few free good quality fonts that support the Arabic script. -% -% \begin{compactitem}[\textbf{·}] -% \item ‘Scheherazade’ and ‘Lateef’ from SIL -% -% \item ‘Adobe Arabic’ -% -% \item Free fonts from \href{http://www.arabeyes.org}{Arabeyes.org} -% -% \item \ldots -% -% ^^AAdobe Arabic, dlig: (discretionary ligatures) -% ^^A -% ^^Aﻓ َ ﻠ ِ ﻠ ﻪ falilh > uni0641064E0644065006440647 -% ^^A -% ^^Aﻟ ﻠ ﻪ l-l-h > uni064406440647 -% ^^A -% ^^AA-l-l-h > FDF2 -% -% \item Arabic fonts on Mac~OS~X: ‘Geeza Pro’, ‘DecoType Naskh’, \ldots more?\\ -% \textcolor{red}{$\rightarrow$ \texttt{Help needed to test those fonts!}} -% -% \item ‘Arabic Typesetting’ and other Arabic fonts licensed to Microsoft -% -% \item Commercial fonts by vendors: -% \begin{compactitem}[\textbf{--}] -% \item Linotype GmbH: \ldots -% \item AGFA Monotype: \ldots -% \item ParaType: \ldots -% \item \ldots -% \end{compactitem} -% \end{compactitem} -% -% -% -% \section{Recommended Unicode fonts for transliterating Oriental languages} -% \label{latinextfonts} -% -% Here follows a list of open source and freeware fonts with full -% \textsc{Latin Extended Additional} coverage.\footnote{ ^^A -% See this \href{http://www.alanwood.net/unicode/fonts.html\#general}{webpage} for more details.} -% \begin{compactitem}[\textbf{·}] -% \item Gentium, Doulos, Charis: \url{http://scripts.sil.org/FontDownloads} -% -% \item Junicode: \url{http://junicode.sourceforge.net/} -% -% \item Libertine: \url{http://linuxlibertine.sourceforge.net/} -% -% \item DejaVu Serif / Sans / Sans Mono: \url{http://dejavu.sourceforge.net/wiki/index.php/Main_Page} -% -% \item Lucida Grande: Mac~OS~X -% -% \item TITUS Cyberbit Basic: \url{http://titus.fkidg1.uni-frankfurt.de/unicode/tituut.asp} -% -% \item Thryomanes: \url{ftp://ftp.io.com/pub/usr/hmiller/fonts/Thryomanes12.zip} -% -% \item jGaramond: \url{http://www.janthor.de/jGaramond/} -% -% \item Everson Mono Unicode (shareware): \url{http://www.evertype.com/emono/} -% -% \item Arial Unicode MS: Windows -% -% \item Microsoft Sans Serif: Windows -% -% \item FreeSerif / FreeSans / FreeMono: \url{http://savannah.nongnu.org/projects/freefont/} -% -% \item Roman Unicode: \url{http://everywitchway.net/linguistics/fonts/roman.html} -% -% \item Chrisanthi Unicode: \url{http://everywitchway.net/linguistics/fonts/chrysuni.html} -% -% \item HindSight Unicode (not very nice): \url{http://dartcanada.tripod.com/Objets/Zips/HindUnic.zip} -% -% \item AbRoman: \url{http://www.languagegeek.com/font/fontdownload.html} -% -% \item Garava: \url{http://www.aimwell.org/Fonts/fonts.html} -% -% \item Verajja (based on Bitstream Vera Sans, so very similar to DejaVu Sans): -% \url{http://www.aimwell.org/Fonts/fonts.html} -% -% \item Legendum: \url{http://home.kabelfoon.nl/~slam/fonts/fonts.html} -% -% \item Code2000 (shareware): \url{http://www.code2000.net} -% \end{compactitem} -% -% -% \section{Implementation} -%\iffalse -%<*package> -%\fi -% \begin{macrocode} -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{arabxetex} - [2008/07/16 v1.1.2 ArabTeX-like interface for XeLaTeX] -% -\DeclareOption{fullvoc}{\def\ax@mode{fullvoc}} -\DeclareOption{voc}{\def\ax@mode{voc}} -\DeclareOption{novoc}{\def\ax@mode{novoc}} -\DeclareOption{trans}{\def\ax@mode{trans}} -\DeclareOption{utf}{\def\ax@mode{utf}} -\DeclareOption{fdf2alif}{\def\ax@font@allah{fdf2alif}} -\DeclareOption{fdf2noalif}{\def\ax@font@allah{fdf2noalif}} -\ExecuteOptions{novoc,fdf2alif} -\ProcessOptions -\def\ax@mode@fullvoc{fullvoc} -\def\ax@mode@voc{voc} -\def\ax@mode@novoc{novoc} -\def\ax@mode@trans{trans} -\def\ax@mode@utf{utf} -\newif\ifax@mode@defined -\def\ax@ismode@defined#1{% - \ifcsname ax@mode@#1\endcsname% - \ax@mode@definedtrue% - \else% - \ax@mode@definedfalse% - \fi} -\def\ax@lang{arab}%default language (for macros like \aemph) -\RequirePackage{bidi} -\RequirePackage{amsmath}%because of macro \overline used in \aemph -\RequirePackage{fontspec} -\AtBeginDocument{\ifdefined\arabicfont\relax\else% - \PackageWarning{arabxetex}{\string\arabicfont\ is not defined!^^JI will try to load Scheherazade}% - \newfontfamily\arabicfont[Script=Arabic,Scale=2]{Scheherazade}\fi - }% -\def\ax@trans@style{\itshape}% -\newcommand{\SetTranslitStyle}[1]{\def\ax@trans@style{#1}} -\newcommand{\SetTranslitConvention}[1]{\def\ax@trans@convention{#1}} -\def\ax@trans@convention{loc}% Library of Congress is default -\newcommand{\SetAllahWithAlif}{\def\ax@font@allah{fdf2alif}} -\newcommand{\SetAllahWithoutAlif}{\def\ax@font@allah{fdf2noalif}} -\def\arabtex@codes{\catcode`^=11\relax\catcode`_=11\relax} -\def\UC{\char"E000} % This is used to capitalize the following letter (ignoring - % article al-) in transliteration mode -%%%Font setup -\def\ax@farsi@font{\ifdefined\farsifont\farsifont\else\arabicfont\fi} -\def\ax@urdu@font{\ifdefined\urdufont\urdufont\else\arabicfont\fi} -\def\ax@pashto@font{\ifdefined\pashtofont\pashtofont\else\arabicfont\fi} -\def\ax@maghribi@font{\ifdefined\maghribifont\maghribifont\else\arabicfont\fi} -\def\ax@sindhi@font{\ifdefined\sindhifont\sindhifont\else\arabicfont\fi} -\def\ax@kashmiri@font{\ifdefined\kashmirifont\kashmirifont\else\arabicfont\fi} -\def\ax@ottoman@font{\ifdefined\ottomanfont\ottomanfont\else\arabicfont\fi} -\def\ax@kurdish@font{\ifdefined\kurdishfont\kurdishfont\else\arabicfont\fi} -\def\ax@malay@font{\ifdefined\malayfont\malayfont\else\arabicfont\fi} -\def\ax@uighur@font{\ifdefined\uighurfont\uighurfont\else\arabicfont\fi} -\def\ax@urdu@font{\ifdefined\urdufont\urdufont\else\arabicfont\fi} - -\newenvironment{arab}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{arab}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - \par\arabtex@codes\ax@trans@style% - \addfontfeature{Mapping=arabtex-trans-\ax@trans@convention}% - \else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\arabicfont\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\arabicfont\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-\@tempa}% - \fi\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\arabicfont\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-\ax@mode}% -\fi} -{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} -\let\Arabic=\arab% -%%% -\newenvironment{maghribi}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{maghribi}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - \par\arabtex@codes\ax@trans@style% - \addfontfeature{Mapping=arabtex-trans-\ax@trans@convention}% - \else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@maghribi@font\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\ax@maghribi@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\@tempa}% - \fi\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@maghribi@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\ax@mode}% -\fi} -{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} -%%% -\newenvironment{farsi}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{farsi}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - \par\arabtex@codes\ax@trans@style% - \addfontfeature{Mapping=arabtex-farsi-trans-\ax@trans@convention}% - \else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@farsi@font\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\ax@farsi@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\@tempa}% - \fi\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@farsi@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\ax@mode}% -\fi} -{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} -\let\persian=\farsi -%%% -\newenvironment{urdu}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{urdu}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - \par\arabtex@codes\ax@trans@style% - \addfontfeature{Mapping=arabtex-urdu-trans-\ax@trans@convention}% - \else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@urdu@font\addfontfeature{Language=Urdu}%Mapping=arabtex-utf}% - \else% - \par\setRL\ax@urdu@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\@tempa}% - \fi\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@urdu@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\ax@mode}% -\fi} -{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} -%%% -\newenvironment{pashto}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{pashto}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - \par\arabtex@codes\ax@trans@style% - \addfontfeature{Mapping=arabtex-pashto-trans-\ax@trans@convention}% - \else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@pashto@font\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\ax@pashto@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\@tempa}% - \fi\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@pashto@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\ax@mode}% -\fi} -{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} -%%% -\newenvironment{sindhi}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{sindhi}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - \par\arabtex@codes\ax@trans@style% - \addfontfeature{Mapping=arabtex-sindhi-trans-\ax@trans@convention}% - \else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@sindhi@font\addfontfeature{Language=Sindhi}%Mapping=arabtex-utf}% - \else% - \par\setRL\ax@sindhi@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\@tempa,Language=Sindhi}% - \fi\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@sindhi@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\ax@mode,Language=Sindhi}% -\fi} -{\ifx\@tempa\ax@mode@trans\relax\else\unsetRL\fi\par} -%%% -\newenvironment{ottoman}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{ottoman}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - %\ifx\@tempa\ax@mode@trans% - % \par\arabtex@codes\ax@trans@style% - % \addfontfeature{Mapping=arabtex-turk-trans-\ax@trans@convention}% - %\else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@ottoman@font\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\ax@ottoman@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\@tempa}% - \fi%\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@ottoman@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\ax@mode}% -\fi} -{%\ifx\@tempa\ax@mode@trans\relax\else -\unsetRL%\fi -\par} -\let\turk=\ottoman -%%% -\newenvironment{kurdish}[1][]% -{\def\ax@lang{kurdish}% -%\edef\@tempa{#1}% -%\ifx\@tempa\ax@mode@trans% -% \par\arabtex@codes\ax@trans@style% -% \addfontfeature{Mapping=arabtex-kurdish-trans-\ax@trans@convention}% -%\else% -\ifx\@tempa\ax@mode@utf% - \par\setRL\ax@kurdish@font\addfontfeature{Language=Kurdish}%Mapping=arabtex-utf}% -\else% - \par\setRL\ax@kurdish@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-kurdish,Language=Kurdish}% -\fi} -{%\ifx\@tempa\ax@mode@trans\relax\else -\unsetRL%\fi -\par} -%%% -\newenvironment{kashmiri}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{kashmiri}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - %\ifx\@tempa\ax@mode@trans% - % \par\arabtex@codes\ax@trans@style% - % \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-trans-\ax@trans@convention}% - %\else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@kashmiri@font\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\ax@kashmiri@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\@tempa}% - \fi%\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@kashmiri@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\ax@mode}% -\fi} -{%\ifx\@tempa\ax@mode@trans\relax\else -\unsetRL%\fi -\par} -%%% -\newenvironment{malay}[1][\ax@mode]% -{\edef\@tempa{#1}% -\def\ax@lang{malay}% -\ax@ismode@defined{\@tempa}% -\ifax@mode@defined% - %\ifx\@tempa\ax@mode@trans% - % \par\arabtex@codes\ax@trans@style% - % \addfontfeature{Mapping=arabtex-malay-trans-\ax@trans@convention}% - %\else% - \ifx\@tempa\ax@mode@utf% - \par\setRL\ax@malay@font\addfontfeature{Mapping=arabicfixes}% - \else% - \par\setRL\ax@malay@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\@tempa}% - \fi%\fi% -\else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \par\setRL\ax@malay@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\ax@mode}% -\fi} -{%\ifx\@tempa\ax@mode@trans\relax\else -\unsetRL%\fi -\par} -\let\jawi=\malay -%%% -\newenvironment{uighur}[1]% -{%\edef\@tempa{#1}% -\def\ax@lang{uighur}% -%\ifx\@tempa\ax@mode@trans% -% \par\arabtex@codes\ax@trans@style% -% \addfontfeature{Mapping=arabtex-uighur-trans-\ax@trans@convention}% -%\else% -\ifx\@tempa\ax@mode@utf% - \par\setRL\ax@uighur@font\addfontfeature{Mapping=arabicfixes}% -\else% - \par\setRL\ax@uighur@font\arabtex@codes% - \addfontfeature{Mapping=arabtex-\ax@font@allah-uighur}% -\fi} -{%\ifx\@tempa\ax@mode@trans\relax\else -\unsetRL%\fi -\par} -%%% -\def\textarab{\bgroup\arabtex@codes\text@arab} -\let\textarabic=\textarab -\def\textmaghribi{\bgroup\arabtex@codes\text@maghribi} -\def\textfarsi{\bgroup\arabtex@codes\text@farsi} -\let\textpersian=\textfarsi -\def\texturdu{\bgroup\arabtex@codes\text@urdu} -\def\textsindhi{\bgroup\arabtex@codes\text@sindhi} -\def\textpashto{\bgroup\arabtex@codes\text@pashto} -\def\textottoman{\bgroup\arabtex@codes\text@ottoman} -\let\textturk=\textottoman -\def\textkurdish{\bgroup\arabtex@codes\text@kurdish} -\def\textkashmiri{\bgroup\arabtex@codes\text@kashmiri} -\def\textmalay{\bgroup\arabtex@codes\text@malay} -\let\textjawi=\textmalay -\def\textuighur{\bgroup\arabtex@codes\text@uighur} -\newcommand\text@arab[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{arab}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - {\ax@trans@style\addfontfeature{Mapping=arabtex-trans-\ax@trans@convention}#2}% - \else% - \ifx\@tempa\ax@mode@utf% - \RL{\arabicfont\addfontfeature{Mapping=arabicfixes} #2}% - \else% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-\@tempa}#2}% - \fi\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\arabicfont\addfontfeature{Mapping=arabtex-\ax@font@allah-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@maghribi[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{maghribi}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - {\ax@trans@style\addfontfeature{Mapping=arabtex-trans-\ax@trans@convention}#2}% - \else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@maghribi@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@maghribi@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\@tempa}#2}% - \fi\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@maghribi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-maghribi-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@farsi[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{farsi}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - {\ax@trans@style\addfontfeature{Mapping=arabtex-farsi-trans-\ax@trans@convention}#2}% - \else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@farsi@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@farsi@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\@tempa}#2}% - \fi\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@farsi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-farsi-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@urdu[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{urdu}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - {\ax@trans@style\addfontfeature{Mapping=arabtex-urdu-trans-\ax@trans@convention}#2}% - \else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@urdu@font\addfontfeature{Language=Urdu}#2}%eventually Mapping=arabtex-utf - \else% - \RL{\ax@urdu@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\@tempa,Language=Urdu}#2}% - \fi\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@urdu@font\addfontfeature{Mapping=arabtex-\ax@font@allah-urdu-\ax@mode,Language=Urdu}#2}% - \fi\egroup} -\newcommand\text@sindhi[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{sindhi}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - {\ax@trans@style\addfontfeature{Mapping=arabtex-sindhi-trans-\ax@trans@convention}#2}% - \else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@sindhi@font\addfontfeature{Language=Sindhi} #2}%eventually Mapping=arabtex-utf - \else% - \RL{\ax@sindhi@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\@tempa,Language=Sindhi}#2}% - \fi\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@sindhi@font\addfontfeature{Mapping=arabtex-\ax@font@allah-sindhi-\ax@mode,Language=Sindhi}#2}% - \fi\egroup} -\newcommand\text@pashto[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{pashto}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - \ifx\@tempa\ax@mode@trans% - {\ax@trans@style\addfontfeature{Mapping=arabtex-pashto-trans-\ax@trans@convention}#2}% - \else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@pashto@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@pashto@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\@tempa}#2}% - \fi\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@pashto@font\addfontfeature{Mapping=arabtex-\ax@font@allah-pashto-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@ottoman[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{ottoman}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - % UNCOMMENT when transliteration mapping is done - %\ifx\@tempa\ax@mode@trans% - % {\ax@trans@style\addfontfeature{Mapping=arabtex-turk-trans-\ax@trans@convention}#2}% - %\else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@ottoman@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@ottoman@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\@tempa}#2}% - \fi%\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@ottoman@font\addfontfeature{Mapping=arabtex-\ax@font@allah-turk-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@kurdish[2][]{% - \edef\@tempa{#1}% - \def\ax@lang{kurdish}% - % UNCOMMENT when transliteration mapping is done - %\ifx\@tempa\ax@mode@trans% - % {\ax@trans@style\addfontfeature{Mapping=arabtex-kurdish-trans-\ax@trans@convention}#2}% - %\else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@kurdish@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@kurdish@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-kurdish,Language=Kurdish}#2}% - \fi%\fi% - \egroup} -\newcommand\text@kashmiri[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{kashmiri}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - % UNCOMMENT when transliteration mapping is done - %\ifx\@tempa\ax@mode@trans% - % {\ax@trans@style\addfontfeature{Mapping=arabtex-kashmiri-trans-\ax@trans@convention}#2}% - %\else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@kashmiri@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@kashmiri@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\@tempa}#2}% - \fi%\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \@ax@mode}% - \RL{\ax@kashmiri@font\addfontfeature{Mapping=arabtex-\ax@font@allah-kashmiri-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@malay[2][\ax@mode]{% - \edef\@tempa{#1}% - \def\ax@lang{malay}% - \ax@ismode@defined{\@tempa}% - \ifax@mode@defined% - % UNCOMMENT when transliteration mapping is done - %\ifx\@tempa\ax@mode@trans% - % {\ax@trans@style\addfontfeature{Mapping=arabtex-malay-trans-\ax@trans@convention}#2}% - %\else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@malay@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@malay@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\@tempa}#2}% - \fi%\fi% - \else% - \PackageWarning{arabxetex}{Mode \@tempa\ not defined, defaulting to \ax@mode}% - \RL{\ax@malay@font\addfontfeature{Mapping=arabtex-\ax@font@allah-malay-\ax@mode}#2}% - \fi\egroup} -\newcommand\text@uighur[2][]{% - \edef\@tempa{#1}% - \def\ax@lang{uighur}% - % UNCOMMENT when transliteration mapping is done - %\ifx\@tempa\ax@mode@trans% - % {\ax@trans@style\addfontfeature{Mapping=arabtex-uighur-trans-\ax@trans@convention}#2}% - %\else% - \ifx\@tempa\ax@mode@utf% - \RL{\ax@uighur@font\addfontfeature{Mapping=arabicfixes} #2}%evtl {Mapping=arabtex-utf} - \else% - \RL{\ax@uighur@font% - \addfontfeature{Mapping=arabtex-\ax@font@allah-uighur}#2}% - \fi%\fi% - \egroup} -% -\newcommand{\textLR}[1]{\LR{\rmfamily #1}} -\newcommand{\aemph}[1]{% - \edef\@tempb{\expandafter\noexpand\csname text\ax@lang\endcsname}% - $\overline{\text{\@tempb{#1}}}$} -% -% experimental: this surely does not work! -% I want a mechanism to enable defining commands that accept args containing \arabtex@codes -%\def\newarabxetexcommand#1#2{% -% \edef\ax@tcomm@nd{\expandafter\relax\csname #1@\endcsname} -% \expandafter\def\string#1{% -% \bgroup\arabtex@codes\ax@tcomm@nd} -% \def\ax@tcomm@nd{#2\egroup}} -% \end{macrocode} -% -%\iffalse -%</package> -%\fi -% -% \subsection{Some notes on the TECkit mappings} -% -% \texttt{TO BE DONE \dots} -% -% -% ^^A\section{Unicode Matters} ---> TODO CONTACT ROOZBEH ABOUT THIS -% ^^A -% ^^ASome glyphs are missing in Unicode: -% ^^A -% ^^A- wavy Hamza below as combining diacritic (for Kashmiri) -% ^^A -% ^^A- .b with ring below (for Kashmiri) (NB: can be poorly rendered by U+066E U+06EA) -% ^^A -% ^^A- hamza directly above baseline (for Qur'an) : 0654 is too high! -% ^^A \def\hamzaB{\raisebox[-1ex]{\char"0654} is ok -% ^^A -% ^^A- U+FDF2: codify the LLAH ligature as well? -% ^^A Perhaps the FALILLAH ligature could be added as well? -% -% ^^A\clearpage -% ^^A\PrintChanges -% -% ^^A\clearpage -% ^^A\PrintIndex -% -% \Finale -% -%\iffalse -%<*dtx-style> -% \begin{macrocode} -\ProvidesPackage{arabxetex-dtx-style} -\usepackage{fontspec,xltxtra} -\usepackage{array,supertabular,xspace,multicol,fancyvrb,paralist} -\usepackage[voc]{arabxetex} -\usepackage[dvipdfm]{color} -\definecolor{myblue}{rgb}{0.02,0.04,0.48} -\definecolor{myred}{rgb}{0.65,0.04,0.07} -\definecolor{darkgray}{gray}{0.3} -\definecolor{lightgray}{gray}{0.6} -\definecolor{IslamicGreen}{rgb}{0,.43,0} -\usepackage[dvipdfm, - bookmarks=true, - colorlinks=true, - linkcolor=myblue, - urlcolor=myblue, - citecolor=myblue, - hyperindex=false, - hyperfootnotes=false, - pdftitle={The ArabXeTeX package}, - pdfauthor={F Charette <firmicus@gmx.net>}, - pdfsubject={An ArabTeX-like interface for typesetting languages in Arabic script with XeLaTeX}, - pdfkeywords={ArabTeX, XeTeX, XeLaTeX, Arabic, Maghribi, Persian, Farsi, Urdu, Sindhi, - Pashto, Turkish, Ottoman, Kurdish, Kashmiri, Malay, Jawi, Uighur} - ]{hyperref} -% NB some of this preamble is taken or adapted from fontspec-doc-style.sty -\newcommand*\pkg[1]{\textsf{#1}} -\def\eg{\textit{e.g.,}\xspace} -\def\ie{\textit{i.e.,}\xspace} -\def\ca{\textit{ca.}\@\xspace} -\def\Eg{\textit{E.g.,}\xspace} -\def\Ie{\textit{I.e.,}\xspace} -\def\etc{\@ifnextchar.{\textit{etc}}{\textit{etc.}\@\xspace}} - -\newlength{\oldparindent} -\newcommand{\parindentoff}{\setlength{\oldparindent}{\parindent} \setlength{\parindent}{0pt}} -\newcommand{\parindenton}{\setlength{\parindent}{\oldparindent}} - -%% LOGOS, tuned for Palatino: -\makeatletter -\TeX@logo@spacing{-0.12em}{-0.12em}% - {0.5ex}{-0.3em}{-0.12em}{-0.1em} -\makeatother -\def\arabxetex{Arab\XeTeX} -\def\arabtex{Arab\TeX} -\def\arabxetexAr{\RL{\fontspec[Script=Arabic,Scale=1.5]{DecoType Thuluth} عرب زيتخ}} -\def\MacOSX{Mac~OS~X} -\def\ASCII{\textsc{ascii}} % ii small caps does not work with Junicode! - -%% Sidenotes << copied from fontspec.dtx -\newcommand\warn[2]{% - \edef\thisversion{#1}% - \ifhmode\unskip~\fi{\ifx\thisversion\fileversion\color{red}\fi - $\leftarrow$}% - \marginpar{\raggedleft - \small% - {\ifx\thisversion\fileversion\color{red}\fi$\rightarrow$}% - \,{\notefont #1:~#2}}} - -\newcommand\new[1]{% - \edef\thisversion{#1}% - \ifhmode\unskip~\fi{\ifx\thisversion\fileversion\color{blue}\else\color[gray]{0.5}\fi - $\leftarrow$}% - \marginpar{\raggedleft - \small\ifx\thisversion\fileversion\color{blue}\else\color[gray]{0.5}\fi - $\rightarrow$\,{\notefont #1:~New!}}} - -%% Sidenote font -\newfontfamily\notefont[Scale=MatchLowercase]{Lucida Sans Unicode} - -%%% - -%% fontspec declarations: -\setromanfont[Mapping=tex-text]{Junicode}%{FPL Neu} -\defaultfontfeatures{Scale=MatchLowercase} -\setmonofont{Inconsolata}%{Latin Modern Typewriter Proportional}%{Luxi Mono}%{Courier New} -\setsansfont{Lucida Sans Unicode} -%\setmathrm{Optima Regular} -%\setboldmathrm[BoldFont=Optima ExtraBlack]{Optima Bold} -%\defaultfontfeatures{Mapping=tex-text} -\newfontfamily\arabicfont[Script=Arabic,Scale=1.5]{Scheherazade} -\newfontfamily\urdufont[Script=Arabic,Scale=1.2]{Nafees Pakistani Naskh}%Nafees Nastaleeq does not work well -\newfontfamily\farsifont[Script=Arabic,Scale=1.33]{Farsi Simple Bold} -\newfontfamily\lateeffont[Script=Arabic,Scale=1.5]{Lateef} -\newfontfamily\lotusfont[Script=Arabic,Scale=1.5]{Lotus Linotype} -\newfontfamily\arabtype[Script=Arabic,Scale=1.5]{Arabic Typesetting} -\newfontfamily\adobearabic[Script=Arabic,Scale=1.5]{Adobe Arabic} -\newfontfamily\tradarabic[Script=Arabic,Scale=1.5]{Traditional Arabic} -\newfontfamily\arabesque{AGA Arabesque} -\newfontfamily\arialuni{Arial Unicode MS} -\newfontfamily\gentium{Gentium} - -\linespread{1.05} -\frenchspacing -%\newenvironment{MYitemize}{% -%\renewcommand\labelitemi{\cdot}% -%\begin{list}{}{\setlength{\itemsep}{.15\parsep}}}% -%%\setlength{\labelwidth}{0pt}\setlength{\leftmargin}{0pt}\setlength{\itemindent}{0pt}} -%{\end{list}} -%\addtolength{\textheight}{3cm} -%\setlength{\leftmargin}{1cm} -%\setlength{\topmargin}{0cm} -%\newcommand{\Tarab}[2][black]{\textcolor{#1}{\textarab{ #2 }}} -%\newcommand{\Tfarsi}[2][black]{\textcolor{#1}{\textfarsi{ #2 }}} -%\newcommand{\Turdu}[2][black]{\textcolor{#1}{\texturdu{ #2 }}} -%\newcommand{\Tsindhi}[2][black]{\textcolor{#1}{\textsindhi{ #2 }}} -%\newcommand{\Tpashto}[2][black]{\textcolor{#1}{\textpashto{ #2 }}} -%\newcommand{\Tkashmiri}[2][black]{\textcolor{#1}{\textkashmiri{ #2 }}} -%\newcommand{\Tkurdish}[2][black]{\textcolor{#1}{\textkurdish{ #2 }}} -%\newcommand{\Tturk}[2][black]{\textcolor{#1}{\textturk{ #2 }}} -%\newcommand{\Tmalay}[2][black]{\textcolor{#1}{\textmalay{ #2 }}} -%\newcommand{\Tuighur}[2][black]{\textcolor{#1}{\textuighur{ #2 }}} -%%% -\def\GN{\bgroup\catcode`\_=11\relax\catcode`\^=11\relax\GNX} -\def\GR{\bgroup\catcode`\_=11\relax\catcode`\^=11\relax\GRX} -\def\GB{\bgroup\catcode`\_=11\relax\catcode`\^=11\relax\GBX} -\def\GG{\bgroup\catcode`\_=11\relax\catcode`\^=11\relax\GGX} -\def\GV{\bgroup\catcode`\_=11\relax\catcode`\^=11\relax\GVX} -\newcommand{\GNX}[3][arab]{% - \edef\@tempa{\expandafter\noexpand\csname text#1\endcsname} - \parbox[c]{7.5mm}{\centering{\@tempa{#2}}\\[1pt]\ttfamily\fontsize{5}{5}\selectfont{#3}}\egroup} -\newcommand{\GRX}[3][arab]{% - \edef\@tempa{\expandafter\noexpand\csname text#1\endcsname} - \parbox[c]{7.5mm}{\centering{\textcolor{myred}{\@tempa{#2}}}\\[1pt]\ttfamily\fontsize{5}{5}\selectfont{#3}}\egroup} -\newcommand{\GBX}[3][arab]{% - \edef\@tempa{\expandafter\noexpand\csname text#1\endcsname} - \parbox[c]{7.5mm}{\centering{\textcolor{myblue}{\@tempa{#2}}}\\[1pt]\ttfamily\fontsize{5}{5}\selectfont{#3}}\egroup} -\newcommand{\GVX}[3][arab]{% - \edef\@tempa{\expandafter\noexpand\csname text#1\endcsname} - \parbox[c]{7.5mm}{\centering{\textcolor{IslamicGreen}{\@tempa{#2}}}\\[1pt]\ttfamily\fontsize{5}{5}\selectfont{#3}}\egroup} -\newcommand{\GGX}[2][arab]{% - \edef\@tempa{\expandafter\noexpand\csname text#1\endcsname} - \parbox[c]{7.5mm}{\centering{\textcolor{lightgray}{\@tempa{#2}}}}\egroup} - -\newcommand{\hamzaB}{\char"200D\char"0640\raise-.95ex\hbox{\char"0654}\char"200D} -% \end{macrocode} -%</dtx-style> -%\fi -% -% -% \typeout{*************************************************************} -% \typeout{*} -% \typeout{* To finish the installation you have to move the following} -% \typeout{* file into a directory searched by XeTeX:} -% \typeout{*} -% \typeout{* \space\space\space arabxetex.sty} -% \typeout{*} -% \typeout{* and move all *.tec and *.map files to} -% \typeout{* .../fonts/misc/xetex/fontmapping/arabxetex/} -% \typeout{*************************************************************} -% -\endinput - diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf Binary files differindex 2041a6d0a8c..5bb140b2bb1 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf +++ b/Master/texmf-dist/doc/xelatex/arabxetex/arabxetex.pdf diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/ednotes_example.pdf b/Master/texmf-dist/doc/xelatex/arabxetex/examples/ednotes_example.pdf Binary files differindex c24dbcf774e..c24dbcf774e 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/ednotes_example.pdf +++ b/Master/texmf-dist/doc/xelatex/arabxetex/examples/ednotes_example.pdf diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/ednotes_example.tex b/Master/texmf-dist/doc/xelatex/arabxetex/examples/ednotes_example.tex index cc49982f5b1..cc49982f5b1 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/ednotes_example.tex +++ b/Master/texmf-dist/doc/xelatex/arabxetex/examples/ednotes_example.tex diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/minimal.tex b/Master/texmf-dist/doc/xelatex/arabxetex/examples/minimal.tex index 88c3923dcf2..0244b6bd14d 100644 --- a/Master/texmf-dist/doc/xelatex/arabxetex/minimal.tex +++ b/Master/texmf-dist/doc/xelatex/arabxetex/examples/minimal.tex @@ -13,10 +13,14 @@ This is some text in English with Arabic insertion \textarab[utf]{عربي}. This is some text in English with Arabic insertion \textarab[voc]{`arabI}. \begin{arab} -wa-ha_dihi fiqraT"uN bi-al-`arabiyaT ma`a kalimaT inklIziyaT (\textroman{English}). +wa-ha_dihi fiqraT"uN bi-al-`arabiyaT ma`a kalimaT inklIziyaT (\textLR{English}). \end{arab} \begin{arab}[utf] -وهذه فقرةٌ بالعربية مع كلمة انكليزية (\textroman{English}). +وهذه فقرةٌ بالعربية مع كلمة انكليزية (\textLR{English}). +\end{arab} + +\begin{arab}[novoc] +وَهَذِهِ فِقرَةٌ بِالعَرَبِيَة مَعَ كَلِمَة اِنكلِيزِيَة (\textLR{English}). \end{arab} \end{document} diff --git a/Master/texmf-dist/doc/xelatex/arabxetex/makemaps.pl b/Master/texmf-dist/doc/xelatex/arabxetex/makemaps.pl deleted file mode 100644 index 231a6b5c8ea..00000000000 --- a/Master/texmf-dist/doc/xelatex/arabxetex/makemaps.pl +++ /dev/null @@ -1,1117 +0,0 @@ -#!/usr/bin/perl - -use strict; -use warnings; - -my $name="arabtex"; -my $master="$name.maps"; -my $output="mappings/$name"; -mkdir("mappings"); - -#languages = arab maghribi farsi urdu pashto sindhi kashmiri kurdish turk malay uighur -# but kurdish and uighur are coded separately - -# First the mappings for fonts that have the glyph U+FDF2 with initial alif - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@An // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*n // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#-[BPUTSKOM]+n // ; - s/^#-[BPUTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Av // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*v // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#-[BPUTSKOM]+v // ; - s/^#-[BPUTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Af // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*[vf] // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#-[BPUTSKOM]+[vf] // ; - s/^#-[BPUTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -## maghribi - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-maghribi-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Bn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*n // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#[A-Z]*B[A-Z]*n // ; - s/^#[A-Z]*B[A-Z]* // ; - s/^#-[PUTSKOM]+n // ; - s/^#-[PUTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-maghribi-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Bv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*v // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#[A-Z]*B[A-Z]*v // ; - s/^#[A-Z]*B[A-Z]* // ; - s/^#-[PUTSKOM]+v // ; - s/^#-[PUTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-maghribi-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Bf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*[vf] // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#[A-Z]*B[A-Z]*[vf] // ; - s/^#[A-Z]*B[A-Z]* // ; - s/^#-[PUTSKOM]+[vf] // ; - s/^#-[PUTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -### farsi - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-farsi-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Pn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*P[A-Z]*n // ; - s/^#[A-Z]*P[A-Z]* // ; - s/^#-[ABUTSKOM]+n // ; - s/^#-[ABUTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-farsi-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Pv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*P[A-Z]*v // ; - s/^#[A-Z]*P[A-Z]* // ; - s/^#-[ABUTSKOM]+v // ; - s/^#-[ABUTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-farsi-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Pf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*P[A-Z]*[vf] // ; - s/^#[A-Z]*P[A-Z]* // ; - s/^#-[ABUTSKOM]+[vf] // ; - s/^#-[ABUTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -### urdu - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-urdu-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Un // ; - s/^\@.+\n//m ; - s/^#[A-Z]*U[A-Z]*n // ; - s/^#[A-Z]*U[A-Z]* // ; - s/^#-[ABPTSKOM]+n // ; - s/^#-[ABPTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-urdu-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Uv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*U[A-Z]*v // ; - s/^#[A-Z]*U[A-Z]* // ; - s/^#-[ABPTSKOM]+v // ; - s/^#-[ABPTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-urdu-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Uf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*U[A-Z]*[vf] // ; - s/^#[A-Z]*U[A-Z]* // ; - s/^#-[ABPTSKOM]+[vf] // ; - s/^#-[ABPTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###sindhi - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-sindhi-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Sn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*S[A-Z]*n // ; - s/^#[A-Z]*S[A-Z]* // ; - s/^#-[ABPUTKOM]+n // ; - s/^#-[ABPUTKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-sindhi-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Sv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*S[A-Z]*v // ; - s/^#[A-Z]*S[A-Z]* // ; - s/^#-[ABPUTKOM]+v // ; - s/^#-[ABPUTKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-sindhi-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Sf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*S[A-Z]*[vf] // ; - s/^#[A-Z]*S[A-Z]* // ; - s/^#-[ABPUTKOM]+[vf] // ; - s/^#-[ABPUTKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###pashto - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-pashto-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Tn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*T[A-Z]*n // ; - s/^#[A-Z]*T[A-Z]* // ; - s/^#-[ABPUSKOM]+n // ; - s/^#-[ABPUSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-pashto-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Tv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*T[A-Z]*v // ; - s/^#[A-Z]*T[A-Z]* // ; - s/^#-[ABPUSKOM]+v // ; - s/^#-[ABPUSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-pashto-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Tf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*T[A-Z]*[vf] // ; - s/^#[A-Z]*T[A-Z]* // ; - s/^#-[ABPUSKOM]+[vf] // ; - s/^#-[ABPUSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -###turk - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-turk-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@On // ; - s/^\@.+\n//m ; - s/^#[A-Z]*O[A-Z]*n // ; - s/^#[A-Z]*O[A-Z]* // ; - s/^#-[ABPUSKTM]+n // ; - s/^#-[ABPUSKTM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-turk-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Ov // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*O[A-Z]*v // ; - s/^#[A-Z]*O[A-Z]* // ; - s/^#-[ABPUSKTM]+v // ; - s/^#-[ABPUSKTM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-turk-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Of // ; - s/^\@.+\n//m ; - s/^#[A-Z]*O[A-Z]*[vf] // ; - s/^#[A-Z]*O[A-Z]* // ; - s/^#-[ABPUSKTM]+[vf] // ; - s/^#-[ABPUSKTM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###kashmiri - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-kashmiri-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Kn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*K[A-Z]*n // ; - s/^#[A-Z]*K[A-Z]* // ; - s/^#-[ABPUSOTM]+n // ; - s/^#-[ABPUSOTM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-kashmiri-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Kv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*K[A-Z]*v // ; - s/^#[A-Z]*K[A-Z]* // ; - s/^#-[ABPUSOTM]+v // ; - s/^#-[ABPUSOTM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-kashmiri-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Kf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*K[A-Z]*[vf] // ; - s/^#[A-Z]*K[A-Z]* // ; - s/^#-[ABPUSOTM]+[vf] // ; - s/^#-[ABPUSOTM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###malay - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-malay-novoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Mn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*M[A-Z]*n // ; - s/^#[A-Z]*M[A-Z]* // ; - s/^#-[ABPUSKOT]+n // ; - s/^#-[ABPUSKOT]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-malay-voc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Mv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*M[A-Z]*v // ; - s/^#[A-Z]*M[A-Z]* // ; - s/^#-[ABPUSKOT]+v // ; - s/^#-[ABPUSKOT]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2alif-malay-fullvoc.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - s/^\@Mf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*M[A-Z]*[vf] // ; - s/^#[A-Z]*M[A-Z]* // ; - s/^#-[ABPUSKOT]+[vf] // ; - s/^#-[ABPUSKOT]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -## Now the mappings for fonts that do not include the initial alif in U+FDF2 - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@An // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*n // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#-[BPUTSKOM]+n // ; - s/^#-[BPUTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Av // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*v // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#-[BPUTSKOM]+v // ; - s/^#-[BPUTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Af // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*[vf] // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#-[BPUTSKOM]+[vf] // ; - s/^#-[BPUTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -## maghribi - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-maghribi-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Bn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*n // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#[A-Z]*B[A-Z]*n // ; - s/^#[A-Z]*B[A-Z]* // ; - s/^#-[PUTSKOM]+n // ; - s/^#-[PUTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-maghribi-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Bv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*v // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#[A-Z]*B[A-Z]*v // ; - s/^#[A-Z]*B[A-Z]* // ; - s/^#-[PUTSKOM]+v // ; - s/^#-[PUTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-maghribi-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Bf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*A[A-Z]*[vf] // ; - s/^#[A-Z]*A[A-Z]* // ; - s/^#[A-Z]*B[A-Z]*[vf] // ; - s/^#[A-Z]*B[A-Z]* // ; - s/^#-[PUTSKOM]+[vf] // ; - s/^#-[PUTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} ; -close OUTPUT; -close MAPS; - -### farsi - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-farsi-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Pn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*P[A-Z]*n // ; - s/^#[A-Z]*P[A-Z]* // ; - s/^#-[ABUTSKOM]+n // ; - s/^#-[ABUTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-farsi-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Pv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*P[A-Z]*v // ; - s/^#[A-Z]*P[A-Z]* // ; - s/^#-[ABUTSKOM]+v // ; - s/^#-[ABUTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-farsi-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Pf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*P[A-Z]*[vf] // ; - s/^#[A-Z]*P[A-Z]* // ; - s/^#-[ABUTSKOM]+[vf] // ; - s/^#-[ABUTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -### urdu - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-urdu-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Un // ; - s/^\@.+\n//m ; - s/^#[A-Z]*U[A-Z]*n // ; - s/^#[A-Z]*U[A-Z]* // ; - s/^#-[ABPTSKOM]+n // ; - s/^#-[ABPTSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-urdu-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Uv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*U[A-Z]*v // ; - s/^#[A-Z]*U[A-Z]* // ; - s/^#-[ABPTSKOM]+v // ; - s/^#-[ABPTSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-urdu-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Uf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*U[A-Z]*[vf] // ; - s/^#[A-Z]*U[A-Z]* // ; - s/^#-[ABPTSKOM]+[vf] // ; - s/^#-[ABPTSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###sindhi - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-sindhi-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Sn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*S[A-Z]*n // ; - s/^#[A-Z]*S[A-Z]* // ; - s/^#-[ABPUTKOM]+n // ; - s/^#-[ABPUTKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-sindhi-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Sv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*S[A-Z]*v // ; - s/^#[A-Z]*S[A-Z]* // ; - s/^#-[ABPUTKOM]+v // ; - s/^#-[ABPUTKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-sindhi-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Sf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*S[A-Z]*[vf] // ; - s/^#[A-Z]*S[A-Z]* // ; - s/^#-[ABPUTKOM]+[vf] // ; - s/^#-[ABPUTKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###pashto - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-pashto-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Tn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*T[A-Z]*n // ; - s/^#[A-Z]*T[A-Z]* // ; - s/^#-[ABPUSKOM]+n // ; - s/^#-[ABPUSKOM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-pashto-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Tv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*T[A-Z]*v // ; - s/^#[A-Z]*T[A-Z]* // ; - s/^#-[ABPUSKOM]+v // ; - s/^#-[ABPUSKOM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-pashto-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Tf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*T[A-Z]*[vf] // ; - s/^#[A-Z]*T[A-Z]* // ; - s/^#-[ABPUSKOM]+[vf] // ; - s/^#-[ABPUSKOM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -###turk - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-turk-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@On // ; - s/^\@.+\n//m ; - s/^#[A-Z]*O[A-Z]*n // ; - s/^#[A-Z]*O[A-Z]* // ; - s/^#-[ABPUSKTM]+n // ; - s/^#-[ABPUSKTM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-turk-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Ov // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*O[A-Z]*v // ; - s/^#[A-Z]*O[A-Z]* // ; - s/^#-[ABPUSKTM]+v // ; - s/^#-[ABPUSKTM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-turk-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Of // ; - s/^\@.+\n//m ; - s/^#[A-Z]*O[A-Z]*[vf] // ; - s/^#[A-Z]*O[A-Z]* // ; - s/^#-[ABPUSKTM]+[vf] // ; - s/^#-[ABPUSKTM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###kashmiri - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-kashmiri-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Kn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*K[A-Z]*n // ; - s/^#[A-Z]*K[A-Z]* // ; - s/^#-[ABPUSOTM]+n // ; - s/^#-[ABPUSOTM]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-kashmiri-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Kv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*K[A-Z]*v // ; - s/^#[A-Z]*K[A-Z]* // ; - s/^#-[ABPUSOTM]+v // ; - s/^#-[ABPUSOTM]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-kashmiri-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Kf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*K[A-Z]*[vf] // ; - s/^#[A-Z]*K[A-Z]* // ; - s/^#-[ABPUSOTM]+[vf] // ; - s/^#-[ABPUSOTM]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -###malay - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-malay-novoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Mn // ; - s/^\@.+\n//m ; - s/^#[A-Z]*M[A-Z]*n // ; - s/^#[A-Z]*M[A-Z]* // ; - s/^#-[ABPUSKOT]+n // ; - s/^#-[ABPUSKOT]+ // ; - s/^#n // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-malay-voc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Mv // ; - s/^\@v // ; - s/^\@.+\n//m ; - s/^#[A-Z]*M[A-Z]*v // ; - s/^#[A-Z]*M[A-Z]* // ; - s/^#-[ABPUSKOT]+v // ; - s/^#-[ABPUSKOT]+ // ; - s/^#v // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - - -open MAPS, "<$master" ; -open OUTPUT, ">$output-fdf2noalif-malay-fullvoc.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - s/^\@Mf // ; - s/^\@.+\n//m ; - s/^#[A-Z]*M[A-Z]*[vf] // ; - s/^#[A-Z]*M[A-Z]* // ; - s/^#-[ABPUSKOT]+[vf] // ; - s/^#-[ABPUSKOT]+ // ; - s/^#[vf] // ; - s/^#.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -# Now Kurdish and Uighur... - -open MAPS, "<arabtex-kurdish.maps" ; -open OUTPUT, ">$output-fdf2noalif-kurdish.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<arabtex-uighur.maps" ; -open OUTPUT, ">$output-fdf2noalif-uighur.map"; -while (<MAPS>) { - s/^#0 // ; - s/^#1.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<arabtex-kurdish.maps" ; -open OUTPUT, ">$output-fdf2alif-kurdish.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -open MAPS, "<arabtex-uighur.maps" ; -open OUTPUT, ">$output-fdf2alif-uighur.map"; -while (<MAPS>) { - s/^#1 // ; - s/^#0.+\n//m ; - print OUTPUT -} -close OUTPUT; -close MAPS; - -# Let's compile them now -system("cp *.map mappings/"); -system("for map in mappings/*.map; do echo \"compiling \$map ...\" && teckit_compile \$map; done"); - - |