# nastaliq.mys # GNU Copyright 2002, Gaspar Sinai # # This is a Unicode map for nastaliq.ttf. # Unfortunatelly some glyphs are not Unicode encoded, this file # maps Nastaliq to Unicode. # # How to create a map: # mytool -convert my -write nastaliq.my -mys nastaliq.mys -rmys nastaliq.mys # # How to use the map: # When you specify nastaliq.ttf in the virtual font # you should add ':' and the map file name without the .my extension: # like this: # nastaliq.ttf:nastaliq,otherfonts... # # This map works with this nastaliq.ttf: # md5sum nastaliq.ttf # 25f564202072e46593b036bdf0f6a818 /home/gsinai/nastaliq.ttf # # Revision 1.3 # From: Gaspar Sinai 2002-10-18 # Checked with Urdu-Nastaliq.kmap and found the following missing # from nastaliq.ttf: # - U+0626 (or decomposed U+064A + U+0654) Urdu Yeh w/Hamza # - U+06C2 (or decomposed U+06C1 + U+0654) Urdu Hey Goal w/ Hamza # - U+0690 Urdu Daaal # - U+06C3 Urdu Teh Marbuta Goal # # Revision 1.2 # From: Gaspar Sinai 2002-10-17 # Based upon comments from Miikka # - 0643 ARABIC LETTER KAF 0x0643 -> U+06A9 # This fixes U+06A9 problem in Revision 1.1 # - 06C7 related stuff deleted (U+06C7 U+FBD7 U+FBD8) # - These 4 are converted to Urdu Kaf # 0xFED9 -> U+FB8E # 0xFEDA -> U+FB8F # 0xFEDB -> U+FB90 # 0xFEDC -> U+FB91 # - Made this map a mys map. # - Assigned the following shapes in bin/shape.pl: # 000006A9 0000200D 00000627 -> A0001002 00000000 00000000 A0004002 # 000006A9 0000200D 00000644 -> A0001003 A0002003 A0003003 A0004003 # - according to these private codes, added the following private map here: # A0001002 -> FC37 # A0004002 -> FC80 # A0001003 -> FC3B # A0002003 -> FCC7 # A0003003 -> FCEB # A0004003 -> FC81 # - still problem displaying U+0626 (in messages.po) # # Revision 1.1.1 # From: Gaspar Sinai 2002-10-13 # - Font does not have # U+0626 ARABIC LETTER YEH WITH HAMZA ABOVE # o decomposed U+064A U+0654 wont have U+064A # o U+FE89 is also missing (isolated form of U+0626) # o U+FE8A is also missing (final form of U+0626) # o U+FE8B is present (initial form of U+0626) # o U+FE8C is present (medial form of U+0626) # Revision 1.1 # From: Gaspar Sinai 2002-10-13 # - Added revision log # - Removed unnecessary stuff between 00C4..00F5 # - Uncommented Shan's comments and put a preceeeding line with '#???' # - Commented 200D and 200C (ZWNJ and ZWJ) as they are not needed. # - Updated the rightmost sample glyph # - All shapes are present (maybe ok?) but the original character # is still missing from messages.po sample: # # missing: U+06C1 ARABIC LETTER HEH GOAL # present: U+FBA6 U+FBA8 U+FBA9 U+FBA7 (iso ini medi fina) # # missing: U+0628 ARABIC LETTER BEH # presnet: U+FE8F U+FE91 U+FE92 U+FE90 (iso ini medi fina) # # - All shapes are missing for: # present: U+06A9 ARABIC LETTER KEHEH # missing: U+FB8E U+FB90 U+FB91 U+FB8F (iso ini medi fina) # # Revision 1.0 # From: S H A N 2002-10-13 # -Mapped Arabic-Indic digits to Eastern Arabic-Indic digits # - Remapped ARABIC LETTER HEH (0647) # to ARABIC LETTER HEH DOACHASHMEE (06BE) # - Commented out some glyphs # # About nastaliq.ttf # ================== # # Home of this font on the Web (http://www.arbornet.org/~tabish/u-font) # says, and I quote: "Urdu Nastaliq Unicode is a Windows True-Type Urdu # Font which uses Unicode Arabic coding." # # A few features that makes it distinct from the rest of the efforts: # # 1. Unicode implementation based on the following: # a. Unicode Arabic Range 0600-06FF, # b. Unicode Arabic Presentation Froms-A FB50-FDFF # c. Unicode Arabic Presentation Forms-B FE70-FEFF # 2. Inclusion of word "Ka" and "Kal" # # Distribution/CopyRights: # ------------------------ # # Urdu Nastaliq Unicode, True-Type Urdu font. # Copyright(R)2002 Shehzad Ali and Tabish # This font is free software; you can redistribute it and/or modify it # urder the terms of the GNU General Public License as published by # the Free Software Foundation # # The first column is Unicodee # The second column is Nastaliq Code # NAME=nastaliq.my COMM=Map Yudit id's to a nastaliq glyph. COMM=There are six additional private ligatures: COMM=A0001002 -> FC37 COMM=A0004002 -> FC80 COMM=A0001003 -> FC3B COMM=A0002003 -> FCC7 COMM=A0003003 -> FCEB COMM=A0004003 -> FC81 TYPE=0 SECTION=encode ENCODE=1 # KEY_WIDTH == 2 for 32 bit key KEY_WIDTH=2 VALUE_WIDTH=1 KEY_LENGTH=0 VALUE_LENGTH=0 00000020 -> 0020 # 00000021 -> 0021 # ! 00000022 -> 0022 # " 00000023 -> 0023 # # 00000024 -> 0024 # $ 00000025 -> 0025 # % 00000026 -> 0026 # & 00000027 -> 0027 # ' 00000028 -> 0028 # ( 00000029 -> 0029 # ) 0000002A -> 002A # * 0000002B -> 002B # + 0000002C -> 002C # , 0000002D -> 002D # - 0000002E -> 002E # . 0000002F -> 002F # / 00000030 -> 0030 # 0 00000031 -> 0031 # 1 00000032 -> 0032 # 2 00000033 -> 0033 # 3 00000034 -> 0034 # 4 00000035 -> 0035 # 5 00000036 -> 0036 # 6 00000037 -> 0037 # 7 00000038 -> 0038 # 8 00000039 -> 0039 # 9 0000003A -> 003A # : 0000003B -> 003B # ; 0000003C -> 003C # < 0000003D -> 003D # = 0000003E -> 003E # > 0000003F -> 003F # ? 00000040 -> 0040 # @ 00000041 -> 0041 # A 00000042 -> 0042 # B 00000043 -> 0043 # C 00000044 -> 0044 # D 00000045 -> 0045 # E 00000046 -> 0046 # F 00000047 -> 0047 # G 00000048 -> 0048 # H 00000049 -> 0049 # I 0000004A -> 004A # J 0000004B -> 004B # K 0000004C -> 004C # L 0000004D -> 004D # M 0000004E -> 004E # N 0000004F -> 004F # O 00000050 -> 0050 # P 00000051 -> 0051 # Q 00000052 -> 0052 # R 00000053 -> 0053 # S 00000054 -> 0054 # T 00000055 -> 0055 # U 00000056 -> 0056 # V 00000057 -> 0057 # W 00000058 -> 0058 # X 00000059 -> 0059 # Y 0000005A -> 005A # Z 0000005B -> 005B # [ 0000005C -> 005C # \ 0000005D -> 005D # ] 0000005E -> 005E # ^ 0000005F -> 005F # _ 00000060 -> 0060 # ` 00000061 -> 0061 # a 00000062 -> 0062 # b 00000063 -> 0063 # c 00000064 -> 0064 # d 00000065 -> 0065 # e 00000066 -> 0066 # f 00000067 -> 0067 # g 00000068 -> 0068 # h 00000069 -> 0069 # i 0000006A -> 006A # j 0000006B -> 006B # k 0000006C -> 006C # l 0000006D -> 006D # m 0000006E -> 006E # n 0000006F -> 006F # o 00000070 -> 0070 # p 00000071 -> 0071 # q 00000072 -> 0072 # r 00000073 -> 0073 # s 00000074 -> 0074 # t 00000075 -> 0075 # u 00000076 -> 0076 # v 00000077 -> 0077 # w 00000078 -> 0078 # x 00000079 -> 0079 # y 0000007A -> 007A # z 0000007B -> 007B # { 0000007C -> 007C # | 0000007D -> 007D # } 0000007E -> 007E # ~ 0000060C -> 060C # ، 0000061B -> 061B # ؛ 0000061F -> 061F # ؟ 00000621 -> 0621 # ء 00000622 -> 0622 # آ 00000627 -> 0627 # ا 00000628 -> 0628 # ب 0000062A -> 062A # ت 0000062B -> 062B # ث 0000062C -> 062C # ج 0000062D -> 062D # ح 0000062E -> 062E # خ 0000062F -> 062F # د 00000630 -> 0630 # ذ 00000631 -> 0631 # ر 00000632 -> 0632 # ز 00000633 -> 0633 # س 00000634 -> 0634 # ش 00000635 -> 0635 # ص 00000636 -> 0636 # ض 00000637 -> 0637 # ط 00000638 -> 0638 # ظ 00000639 -> 0639 # ع 0000063A -> 063A # غ 00000640 -> 0640 # ـ 00000641 -> 0641 # ف 00000642 -> 0642 # ق 000006A9 -> 0643 # ك 00000644 -> 0644 # ل 00000645 -> 0645 # م 00000646 -> 0646 # ن # #REMAP ARABIC LETTER HEH (0647) #TO ARABIC LETTER HEH DOACHASHMEE (06BE) #iso,ini,med,fin: FBAA FBAC FBAD FBAB # 000006BE -> 0647 # ھ 00000648 -> 0648 # و #??? 0649 ARABIC LETTER ALEF MAKSURA 00000649 -> 0649 # ى 0000064B -> 064B # ً 0000064E -> 064E # َ 0000064F -> 064F # ُ 00000650 -> 0650 # ِ 00000651 -> 0651 # ّ 00000654 -> 0654 # ٔ # # REMAP START # Arabic-Indic digits to Eastern Arabic-Indic digits # 000006F0 -> 0660 # ۰ 000006F1 -> 0661 # ۱ 000006F2 -> 0662 # ۲ 000006F3 -> 0663 # ۳ 000006F4 -> 0664 # ۴ 000006F5 -> 0665 # ۵ 000006F6 -> 0666 # ۶ 000006F7 -> 0667 # ۷ 000006F8 -> 0668 # ۸ 000006F9 -> 0669 # ۹ # #REMAP END # 0000066A -> 066A # ٪ 00000670 -> 0670 # ٰ 00000679 -> 0679 # ٹ 0000067E -> 067E # پ 00000686 -> 0686 # چ 00000688 -> 0688 # ڈ 00000691 -> 0691 # ڑ 00000698 -> 0698 # ژ 000006A9 -> 06A9 # ک 000006AF -> 06AF # گ 000006BA -> 06BA # ں # Since waw + ulta pesh isn't in Unicode yet # 0x06C7 0x06C7 # ۇ 000006C0 -> 06C0 # ۀ 000006CC -> 06CC # ی 000006D2 -> 06D2 # ے 000006D3 -> 06D3 # ۓ 000006D4 -> 06D4 # ۔ 000006D5 -> 06D5 # ە # # ZWJ and ZWNJ can be safely commented out # 0x200C 0x200C # 0x200D 0x200D # 0000FB56 -> FB56 # ﭖ 0000FB57 -> FB57 # ﭗ 0000FB58 -> FB58 # ﭘ 0000FB59 -> FB59 # ﭙ 0000FB66 -> FB66 # ﭦ 0000FB67 -> FB67 # ﭧ 0000FB68 -> FB68 # ﭨ 0000FB69 -> FB69 # ﭩ 0000FB7A -> FB7A # ﭺ 0000FB7B -> FB7B # ﭻ 0000FB7C -> FB7C # ﭼ 0000FB7D -> FB7D # ﭽ 0000FB88 -> FB88 # ﮈ 0000FB89 -> FB89 # ﮉ 0000FB8A -> FB8A # ﮊ 0000FB8B -> FB8B # ﮋ 0000FB8C -> FB8C # ﮌ 0000FB8D -> FB8D # ﮍ 0000FB92 -> FB92 # ﮒ 0000FB93 -> FB93 # ﮓ 0000FB94 -> FB94 # ﮔ 0000FB95 -> FB95 # ﮕ 0000FB9E -> FB9E # ﮞ 0000FB9F -> FB9F # ﮟ 0000FBA6 -> FBA6 # ﮦ 0000FBA7 -> FBA7 # ﮧ 0000FBA8 -> FBA8 # ﮨ 0000FBA9 -> FBA9 # ﮩ 0000FBAA -> FBAA # ﮪ 0000FBAB -> FBAB # ﮫ 0000FBAC -> FBAC # ﮬ 0000FBAD -> FBAD # ﮭ 0000FBAE -> FBAE # ﮮ 0000FBAF -> FBAF # ﮯ # # 0xFBD7 ARABIC LETTER U (06C7) ISOLATED FORM # 0xFBD8 ARABIC LETTER U (06C7) FINAL FORM # # Since waw + ulta pesh isn't in Unicode yet # 0xFBD7 0xFBD7 # ﯗ # 0xFBD8 0xFBD8 # ﯘ 0000FBFC -> FBFC # ﯼ 0000FBFD -> FBFD # ﯽ 0000FBFE -> FBFE # ﯾ 0000FBFF -> FBFF # ﯿ 0000FC5D -> FC5D # ﱝ 0000FC90 -> FC90 # ﲐ 0000FD3C -> FD3C # ﴼ 0000FD3D -> FD3D # ﴽ 0000FE70 -> FE70 # ﹰ 0000FE71 -> FE71 # ﹱ 0000FE76 -> FE76 # ﹶ 0000FE77 -> FE77 # ﹷ 0000FE78 -> FE78 # ﹸ 0000FE79 -> FE79 # ﹹ 0000FE7A -> FE7A # ﹺ 0000FE7B -> FE7B # ﹻ 0000FE7C -> FE7C # ﹼ 0000FE7D -> FE7D # ﹽ 0000FE80 -> FE80 # ﺀ 0000FE81 -> FE81 # ﺁ 0000FE82 -> FE82 # ﺂ 0000FE8B -> FE8B # ﺋ 0000FE8C -> FE8C # ﺌ 0000FE8D -> FE8D # ﺍ 0000FE8E -> FE8E # ﺎ 0000FE8F -> FE8F # ﺏ 0000FE90 -> FE90 # ﺐ 0000FE91 -> FE91 # ﺑ 0000FE92 -> FE92 # ﺒ 0000FE95 -> FE95 # ﺕ 0000FE96 -> FE96 # ﺖ 0000FE97 -> FE97 # ﺗ 0000FE98 -> FE98 # ﺘ 0000FE99 -> FE99 # ﺙ 0000FE9A -> FE9A # ﺚ 0000FE9B -> FE9B # ﺛ 0000FE9C -> FE9C # ﺜ 0000FE9D -> FE9D # ﺝ 0000FE9E -> FE9E # ﺞ 0000FE9F -> FE9F # ﺟ 0000FEA0 -> FEA0 # ﺠ 0000FEA1 -> FEA1 # ﺡ 0000FEA2 -> FEA2 # ﺢ 0000FEA3 -> FEA3 # ﺣ 0000FEA4 -> FEA4 # ﺤ 0000FEA5 -> FEA5 # ﺥ 0000FEA6 -> FEA6 # ﺦ 0000FEA7 -> FEA7 # ﺧ 0000FEA8 -> FEA8 # ﺨ 0000FEA9 -> FEA9 # ﺩ 0000FEAA -> FEAA # ﺪ 0000FEAB -> FEAB # ﺫ 0000FEAC -> FEAC # ﺬ 0000FEAD -> FEAD # ﺭ 0000FEAE -> FEAE # ﺮ 0000FEAF -> FEAF # ﺯ 0000FEB0 -> FEB0 # ﺰ 0000FEB1 -> FEB1 # ﺱ 0000FEB2 -> FEB2 # ﺲ 0000FEB3 -> FEB3 # ﺳ 0000FEB4 -> FEB4 # ﺴ 0000FEB5 -> FEB5 # ﺵ 0000FEB6 -> FEB6 # ﺶ 0000FEB7 -> FEB7 # ﺷ 0000FEB8 -> FEB8 # ﺸ 0000FEB9 -> FEB9 # ﺹ 0000FEBA -> FEBA # ﺺ 0000FEBB -> FEBB # ﺻ 0000FEBC -> FEBC # ﺼ 0000FEBD -> FEBD # ﺽ 0000FEBE -> FEBE # ﺾ 0000FEBF -> FEBF # ﺿ 0000FEC0 -> FEC0 # ﻀ 0000FEC1 -> FEC1 # ﻁ 0000FEC2 -> FEC2 # ﻂ 0000FEC3 -> FEC3 # ﻃ 0000FEC4 -> FEC4 # ﻄ 0000FEC5 -> FEC5 # ﻅ 0000FEC6 -> FEC6 # ﻆ 0000FEC7 -> FEC7 # ﻇ 0000FEC8 -> FEC8 # ﻈ 0000FEC9 -> FEC9 # ﻉ 0000FECA -> FECA # ﻊ 0000FECB -> FECB # ﻋ 0000FECC -> FECC # ﻌ 0000FECD -> FECD # ﻍ 0000FECE -> FECE # ﻎ 0000FECF -> FECF # ﻏ 0000FED0 -> FED0 # ﻐ 0000FED1 -> FED1 # ﻑ 0000FED2 -> FED2 # ﻒ 0000FED3 -> FED3 # ﻓ 0000FED4 -> FED4 # ﻔ 0000FED5 -> FED5 # ﻕ 0000FED6 -> FED6 # ﻖ 0000FED7 -> FED7 # ﻗ 0000FED8 -> FED8 # ﻘ # These 4 should be converted to Urdu kaf 0000FB8E -> FED9 # ﮎ 0000FB8F -> FEDA # ﮏ 0000FB90 -> FEDB # ﮐ 0000FB91 -> FEDC # ﮑ # 0000FEDD -> FEDD # ﻝ 0000FEDE -> FEDE # ﻞ 0000FEDF -> FEDF # ﻟ 0000FEE0 -> FEE0 # ﻠ 0000FEE1 -> FEE1 # ﻡ 0000FEE2 -> FEE2 # ﻢ 0000FEE3 -> FEE3 # ﻣ 0000FEE4 -> FEE4 # ﻤ 0000FEE5 -> FEE5 # ﻥ 0000FEE6 -> FEE6 # ﻦ 0000FEE7 -> FEE7 # ﻧ 0000FEE8 -> FEE8 # ﻨ 0000FEE9 -> FEE9 # ﻩ 0000FEEA -> FEEA # ﻪ 0000FEED -> FEED # ﻭ 0000FEEE -> FEEE # ﻮ 0000FEF3 -> FEF3 # ﻳ 0000FEF4 -> FEF4 # ﻴ 0000FEFB -> FEFB # ﻻ 0000FEFC -> FEFC # ﻼ # The followings are not defined in Unicode. We use our own Ligature code. # in sync with shape.mys A0001002 -> FC37 # isolated U+06A9 U+200D U+0627 A0004002 -> FC80 # final U+06A9 U+200D U+0627 A0001003 -> FC3B # isolated U+06A9 U+200D U+0643 A0002003 -> FCC7 # initial U+06A9 U+200D U+0643 A0003003 -> FCEB # medial U+06A9 U+200D U+0643 A0004003 -> FC81 # final U+06A9 U+200D U+0643 COMM=end nastaliq.mys