diff options
23 files changed, 784 insertions, 112 deletions
diff --git a/ChangeLog b/ChangeLog index ef46b97215..fd9601e5ec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,30 @@ 2000-11-01 Ulrich Drepper <drepper@redhat.com> + * iconvdata/TESTS: Add entries for IBM856, IBM930, IBM933, IBM935, + IBM937, IBM939, and IBM1046. + * iconvdata/testdata/IBM1046: New file. + * iconvdata/testdata/IBM930..UTF8: New file. + * iconvdata/testdata/IBM1046..UTF8: New file. + * iconvdata/testdata/IBM933: New file. + * iconvdata/testdata/IBM935: New file. + * iconvdata/testdata/IBM937: New file. + * iconvdata/testdata/IBM856..UTF8: New file. + * iconvdata/testdata/IBM939: New file. + * iconvdata/testdata/IBM933..UTF8: New file. + * iconvdata/testdata/IBM935..UTF8: New file. + * iconvdata/testdata/IBM930: New file. + * iconvdata/testdata/IBM856: New file. + * iconvdata/testdata/IBM937..UTF8: New file. + * iconvdata/testdata/IBM939..UTF8: New file. + Contributed by Masahide Washizawa <washi@yamato.ibm.co.jp>. + +2000-11-01 Martin Buchholz <martin@xemacs.org> + + * manual/memory.texi (Hooks for Malloc): Fix `caller' arg docs to + agree with implementation. + +2000-11-01 Ulrich Drepper <drepper@redhat.com> + * sysdeps/unix/sysv/linux/bits/time.h (CLK_TCK): Cast sysconf result to __clock_t. * sysdeps/unix/sysv/linux/alpha/bits/time.h: Likewise. diff --git a/iconvdata/TESTS b/iconvdata/TESTS index eb3776537a..cbdae2ea44 100644 --- a/iconvdata/TESTS +++ b/iconvdata/TESTS @@ -88,3 +88,10 @@ EUC-TW EUC-TW Y UTF8 GBK GBK Y UTF8 BIG5HKSCS BIG5HKSCS Y UTF8 UTF-7 UTF-7 N UTF8 +IBM856 IBM856 N UTF8 +IBM930 IBM930 N UTF8 +IBM933 IBM933 N UTF8 +IBM935 IBM935 N UTF8 +IBM937 IBM937 N UTF8 +IBM939 IBM939 N UTF8 +IBM1046 IBM1046 Y UTF8 diff --git a/iconvdata/run-iconv-test.sh b/iconvdata/run-iconv-test.sh index a000b68b14..532006cdcb 100755 --- a/iconvdata/run-iconv-test.sh +++ b/iconvdata/run-iconv-test.sh @@ -84,8 +84,8 @@ while read from to subset targets; do rm -f $temp1 $temp2 # Now test some bigger text, entirely in ASCII. If ASCII is no subset - # of the coded character set we test we convert the test to this - # coded character set. Otherwise we convert to all the TARGETS. + # of the coded character set we convert the text to this coded character + # set. Otherwise we convert to all the TARGETS. if test $subset = Y; then echo $ac_n " suntzu: $from -> $t -> $to $ac_c" $PROG -f $from -t $t testdata/suntzus | diff --git a/iconvdata/testdata/IBM1046 b/iconvdata/testdata/IBM1046 new file mode 100644 index 0000000000..0a43e9523a --- /dev/null +++ b/iconvdata/testdata/IBM1046 @@ -0,0 +1,14 @@ + ! " # $ % & ' ( ) * + , - . / 0 +1 2 3 4 5 6 7 8 9 : ; < = > ? @ A +B C D E F G H I J K L M N O P Q R +S T U V W X Y Z [ \ ] ^ _ ` a b c +d e f g h i j k l m n o p q r s t +u v w x y z { | } ~ + + + + + + + + diff --git a/iconvdata/testdata/IBM1046..UTF8 b/iconvdata/testdata/IBM1046..UTF8 new file mode 100644 index 0000000000..ed2679759b --- /dev/null +++ b/iconvdata/testdata/IBM1046..UTF8 @@ -0,0 +1,14 @@ + ! " # $ % & ' ( ) * + , - . / 0 +1 2 3 4 5 6 7 8 9 : ; < = > ? @ A +B C D E F G H I J K L M N O P Q R +S T U V W X Y Z [ \ ] ^ _ ` a b c +d e f g h i j k l m n o p q r s t +u v w x y z { | } ~ ﺈ × ÷ س ش ص +ض ﹱ ■ │ ─ ┐ ┌ └ ┘ ﹹ ﹻ ﹽ ﹿ ﹷ ﺊ ﻰ +ﻳ ﻲ ﻎ ﻏ ﻐ ﻶ ﻸ ﻺ ﻼ ﺂ ﺄ ﺈ ¤ ﺎ ﺋ ﺑ +ﺗ ﺛ ﺟ ﺣ ، ﺧ ﺳ ٠ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ +٩ ﺷ ؛ ﺻ ﺿ ﻊ ؟ ﻋ ء آ أ ؤ إ ئ ا ب ة +ت ث ج ح خ د ذ ر ز س ش ص ض ط ظ ع غ +ﻌ ﺂ ﺄ ﺎ ﻓ ـ ف ق ك ل م ن ه و ى ي ً +ٌ ٍ َ ُ ِ ّ ْ ﻗ ﻛ ﻟ ﻵ ﻷ ﻹ ﻻ ﻣ ﻧ +ﻬ ﻩ diff --git a/iconvdata/testdata/IBM856 b/iconvdata/testdata/IBM856 new file mode 100644 index 0000000000..83af6682f1 --- /dev/null +++ b/iconvdata/testdata/IBM856 @@ -0,0 +1,11 @@ + ! " # $ % & ' ( ) * + , - . / 0 +1 2 3 4 5 6 7 8 9 : ; < = > ? @ A +B C D E F G H I J K L M N O P Q R +S T U V W X Y Z [ \ ] ^ _ ` a b c +d e f g h i j k l m n o p q r s t +u v w x y z { | } ~ + + + + + diff --git a/iconvdata/testdata/IBM856..UTF8 b/iconvdata/testdata/IBM856..UTF8 new file mode 100644 index 0000000000..080fe1d679 --- /dev/null +++ b/iconvdata/testdata/IBM856..UTF8 @@ -0,0 +1,11 @@ + ! " # $ % & ' ( ) * + , - . / 0 +1 2 3 4 5 6 7 8 9 : ; < = > ? @ A +B C D E F G H I J K L M N O P Q R +S T U V W X Y Z [ \ ] ^ _ ` a b c +d e f g h i j k l m n o p q r s t +u v w x y z { | } ~ א ב ג ד ה ו +ז ח ט י ך כ ל ם מ ן נ ס ע ף פ ץ צ +ק ר ש ת £ × ® ¬ ½ ¼ « » ░ ▒ ▓ │ ┤ +© ╣ ║ ╗ ╝ ¢ ¥ ┐ └ ┴ ┬ ├ ─ ┼ ╚ ╔ ╩ +╦ ╠ ═ ╬ ¤ ┘ ┌ █ ▄ ¦ ▀ µ ‾ ´ ± ‗ +¾ ¶ § ÷ ¸ ° ¨ • ¹ ³ ² ■ diff --git a/iconvdata/testdata/IBM930 b/iconvdata/testdata/IBM930 new file mode 100644 index 0000000000..551cb60797 --- /dev/null +++ b/iconvdata/testdata/IBM930 Binary files differdiff --git a/iconvdata/testdata/IBM930..UTF8 b/iconvdata/testdata/IBM930..UTF8 new file mode 100644 index 0000000000..89df7f15ac --- /dev/null +++ b/iconvdata/testdata/IBM930..UTF8 Binary files differdiff --git a/iconvdata/testdata/IBM933 b/iconvdata/testdata/IBM933 new file mode 100644 index 0000000000..4da0d685bf --- /dev/null +++ b/iconvdata/testdata/IBM933 Binary files differdiff --git a/iconvdata/testdata/IBM933..UTF8 b/iconvdata/testdata/IBM933..UTF8 new file mode 100644 index 0000000000..025c6285e1 --- /dev/null +++ b/iconvdata/testdata/IBM933..UTF8 Binary files differdiff --git a/iconvdata/testdata/IBM935 b/iconvdata/testdata/IBM935 new file mode 100644 index 0000000000..4a905ee27e --- /dev/null +++ b/iconvdata/testdata/IBM935 Binary files differdiff --git a/iconvdata/testdata/IBM935..UTF8 b/iconvdata/testdata/IBM935..UTF8 new file mode 100644 index 0000000000..2fc263d52a --- /dev/null +++ b/iconvdata/testdata/IBM935..UTF8 Binary files differdiff --git a/iconvdata/testdata/IBM937 b/iconvdata/testdata/IBM937 new file mode 100644 index 0000000000..58bd2632c4 --- /dev/null +++ b/iconvdata/testdata/IBM937 Binary files differdiff --git a/iconvdata/testdata/IBM937..UTF8 b/iconvdata/testdata/IBM937..UTF8 new file mode 100644 index 0000000000..61282f129f --- /dev/null +++ b/iconvdata/testdata/IBM937..UTF8 Binary files differdiff --git a/iconvdata/testdata/IBM939 b/iconvdata/testdata/IBM939 new file mode 100644 index 0000000000..9c10f9e416 --- /dev/null +++ b/iconvdata/testdata/IBM939 Binary files differdiff --git a/iconvdata/testdata/IBM939..UTF8 b/iconvdata/testdata/IBM939..UTF8 new file mode 100644 index 0000000000..89df7f15ac --- /dev/null +++ b/iconvdata/testdata/IBM939..UTF8 Binary files differdiff --git a/intl/translit.po b/intl/translit.po index 0dc380f525..5df5d0d064 100644 --- a/intl/translit.po +++ b/intl/translit.po @@ -3,7 +3,7 @@ msgstr "" "Content-Type: text/plain; charset=ISO-8859-1\n" msgid "test" -msgstr "" +msgstr "" msgid "onemore" -msgstr "ssdf" +msgstr "*=" diff --git a/intl/tst-translit.c b/intl/tst-translit.c index f12d99bc96..8e4e6ca26d 100644 --- a/intl/tst-translit.c +++ b/intl/tst-translit.c @@ -39,11 +39,11 @@ main (void) puts (s); \ result |= strcmp (s, exp) != 0; - TEST ("test", "aeoeueAEUEOEss"); - TEST ("test", "aeoeueAEUEOEss"); - TEST ("onemore", "AEssdf"); - TEST ("onemore", "AEssdf"); - TEST ("test", "aeoeueAEUEOEss"); + TEST ("test", "<<(C) AEss>>"); + TEST ("test", "<<(C) AEss>>"); + TEST ("onemore", "1/2*1/2=1/4"); + TEST ("onemore", "1/2*1/2=1/4"); + TEST ("test", "<<(C) AEss>>"); return result; } diff --git a/locale/C-translit.h b/locale/C-translit.h index 2d42133b0e..09c0346636 100644 --- a/locale/C-translit.h +++ b/locale/C-translit.h @@ -1,21 +1,258 @@ -#define NTRANSLIT 20 +#define NTRANSLIT 425 static const uint32_t translit_from_idx[] = { 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, - 24, 26, 28, 30, 32, 34, 36, 38 + 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, + 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, + 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, + 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, + 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, + 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, + 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, + 192, 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, + 216, 218, 220, 222, 224, 226, 228, 230, 232, 234, 236, 238, + 240, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, + 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 286, + 288, 290, 292, 294, 296, 298, 300, 302, 304, 306, 308, 310, + 312, 314, 316, 318, 320, 322, 324, 326, 328, 330, 332, 334, + 336, 338, 340, 342, 344, 346, 348, 350, 352, 354, 356, 358, + 360, 362, 364, 366, 368, 370, 372, 374, 376, 378, 380, 382, + 384, 386, 388, 390, 392, 394, 396, 398, 400, 402, 404, 406, + 408, 410, 412, 414, 416, 418, 420, 422, 424, 426, 428, 430, + 432, 434, 436, 438, 440, 442, 444, 446, 448, 450, 452, 454, + 456, 458, 460, 462, 464, 466, 468, 470, 472, 474, 476, 478, + 480, 482, 484, 486, 488, 490, 492, 494, 496, 498, 500, 502, + 504, 506, 508, 510, 512, 514, 516, 518, 520, 522, 524, 526, + 528, 530, 532, 534, 536, 538, 540, 542, 544, 546, 548, 550, + 552, 554, 556, 558, 560, 562, 564, 566, 568, 570, 572, 574, + 576, 578, 580, 582, 584, 586, 588, 590, 592, 594, 596, 598, + 600, 602, 604, 606, 608, 610, 612, 614, 616, 618, 620, 622, + 624, 626, 628, 630, 632, 634, 636, 638, 640, 642, 644, 646, + 648, 650, 652, 654, 656, 658, 660, 662, 664, 666, 668, 670, + 672, 674, 676, 678, 680, 682, 684, 686, 688, 690, 692, 694, + 696, 698, 700, 702, 704, 706, 708, 710, 712, 714, 716, 718, + 720, 722, 724, 726, 728, 730, 732, 734, 736, 738, 740, 742, + 744, 746, 748, 750, 752, 754, 756, 758, 760, 762, 764, 766, + 768, 770, 772, 774, 776, 778, 780, 782, 784, 786, 788, 790, + 792, 794, 796, 798, 800, 802, 804, 806, 808, 810, 812, 814, + 816, 818, 820, 822, 824, 826, 828, 830, 832, 834, 836, 838, + 840, 842, 844, 846, 848 }; static const wchar_t translit_from_tbl[] = - L"\xa9" L"\0" L"\xab" L"\0" L"\xae" L"\0" L"\xbb" L"\0" L"\xbc" L"\0" - L"\xbd" L"\0" L"\xbe" L"\0" L"\xc4" L"\0" L"\xc5" L"\0" L"\xc6" L"\0" - L"\xd6" L"\0" L"\xdc" L"\0" L"\xdf" L"\0" L"\xe4" L"\0" L"\xe5" L"\0" - L"\xe6" L"\0" L"\xf6" L"\0" L"\xfc" L"\0" L"\x201c" L"\0" L"\x201d"; + L"\x00a0" L"\0" L"\x00a9" L"\0" L"\x00ab" L"\0" L"\x00ad" L"\0" L"\x00ae" + L"\0" L"\x00bb" L"\0" L"\x00bc" L"\0" L"\x00bd" L"\0" L"\x00be" L"\0" + L"\x00c6" L"\0" L"\x00df" L"\0" L"\x00e6" L"\0" L"\x0132" L"\0" L"\x0133" + L"\0" L"\x017f" L"\0" L"\x01c7" L"\0" L"\x01c8" L"\0" L"\x01c9" L"\0" + L"\x01ca" L"\0" L"\x01cb" L"\0" L"\x01cc" L"\0" L"\x01f1" L"\0" L"\x01f2" + L"\0" L"\x01f3" L"\0" L"\x02dc" L"\0" L"\x2002" L"\0" L"\x2003" L"\0" + L"\x2004" L"\0" L"\x2005" L"\0" L"\x2006" L"\0" L"\x2008" L"\0" L"\x2009" + L"\0" L"\x200a" L"\0" L"\x2010" L"\0" L"\x2011" L"\0" L"\x2012" L"\0" + L"\x2013" L"\0" L"\x2014" L"\0" L"\x2015" L"\0" L"\x2018" L"\0" L"\x2019" + L"\0" L"\x201a" L"\0" L"\x201b" L"\0" L"\x201c" L"\0" L"\x201d" L"\0" + L"\x201e" L"\0" L"\x201f" L"\0" L"\x2020" L"\0" L"\x2022" L"\0" L"\x2024" + L"\0" L"\x2025" L"\0" L"\x2026" L"\0" L"\x2039" L"\0" L"\x203a" L"\0" + L"\x203c" L"\0" L"\x2048" L"\0" L"\x2049" L"\0" L"\x20a8" L"\0" L"\x20ac" + L"\0" L"\x2100" L"\0" L"\x2101" L"\0" L"\x2102" L"\0" L"\x2105" L"\0" + L"\x2106" L"\0" L"\x210a" L"\0" L"\x210b" L"\0" L"\x210c" L"\0" L"\x210d" + L"\0" L"\x210e" L"\0" L"\x2110" L"\0" L"\x2111" L"\0" L"\x2112" L"\0" + L"\x2113" L"\0" L"\x2115" L"\0" L"\x2116" L"\0" L"\x2119" L"\0" L"\x211a" + L"\0" L"\x211b" L"\0" L"\x211c" L"\0" L"\x211d" L"\0" L"\x2121" L"\0" + L"\x2122" L"\0" L"\x2124" L"\0" L"\x2126" L"\0" L"\x2128" L"\0" L"\x212c" + L"\0" L"\x212d" L"\0" L"\x212f" L"\0" L"\x2130" L"\0" L"\x2131" L"\0" + L"\x2133" L"\0" L"\x2134" L"\0" L"\x2139" L"\0" L"\x2153" L"\0" L"\x2154" + L"\0" L"\x2155" L"\0" L"\x2156" L"\0" L"\x2157" L"\0" L"\x2158" L"\0" + L"\x2159" L"\0" L"\x215a" L"\0" L"\x215b" L"\0" L"\x215c" L"\0" L"\x215d" + L"\0" L"\x215e" L"\0" L"\x215f" L"\0" L"\x2160" L"\0" L"\x2161" L"\0" + L"\x2162" L"\0" L"\x2163" L"\0" L"\x2164" L"\0" L"\x2165" L"\0" L"\x2166" + L"\0" L"\x2167" L"\0" L"\x2168" L"\0" L"\x2169" L"\0" L"\x216a" L"\0" + L"\x216b" L"\0" L"\x216c" L"\0" L"\x216d" L"\0" L"\x216e" L"\0" L"\x216f" + L"\0" L"\x2170" L"\0" L"\x2171" L"\0" L"\x2172" L"\0" L"\x2173" L"\0" + L"\x2174" L"\0" L"\x2175" L"\0" L"\x2176" L"\0" L"\x2177" L"\0" L"\x2178" + L"\0" L"\x2179" L"\0" L"\x217a" L"\0" L"\x217b" L"\0" L"\x217c" L"\0" + L"\x217d" L"\0" L"\x217e" L"\0" L"\x217f" L"\0" L"\x2190" L"\0" L"\x2192" + L"\0" L"\x21d0" L"\0" L"\x21d2" L"\0" L"\x2212" L"\0" L"\x2215" L"\0" + L"\x2264" L"\0" L"\x2265" L"\0" L"\x226a" L"\0" L"\x226b" L"\0" L"\x2460" + L"\0" L"\x2461" L"\0" L"\x2462" L"\0" L"\x2463" L"\0" L"\x2464" L"\0" + L"\x2465" L"\0" L"\x2466" L"\0" L"\x2467" L"\0" L"\x2468" L"\0" L"\x2469" + L"\0" L"\x246a" L"\0" L"\x246b" L"\0" L"\x246c" L"\0" L"\x246d" L"\0" + L"\x246e" L"\0" L"\x246f" L"\0" L"\x2470" L"\0" L"\x2471" L"\0" L"\x2472" + L"\0" L"\x2473" L"\0" L"\x2474" L"\0" L"\x2475" L"\0" L"\x2476" L"\0" + L"\x2477" L"\0" L"\x2478" L"\0" L"\x2479" L"\0" L"\x247a" L"\0" L"\x247b" + L"\0" L"\x247c" L"\0" L"\x247d" L"\0" L"\x247e" L"\0" L"\x247f" L"\0" + L"\x2480" L"\0" L"\x2481" L"\0" L"\x2482" L"\0" L"\x2483" L"\0" L"\x2484" + L"\0" L"\x2485" L"\0" L"\x2486" L"\0" L"\x2487" L"\0" L"\x2488" L"\0" + L"\x2489" L"\0" L"\x248a" L"\0" L"\x248b" L"\0" L"\x248c" L"\0" L"\x248d" + L"\0" L"\x248e" L"\0" L"\x248f" L"\0" L"\x2490" L"\0" L"\x2491" L"\0" + L"\x2492" L"\0" L"\x2493" L"\0" L"\x2494" L"\0" L"\x2495" L"\0" L"\x2496" + L"\0" L"\x2497" L"\0" L"\x2498" L"\0" L"\x2499" L"\0" L"\x249a" L"\0" + L"\x249b" L"\0" L"\x249c" L"\0" L"\x249d" L"\0" L"\x249e" L"\0" L"\x249f" + L"\0" L"\x24a0" L"\0" L"\x24a1" L"\0" L"\x24a2" L"\0" L"\x24a3" L"\0" + L"\x24a4" L"\0" L"\x24a5" L"\0" L"\x24a6" L"\0" L"\x24a7" L"\0" L"\x24a8" + L"\0" L"\x24a9" L"\0" L"\x24aa" L"\0" L"\x24ab" L"\0" L"\x24ac" L"\0" + L"\x24ad" L"\0" L"\x24ae" L"\0" L"\x24af" L"\0" L"\x24b0" L"\0" L"\x24b1" + L"\0" L"\x24b2" L"\0" L"\x24b3" L"\0" L"\x24b4" L"\0" L"\x24b5" L"\0" + L"\x24b6" L"\0" L"\x24b7" L"\0" L"\x24b8" L"\0" L"\x24b9" L"\0" L"\x24ba" + L"\0" L"\x24bb" L"\0" L"\x24bc" L"\0" L"\x24bd" L"\0" L"\x24be" L"\0" + L"\x24bf" L"\0" L"\x24c0" L"\0" L"\x24c1" L"\0" L"\x24c2" L"\0" L"\x24c3" + L"\0" L"\x24c4" L"\0" L"\x24c5" L"\0" L"\x24c6" L"\0" L"\x24c7" L"\0" + L"\x24c8" L"\0" L"\x24c9" L"\0" L"\x24ca" L"\0" L"\x24cb" L"\0" L"\x24cc" + L"\0" L"\x24cd" L"\0" L"\x24ce" L"\0" L"\x24cf" L"\0" L"\x24d0" L"\0" + L"\x24d1" L"\0" L"\x24d2" L"\0" L"\x24d3" L"\0" L"\x24d4" L"\0" L"\x24d5" + L"\0" L"\x24d6" L"\0" L"\x24d7" L"\0" L"\x24d8" L"\0" L"\x24d9" L"\0" + L"\x24da" L"\0" L"\x24db" L"\0" L"\x24dc" L"\0" L"\x24dd" L"\0" L"\x24de" + L"\0" L"\x24df" L"\0" L"\x24e0" L"\0" L"\x24e1" L"\0" L"\x24e2" L"\0" + L"\x24e3" L"\0" L"\x24e4" L"\0" L"\x24e5" L"\0" L"\x24e6" L"\0" L"\x24e7" + L"\0" L"\x24e8" L"\0" L"\x24e9" L"\0" L"\x24ea" L"\0" L"\x2500" L"\0" + L"\x2502" L"\0" L"\x250c" L"\0" L"\x2510" L"\0" L"\x2514" L"\0" L"\x2518" + L"\0" L"\x251c" L"\0" L"\x2524" L"\0" L"\x252c" L"\0" L"\x2534" L"\0" + L"\x253c" L"\0" L"\x3000" L"\0" L"\xfb00" L"\0" L"\xfb01" L"\0" L"\xfb02" + L"\0" L"\xfb03" L"\0" L"\xfb04" L"\0" L"\xfb06" L"\0" L"\xfb29" L"\0" + L"\xfe4d" L"\0" L"\xfe4e" L"\0" L"\xfe4f" L"\0" L"\xfe50" L"\0" L"\xfe52" + L"\0" L"\xfe54" L"\0" L"\xfe55" L"\0" L"\xfe56" L"\0" L"\xfe57" L"\0" + L"\xfe59" L"\0" L"\xfe5a" L"\0" L"\xfe5b" L"\0" L"\xfe5c" L"\0" L"\xfe5f" + L"\0" L"\xfe60" L"\0" L"\xfe61" L"\0" L"\xfe62" L"\0" L"\xfe63" L"\0" + L"\xfe64" L"\0" L"\xfe65" L"\0" L"\xfe66" L"\0" L"\xfe68" L"\0" L"\xfe69" + L"\0" L"\xfe6a" L"\0" L"\xfe6b" L"\0" L"\xff01" L"\0" L"\xff02" L"\0" + L"\xff03" L"\0" L"\xff04" L"\0" L"\xff05" L"\0" L"\xff06" L"\0" L"\xff07" + L"\0" L"\xff08" L"\0" L"\xff09" L"\0" L"\xff0a" L"\0" L"\xff0b" L"\0" + L"\xff0c" L"\0" L"\xff0d" L"\0" L"\xff0e" L"\0" L"\xff0f" L"\0" L"\xff10" + L"\0" L"\xff11" L"\0" L"\xff12" L"\0" L"\xff13" L"\0" L"\xff14" L"\0" + L"\xff15" L"\0" L"\xff16" L"\0" L"\xff17" L"\0" L"\xff18" L"\0" L"\xff19" + L"\0" L"\xff1a" L"\0" L"\xff1b" L"\0" L"\xff1c" L"\0" L"\xff1d" L"\0" + L"\xff1e" L"\0" L"\xff1f" L"\0" L"\xff20" L"\0" L"\xff21" L"\0" L"\xff22" + L"\0" L"\xff23" L"\0" L"\xff24" L"\0" L"\xff25" L"\0" L"\xff26" L"\0" + L"\xff27" L"\0" L"\xff28" L"\0" L"\xff29" L"\0" L"\xff2a" L"\0" L"\xff2b" + L"\0" L"\xff2c" L"\0" L"\xff2d" L"\0" L"\xff2e" L"\0" L"\xff2f" L"\0" + L"\xff30" L"\0" L"\xff31" L"\0" L"\xff32" L"\0" L"\xff33" L"\0" L"\xff34" + L"\0" L"\xff35" L"\0" L"\xff36" L"\0" L"\xff37" L"\0" L"\xff38" L"\0" + L"\xff39" L"\0" L"\xff3a" L"\0" L"\xff3b" L"\0" L"\xff3c" L"\0" L"\xff3d" + L"\0" L"\xff3e" L"\0" L"\xff3f" L"\0" L"\xff40" L"\0" L"\xff41" L"\0" + L"\xff42" L"\0" L"\xff43" L"\0" L"\xff44" L"\0" L"\xff45" L"\0" L"\xff46" + L"\0" L"\xff47" L"\0" L"\xff48" L"\0" L"\xff49" L"\0" L"\xff4a" L"\0" + L"\xff4b" L"\0" L"\xff4c" L"\0" L"\xff4d" L"\0" L"\xff4e" L"\0" L"\xff4f" + L"\0" L"\xff50" L"\0" L"\xff51" L"\0" L"\xff52" L"\0" L"\xff53" L"\0" + L"\xff54" L"\0" L"\xff55" L"\0" L"\xff56" L"\0" L"\xff57" L"\0" L"\xff58" + L"\0" L"\xff59" L"\0" L"\xff5a" L"\0" L"\xff5b" L"\0" L"\xff5c" L"\0" + L"\xff5d" L"\0" L"\xff5e"; static const uint32_t translit_to_idx[] = { - 0, 5, 9, 14, 18, 23, 28, 33, 37, 41, 45, 49, - 53, 57, 61, 65, 69, 73, 77, 80 + 0, 3, 8, 12, 15, 20, 24, 29, 34, 39, 43, 47, + 51, 55, 59, 62, 66, 70, 74, 78, 82, 86, 90, 94, + 98, 101, 104, 107, 110, 113, 116, 119, 122, 125, 128, 131, + 134, 137, 140, 143, 146, 149, 152, 155, 158, 161, 165, 168, + 171, 174, 177, 181, 186, 189, 192, 196, 200, 204, 208, 213, + 218, 223, 226, 231, 236, 239, 242, 245, 248, 251, 254, 257, + 260, 263, 266, 270, 273, 276, 279, 282, 285, 290, 296, 299, + 304, 307, 310, 313, 316, 319, 322, 325, 328, 331, 336, 341, + 346, 351, 356, 361, 366, 371, 376, 381, 386, 391, 395, 398, + 402, 407, 411, 414, 418, 423, 429, 433, 436, 440, 445, 448, + 451, 454, 457, 460, 464, 469, 473, 476, 480, 485, 491, 495, + 498, 502, 507, 510, 513, 516, 519, 523, 527, 531, 535, 538, + 541, 545, 549, 553, 557, 562, 567, 572, 577, 582, 587, 592, + 597, 602, 608, 614, 620, 626, 632, 638, 644, 650, 656, 662, + 668, 673, 678, 683, 688, 693, 698, 703, 708, 713, 719, 725, + 731, 737, 743, 749, 755, 761, 767, 773, 779, 783, 787, 791, + 795, 799, 803, 807, 811, 815, 820, 825, 830, 835, 840, 845, + 850, 855, 860, 865, 870, 875, 880, 885, 890, 895, 900, 905, + 910, 915, 920, 925, 930, 935, 940, 945, 950, 955, 960, 965, + 970, 975, 980, 985, 990, 995, 1000, 1005, 1010, 1015, 1020, 1025, + 1030, 1035, 1040, 1045, 1050, 1055, 1060, 1065, 1070, 1075, 1080, 1085, + 1090, 1095, 1100, 1105, 1110, 1115, 1120, 1125, 1130, 1135, 1140, 1145, + 1150, 1155, 1160, 1165, 1170, 1175, 1180, 1185, 1190, 1195, 1200, 1205, + 1210, 1215, 1220, 1225, 1230, 1235, 1240, 1245, 1250, 1255, 1260, 1265, + 1268, 1271, 1274, 1277, 1280, 1283, 1286, 1289, 1292, 1295, 1298, 1301, + 1305, 1309, 1313, 1318, 1323, 1327, 1330, 1333, 1336, 1339, 1342, 1345, + 1348, 1351, 1354, 1357, 1360, 1363, 1366, 1369, 1372, 1375, 1378, 1381, + 1384, 1387, 1390, 1393, 1396, 1399, 1402, 1405, 1408, 1411, 1414, 1417, + 1420, 1423, 1426, 1429, 1432, 1435, 1438, 1441, 1444, 1447, 1450, 1453, + 1456, 1459, 1462, 1465, 1468, 1471, 1474, 1477, 1480, 1483, 1486, 1489, + 1492, 1495, 1498, 1501, 1504, 1507, 1510, 1513, 1516, 1519, 1522, 1525, + 1528, 1531, 1534, 1537, 1540, 1543, 1546, 1549, 1552, 1555, 1558, 1561, + 1564, 1567, 1570, 1573, 1576, 1579, 1582, 1585, 1588, 1591, 1594, 1597, + 1600, 1603, 1606, 1609, 1612, 1615, 1618, 1621, 1624, 1627, 1630, 1633, + 1636, 1639, 1642, 1645, 1648, 1651, 1654, 1657, 1660, 1663, 1666, 1669, + 1672, 1675, 1678, 1681, 1684 }; static const wchar_t translit_to_tbl[] = - L"(C)\0" L"\0" L"<<\0" L"\0" L"(R)\0" L"\0" L">>\0" L"\0" L"1/4\0" L"\0" - L"1/2\0" L"\0" L"3/4\0" L"\0" L"AE\0" L"\0" L"AA\0" L"\0" L"AE\0" L"\0" - L"OE\0" L"\0" L"UE\0" L"\0" L"ss\0" L"\0" L"ae\0" L"\0" L"aa\0" L"\0" - L"ae\0" L"\0" L"oe\0" L"\0" L"ue\0" L"\0" L"\"\0" L"\0" L"\"\0"; + L" \0" L"\0" L"(C)\0" L"\0" L"<<\0" L"\0" L"-\0" L"\0" L"(R)\0" L"\0" + L">>\0" L"\0" L"1/4\0" L"\0" L"1/2\0" L"\0" L"3/4\0" L"\0" L"AE\0" L"\0" + L"ss\0" L"\0" L"ae\0" L"\0" L"IJ\0" L"\0" L"ij\0" L"\0" L"s\0" L"\0" L"LJ\0" + L"\0" L"Lj\0" L"\0" L"lj\0" L"\0" L"NJ\0" L"\0" L"Nj\0" L"\0" L"nj\0" L"\0" + L"DZ\0" L"\0" L"Dz\0" L"\0" L"dz\0" L"\0" L"~\0" L"\0" L" \0" L"\0" L" \0" + L"\0" L" \0" L"\0" L" \0" L"\0" L" \0" L"\0" L" \0" L"\0" L" \0" L"\0" + L" \0" L"\0" L"-\0" L"\0" L"-\0" L"\0" L"-\0" L"\0" L"-\0" L"\0" L"-\0" + L"\0" L"-\0" L"\0" L"'\0" L"\0" L"'\0" L"\0" L",\0" L"\0" L"'\0" L"\0" + L"\"\0" L"\0" L"\"\0" L"\0" L",,\0" L"\0" L"\"\0" L"\0" L"+\0" L"\0" L"o\0" + L"\0" L".\0" L"\0" L"..\0" L"\0" L"...\0" L"\0" L"<\0" L"\0" L">\0" L"\0" + L"!!\0" L"\0" L"?!\0" L"\0" L"!?\0" L"\0" L"Rs\0" L"\0" L"EUR\0" L"\0" + L"a/c\0" L"\0" L"a/s\0" L"\0" L"C\0" L"\0" L"c/o\0" L"\0" L"c/u\0" L"\0" + L"g\0" L"\0" L"H\0" L"\0" L"H\0" L"\0" L"H\0" L"\0" L"h\0" L"\0" L"I\0" + L"\0" L"I\0" L"\0" L"L\0" L"\0" L"l\0" L"\0" L"N\0" L"\0" L"No\0" L"\0" + L"P\0" L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"R\0" L"\0" L"R\0" L"\0" L"TEL\0" + L"\0" L"(TM)\0" L"\0" L"Z\0" L"\0" L"Ohm\0" L"\0" L"Z\0" L"\0" L"B\0" L"\0" + L"C\0" L"\0" L"e\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"M\0" L"\0" L"o\0" + L"\0" L"i\0" L"\0" L"1/3\0" L"\0" L"2/3\0" L"\0" L"1/5\0" L"\0" L"2/5\0" + L"\0" L"3/5\0" L"\0" L"4/5\0" L"\0" L"1/6\0" L"\0" L"5/6\0" L"\0" L"1/8\0" + L"\0" L"3/8\0" L"\0" L"5/8\0" L"\0" L"7/8\0" L"\0" L"1/\0" L"\0" L"I\0" + L"\0" L"II\0" L"\0" L"III\0" L"\0" L"IV\0" L"\0" L"V\0" L"\0" L"VI\0" L"\0" + L"VII\0" L"\0" L"VIII\0" L"\0" L"IX\0" L"\0" L"X\0" L"\0" L"XI\0" L"\0" + L"XII\0" L"\0" L"L\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"M\0" L"\0" L"i\0" + L"\0" L"ii\0" L"\0" L"iii\0" L"\0" L"iv\0" L"\0" L"v\0" L"\0" L"vi\0" L"\0" + L"vii\0" L"\0" L"viii\0" L"\0" L"ix\0" L"\0" L"x\0" L"\0" L"xi\0" L"\0" + L"xii\0" L"\0" L"l\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"m\0" L"\0" L"<-\0" + L"\0" L"->\0" L"\0" L"<=\0" L"\0" L"=>\0" L"\0" L"-\0" L"\0" L"/\0" L"\0" + L"<=\0" L"\0" L">=\0" L"\0" L"<<\0" L"\0" L">>\0" L"\0" L"(1)\0" L"\0" + L"(2)\0" L"\0" L"(3)\0" L"\0" L"(4)\0" L"\0" L"(5)\0" L"\0" L"(6)\0" L"\0" + L"(7)\0" L"\0" L"(8)\0" L"\0" L"(9)\0" L"\0" L"(10)\0" L"\0" L"(11)\0" L"\0" + L"(12)\0" L"\0" L"(13)\0" L"\0" L"(14)\0" L"\0" L"(15)\0" L"\0" L"(16)\0" + L"\0" L"(17)\0" L"\0" L"(18)\0" L"\0" L"(19)\0" L"\0" L"(20)\0" L"\0" + L"(1)\0" L"\0" L"(2)\0" L"\0" L"(3)\0" L"\0" L"(4)\0" L"\0" L"(5)\0" L"\0" + L"(6)\0" L"\0" L"(7)\0" L"\0" L"(8)\0" L"\0" L"(9)\0" L"\0" L"(10)\0" L"\0" + L"(11)\0" L"\0" L"(12)\0" L"\0" L"(13)\0" L"\0" L"(14)\0" L"\0" L"(15)\0" + L"\0" L"(16)\0" L"\0" L"(17)\0" L"\0" L"(18)\0" L"\0" L"(19)\0" L"\0" + L"(20)\0" L"\0" L"1.\0" L"\0" L"2.\0" L"\0" L"3.\0" L"\0" L"4.\0" L"\0" + L"5.\0" L"\0" L"6.\0" L"\0" L"7.\0" L"\0" L"8.\0" L"\0" L"9.\0" L"\0" + L"10.\0" L"\0" L"11.\0" L"\0" L"12.\0" L"\0" L"13.\0" L"\0" L"14.\0" L"\0" + L"15.\0" L"\0" L"16.\0" L"\0" L"17.\0" L"\0" L"18.\0" L"\0" L"19.\0" L"\0" + L"20.\0" L"\0" L"(a)\0" L"\0" L"(b)\0" L"\0" L"(c)\0" L"\0" L"(d)\0" L"\0" + L"(e)\0" L"\0" L"(f)\0" L"\0" L"(g)\0" L"\0" L"(h)\0" L"\0" L"(i)\0" L"\0" + L"(j)\0" L"\0" L"(k)\0" L"\0" L"(l)\0" L"\0" L"(m)\0" L"\0" L"(n)\0" L"\0" + L"(o)\0" L"\0" L"(p)\0" L"\0" L"(q)\0" L"\0" L"(r)\0" L"\0" L"(s)\0" L"\0" + L"(t)\0" L"\0" L"(u)\0" L"\0" L"(v)\0" L"\0" L"(w)\0" L"\0" L"(x)\0" L"\0" + L"(y)\0" L"\0" L"(z)\0" L"\0" L"(A)\0" L"\0" L"(B)\0" L"\0" L"(C)\0" L"\0" + L"(D)\0" L"\0" L"(E)\0" L"\0" L"(F)\0" L"\0" L"(G)\0" L"\0" L"(H)\0" L"\0" + L"(I)\0" L"\0" L"(J)\0" L"\0" L"(K)\0" L"\0" L"(L)\0" L"\0" L"(M)\0" L"\0" + L"(N)\0" L"\0" L"(O)\0" L"\0" L"(P)\0" L"\0" L"(Q)\0" L"\0" L"(R)\0" L"\0" + L"(S)\0" L"\0" L"(T)\0" L"\0" L"(U)\0" L"\0" L"(V)\0" L"\0" L"(W)\0" L"\0" + L"(X)\0" L"\0" L"(Y)\0" L"\0" L"(Z)\0" L"\0" L"(a)\0" L"\0" L"(b)\0" L"\0" + L"(c)\0" L"\0" L"(d)\0" L"\0" L"(e)\0" L"\0" L"(f)\0" L"\0" L"(g)\0" L"\0" + L"(h)\0" L"\0" L"(i)\0" L"\0" L"(j)\0" L"\0" L"(k)\0" L"\0" L"(l)\0" L"\0" + L"(m)\0" L"\0" L"(n)\0" L"\0" L"(o)\0" L"\0" L"(p)\0" L"\0" L"(q)\0" L"\0" + L"(r)\0" L"\0" L"(s)\0" L"\0" L"(t)\0" L"\0" L"(u)\0" L"\0" L"(v)\0" L"\0" + L"(w)\0" L"\0" L"(x)\0" L"\0" L"(y)\0" L"\0" L"(z)\0" L"\0" L"(0)\0" L"\0" + L"-\0" L"\0" L"|\0" L"\0" L"+\0" L"\0" L"+\0" L"\0" L"+\0" L"\0" L"+\0" + L"\0" L"+\0" L"\0" L"+\0" L"\0" L"+\0" L"\0" L"+\0" L"\0" L"+\0" L"\0" + L" \0" L"\0" L"ff\0" L"\0" L"fi\0" L"\0" L"fl\0" L"\0" L"ffi\0" L"\0" + L"ffl\0" L"\0" L"st\0" L"\0" L"+\0" L"\0" L"_\0" L"\0" L"_\0" L"\0" L"_\0" + L"\0" L",\0" L"\0" L".\0" L"\0" L";\0" L"\0" L":\0" L"\0" L"?\0" L"\0" + L"!\0" L"\0" L"(\0" L"\0" L")\0" L"\0" L"{\0" L"\0" L"}\0" L"\0" L"#\0" + L"\0" L"&\0" L"\0" L"*\0" L"\0" L"+\0" L"\0" L"-\0" L"\0" L"<\0" L"\0" + L">\0" L"\0" L"=\0" L"\0" L"\\\0" L"\0" L"$\0" L"\0" L"%\0" L"\0" L"@\0" + L"\0" L"!\0" L"\0" L"\"\0" L"\0" L"#\0" L"\0" L"$\0" L"\0" L"%\0" L"\0" + L"&\0" L"\0" L"'\0" L"\0" L"(\0" L"\0" L")\0" L"\0" L"*\0" L"\0" L"+\0" + L"\0" L",\0" L"\0" L"-\0" L"\0" L".\0" L"\0" L"/\0" L"\0" L"0\0" L"\0" + L"1\0" L"\0" L"2\0" L"\0" L"3\0" L"\0" L"4\0" L"\0" L"5\0" L"\0" L"6\0" + L"\0" L"7\0" L"\0" L"8\0" L"\0" L"9\0" L"\0" L":\0" L"\0" L";\0" L"\0" + L"<\0" L"\0" L"=\0" L"\0" L">\0" L"\0" L"?\0" L"\0" L"@\0" L"\0" L"A\0" + L"\0" L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" + L"G\0" L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" + L"\0" L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" + L"R\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" + L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"[\0" L"\0" L"\\\0" L"\0" + L"]\0" L"\0" L"^\0" L"\0" L"_\0" L"\0" L"`\0" L"\0" L"a\0" L"\0" L"b\0" + L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" + L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0" L"m\0" + L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0" + L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0" + L"\0" L"y\0" L"\0" L"z\0" L"\0" L"{\0" L"\0" L"|\0" L"\0" L"}\0" L"\0" + L"~\0"; diff --git a/locale/C-translit.h.in b/locale/C-translit.h.in index 4734789ecb..93abad4415 100644 --- a/locale/C-translit.h.in +++ b/locale/C-translit.h.in @@ -20,78 +20,428 @@ /* The entries here have to be sorted relative to the input string. */ -/* <U00A9> COPYRIGHT SIGN. */ -"\xa9" "(C)" - -/* <U00AB> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK. */ -"\xab" "<<" - -/* <U00AE> REGISTERED SIGN. */ -"\xae" "(R)" - -/* <U00BB> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK. */ -"\xbb" ">>" - -/* <U00BC> VULGAR FRACTION ONE QUARTER. */ -"\xbc" "1/4" - -/* <U00BD> VULGAR FRACTION ONE HALF. */ -"\xbd" "1/2" - -/* <U00BE> VULGAR FRACTION THREE QUARTERS. */ -"\xbe" "3/4" - -/* <U00C4> LATIN CAPITAL LETTER A WITH DIAERESIS. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xc4" "AE" - -/* <U00C5> LATIN CAPITAL LETTER A WITH RING ABOVE. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xc5" "AA" - -/* <U00C6> LATIN CAPITAL LETTER AE. */ -"\xc6" "AE" - -/* <U00D6> LATIN CAPITAL LETTER O WITH DIAERESIS. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xd6" "OE" - -/* <U00DC> LATIN CAPITAL LETTER U WITH DIAERESIS. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xdc" "UE" - -/* <U00DF> LATIN SMALL LETTER SHARP S. */ -"\xdf" "ss" - -/* <U00E4> LATIN SMALL LETTER A WITH DIAERESIS. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xe4" "ae" - -/* <U00E5> LATIN SMALL LETTER A WITH RING ABOVE. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xe5" "aa" - -/* <U00E6> LATIN SMALL LETTER AE. */ -"\xe6" "ae" - -/* <U00F6> LATIN SMALL LETTER O WITH DIAERESIS. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xf6" "oe" - -/* <U00FC> LATIN SMALL LETTER U WITH DIAERESIS. */ -/* XXX It is not clear whether this is the best transliteration for - all locales. If not, we probably have to take it out completely. */ -"\xfc" "ue" - -/* <U201C> LEFT DOUBLE QUOTATION MARK. */ -"\x201c" "\"" - -/* <U201D> RIGHT DOUBLE QUOTATION MARK. */ -"\x201d" "\"" +"\x00a0" " " /* <U00A0> NO-BREAK SPACE */ +"\x00a9" "(C)" /* <U00A9> COPYRIGHT SIGN */ +"\x00ab" "<<" /* <U00AB> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ +"\x00ad" "-" /* <U00AD> SOFT HYPHEN */ +"\x00ae" "(R)" /* <U00AE> REGISTERED SIGN */ +"\x00bb" ">>" /* <U00BB> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ +"\x00bc" "1/4" /* <U00BC> VULGAR FRACTION ONE QUARTER */ +"\x00bd" "1/2" /* <U00BD> VULGAR FRACTION ONE HALF */ +"\x00be" "3/4" /* <U00BE> VULGAR FRACTION THREE QUARTERS */ +"\x00c6" "AE" /* <U00C6> LATIN CAPITAL LETTER AE */ +"\x00df" "ss" /* <U00DF> LATIN SMALL LETTER SHARP S */ +"\x00e6" "ae" /* <U00E6> LATIN SMALL LETTER AE */ +"\x0132" "IJ" /* <U0132> LATIN CAPITAL LIGATURE IJ */ +"\x0133" "ij" /* <U0133> LATIN SMALL LIGATURE IJ */ +"\x017f" "s" /* <U017F> LATIN SMALL LETTER LONG S */ +"\x01c7" "LJ" /* <U01C7> LATIN CAPITAL LETTER LJ */ +"\x01c8" "Lj" /* <U01C8> LATIN CAPITAL LETTER L WITH SMALL LETTER J */ +"\x01c9" "lj" /* <U01C9> LATIN SMALL LETTER LJ */ +"\x01ca" "NJ" /* <U01CA> LATIN CAPITAL LETTER NJ */ +"\x01cb" "Nj" /* <U01CB> LATIN CAPITAL LETTER N WITH SMALL LETTER J */ +"\x01cc" "nj" /* <U01CC> LATIN SMALL LETTER NJ */ +"\x01f1" "DZ" /* <U01F1> LATIN CAPITAL LETTER DZ */ +"\x01f2" "Dz" /* <U01F2> LATIN CAPITAL LETTER D WITH SMALL LETTER Z */ +"\x01f3" "dz" /* <U01F3> LATIN SMALL LETTER DZ */ +"\x02dc" "~" /* <U02DC> SMALL TILDE */ +"\x2002" " " /* <U2002> EN SPACE */ +"\x2003" " " /* <U2003> EM SPACE */ +"\x2004" " " /* <U2004> THREE-PER-EM SPACE */ +"\x2005" " " /* <U2005> FOUR-PER-EM SPACE */ +"\x2006" " " /* <U2006> SIX-PER-EM SPACE */ +"\x2008" " " /* <U2008> PUNCTUATION SPACE */ +"\x2009" " " /* <U2009> THIN SPACE */ +"\x200a" " " /* <U200A> HAIR SPACE */ +"\x2010" "-" /* <U2010> HYPHEN */ +"\x2011" "-" /* <U2011> NON-BREAKING HYPHEN */ +"\x2012" "-" /* <U2012> FIGURE DASH */ +"\x2013" "-" /* <U2013> EN DASH */ +"\x2014" "-" /* <U2014> EM DASH */ +"\x2015" "-" /* <U2015> HORIZONTAL BAR */ +"\x2018" "'" /* <U2018> LEFT SINGLE QUOTATION MARK */ +"\x2019" "'" /* <U2019> RIGHT SINGLE QUOTATION MARK */ +"\x201a" "," /* <U201A> SINGLE LOW-9 QUOTATION MARK */ +"\x201b" "'" /* <U201B> SINGLE HIGH-REVERSED-9 QUOTATION MARK */ +"\x201c" "\"" /* <U201C> LEFT DOUBLE QUOTATION MARK */ +"\x201d" "\"" /* <U201D> RIGHT DOUBLE QUOTATION MARK */ +"\x201e" ",," /* <U201E> DOUBLE LOW-9 QUOTATION MARK */ +"\x201f" "\"" /* <U201F> DOUBLE HIGH-REVERSED-9 QUOTATION MARK */ +"\x2020" "+" /* <U2020> DAGGER */ +"\x2022" "o" /* <U2022> BULLET */ +"\x2024" "." /* <U2024> ONE DOT LEADER */ +"\x2025" ".." /* <U2025> TWO DOT LEADER */ +"\x2026" "..." /* <U2026> HORIZONTAL ELLIPSIS */ +"\x2039" "<" /* <U2039> SINGLE LEFT-POINTING ANGLE QUOTATION MARK */ +"\x203a" ">" /* <U203A> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK */ +"\x203c" "!!" /* <U203C> DOUBLE EXCLAMATION MARK */ +"\x2048" "?!" /* <U2048> QUESTION EXCLAMATION MARK */ +"\x2049" "!?" /* <U2049> EXCLAMATION QUESTION MARK */ +"\x20a8" "Rs" /* <U20A8> RUPEE SIGN */ +"\x20ac" "EUR" /* <U20AC> EURO SIGN */ +"\x2100" "a/c" /* <U2100> ACCOUNT OF */ +"\x2101" "a/s" /* <U2101> ADDRESSED TO THE SUBJECT */ +"\x2102" "C" /* <U2102> DOUBLE-STRUCK CAPITAL C */ +"\x2105" "c/o" /* <U2105> CARE OF */ +"\x2106" "c/u" /* <U2106> CADA UNA */ +"\x210a" "g" /* <U210A> SCRIPT SMALL G */ +"\x210b" "H" /* <U210B> SCRIPT CAPITAL H */ +"\x210c" "H" /* <U210C> BLACK-LETTER CAPITAL H */ +"\x210d" "H" /* <U210D> DOUBLE-STRUCK CAPITAL H */ +"\x210e" "h" /* <U210E> PLANCK CONSTANT */ +"\x2110" "I" /* <U2110> SCRIPT CAPITAL I */ +"\x2111" "I" /* <U2111> BLACK-LETTER CAPITAL I */ +"\x2112" "L" /* <U2112> SCRIPT CAPITAL L */ +"\x2113" "l" /* <U2113> SCRIPT SMALL L */ +"\x2115" "N" /* <U2115> DOUBLE-STRUCK CAPITAL N */ +"\x2116" "No" /* <U2116> NUMERO SIGN */ +"\x2119" "P" /* <U2119> DOUBLE-STRUCK CAPITAL P */ +"\x211a" "Q" /* <U211A> DOUBLE-STRUCK CAPITAL Q */ +"\x211b" "R" /* <U211B> SCRIPT CAPITAL R */ +"\x211c" "R" /* <U211C> BLACK-LETTER CAPITAL R */ +"\x211d" "R" /* <U211D> DOUBLE-STRUCK CAPITAL R */ +"\x2121" "TEL" /* <U2121> TELEPHONE SIGN */ +"\x2122" "(TM)" /* <U2122> TRADE MARK SIGN */ +"\x2124" "Z" /* <U2124> DOUBLE-STRUCK CAPITAL Z */ +"\x2126" "Ohm" /* <U2126> OHM SIGN */ +"\x2128" "Z" /* <U2128> BLACK-LETTER CAPITAL Z */ +"\x212c" "B" /* <U212C> SCRIPT CAPITAL B */ +"\x212d" "C" /* <U212D> BLACK-LETTER CAPITAL C */ +"\x212f" "e" /* <U212F> SCRIPT SMALL E */ +"\x2130" "E" /* <U2130> SCRIPT CAPITAL E */ +"\x2131" "F" /* <U2131> SCRIPT CAPITAL F */ +"\x2133" "M" /* <U2133> SCRIPT CAPITAL M */ +"\x2134" "o" /* <U2134> SCRIPT SMALL O */ +"\x2139" "i" /* <U2139> INFORMATION SOURCE */ +"\x2153" "1/3" /* <U2153> VULGAR FRACTION ONE THIRD */ +"\x2154" "2/3" /* <U2154> VULGAR FRACTION TWO THIRDS */ +"\x2155" "1/5" /* <U2155> VULGAR FRACTION ONE FIFTH */ +"\x2156" "2/5" /* <U2156> VULGAR FRACTION TWO FIFTHS */ +"\x2157" "3/5" /* <U2157> VULGAR FRACTION THREE FIFTHS */ +"\x2158" "4/5" /* <U2158> VULGAR FRACTION FOUR FIFTHS */ +"\x2159" "1/6" /* <U2159> VULGAR FRACTION ONE SIXTH */ +"\x215a" "5/6" /* <U215A> VULGAR FRACTION FIVE SIXTHS */ +"\x215b" "1/8" /* <U215B> VULGAR FRACTION ONE EIGHTH */ +"\x215c" "3/8" /* <U215C> VULGAR FRACTION THREE EIGHTHS */ +"\x215d" "5/8" /* <U215D> VULGAR FRACTION FIVE EIGHTHS */ +"\x215e" "7/8" /* <U215E> VULGAR FRACTION SEVEN EIGHTHS */ +"\x215f" "1/" /* <U215F> FRACTION NUMERATOR ONE */ +"\x2160" "I" /* <U2160> ROMAN NUMERAL ONE */ +"\x2161" "II" /* <U2161> ROMAN NUMERAL TWO */ +"\x2162" "III" /* <U2162> ROMAN NUMERAL THREE */ +"\x2163" "IV" /* <U2163> ROMAN NUMERAL FOUR */ +"\x2164" "V" /* <U2164> ROMAN NUMERAL FIVE */ +"\x2165" "VI" /* <U2165> ROMAN NUMERAL SIX */ +"\x2166" "VII" /* <U2166> ROMAN NUMERAL SEVEN */ +"\x2167" "VIII" /* <U2167> ROMAN NUMERAL EIGHT */ +"\x2168" "IX" /* <U2168> ROMAN NUMERAL NINE */ +"\x2169" "X" /* <U2169> ROMAN NUMERAL TEN */ +"\x216a" "XI" /* <U216A> ROMAN NUMERAL ELEVEN */ +"\x216b" "XII" /* <U216B> ROMAN NUMERAL TWELVE */ +"\x216c" "L" /* <U216C> ROMAN NUMERAL FIFTY */ +"\x216d" "C" /* <U216D> ROMAN NUMERAL ONE HUNDRED */ +"\x216e" "D" /* <U216E> ROMAN NUMERAL FIVE HUNDRED */ +"\x216f" "M" /* <U216F> ROMAN NUMERAL ONE THOUSAND */ +"\x2170" "i" /* <U2170> SMALL ROMAN NUMERAL ONE */ +"\x2171" "ii" /* <U2171> SMALL ROMAN NUMERAL TWO */ +"\x2172" "iii" /* <U2172> SMALL ROMAN NUMERAL THREE */ +"\x2173" "iv" /* <U2173> SMALL ROMAN NUMERAL FOUR */ +"\x2174" "v" /* <U2174> SMALL ROMAN NUMERAL FIVE */ +"\x2175" "vi" /* <U2175> SMALL ROMAN NUMERAL SIX */ +"\x2176" "vii" /* <U2176> SMALL ROMAN NUMERAL SEVEN */ +"\x2177" "viii" /* <U2177> SMALL ROMAN NUMERAL EIGHT */ +"\x2178" "ix" /* <U2178> SMALL ROMAN NUMERAL NINE */ +"\x2179" "x" /* <U2179> SMALL ROMAN NUMERAL TEN */ +"\x217a" "xi" /* <U217A> SMALL ROMAN NUMERAL ELEVEN */ +"\x217b" "xii" /* <U217B> SMALL ROMAN NUMERAL TWELVE */ +"\x217c" "l" /* <U217C> SMALL ROMAN NUMERAL FIFTY */ +"\x217d" "c" /* <U217D> SMALL ROMAN NUMERAL ONE HUNDRED */ +"\x217e" "d" /* <U217E> SMALL ROMAN NUMERAL FIVE HUNDRED */ +"\x217f" "m" /* <U217F> SMALL ROMAN NUMERAL ONE THOUSAND */ +"\x2190" "<-" /* <U2190> LEFTWARDS ARROW */ +"\x2192" "->" /* <U2192> RIGHTWARDS ARROW */ +"\x21d0" "<=" /* <U21D0> LEFTWARDS DOUBLE ARROW */ +"\x21d2" "=>" /* <U21D2> RIGHTWARDS DOUBLE ARROW */ +"\x2212" "-" /* <U2212> MINUS SIGN */ +"\x2215" "/" /* <U2215> DIVISION SLASH */ +"\x2264" "<=" /* <U2264> LESS-THAN OR EQUAL TO */ +"\x2265" ">=" /* <U2265> GREATER-THAN OR EQUAL TO */ +"\x226a" "<<" /* <U226A> MUCH LESS-THAN */ +"\x226b" ">>" /* <U226B> MUCH GREATER-THAN */ +"\x2460" "(1)" /* <U2460> CIRCLED DIGIT ONE */ +"\x2461" "(2)" /* <U2461> CIRCLED DIGIT TWO */ +"\x2462" "(3)" /* <U2462> CIRCLED DIGIT THREE */ +"\x2463" "(4)" /* <U2463> CIRCLED DIGIT FOUR */ +"\x2464" "(5)" /* <U2464> CIRCLED DIGIT FIVE */ +"\x2465" "(6)" /* <U2465> CIRCLED DIGIT SIX */ +"\x2466" "(7)" /* <U2466> CIRCLED DIGIT SEVEN */ +"\x2467" "(8)" /* <U2467> CIRCLED DIGIT EIGHT */ +"\x2468" "(9)" /* <U2468> CIRCLED DIGIT NINE */ +"\x2469" "(10)" /* <U2469> CIRCLED NUMBER TEN */ +"\x246a" "(11)" /* <U246A> CIRCLED NUMBER ELEVEN */ +"\x246b" "(12)" /* <U246B> CIRCLED NUMBER TWELVE */ +"\x246c" "(13)" /* <U246C> CIRCLED NUMBER THIRTEEN */ +"\x246d" "(14)" /* <U246D> CIRCLED NUMBER FOURTEEN */ +"\x246e" "(15)" /* <U246E> CIRCLED NUMBER FIFTEEN */ +"\x246f" "(16)" /* <U246F> CIRCLED NUMBER SIXTEEN */ +"\x2470" "(17)" /* <U2470> CIRCLED NUMBER SEVENTEEN */ +"\x2471" "(18)" /* <U2471> CIRCLED NUMBER EIGHTEEN */ +"\x2472" "(19)" /* <U2472> CIRCLED NUMBER NINETEEN */ +"\x2473" "(20)" /* <U2473> CIRCLED NUMBER TWENTY */ +"\x2474" "(1)" /* <U2474> PARENTHESIZED DIGIT ONE */ +"\x2475" "(2)" /* <U2475> PARENTHESIZED DIGIT TWO */ +"\x2476" "(3)" /* <U2476> PARENTHESIZED DIGIT THREE */ +"\x2477" "(4)" /* <U2477> PARENTHESIZED DIGIT FOUR */ +"\x2478" "(5)" /* <U2478> PARENTHESIZED DIGIT FIVE */ +"\x2479" "(6)" /* <U2479> PARENTHESIZED DIGIT SIX */ +"\x247a" "(7)" /* <U247A> PARENTHESIZED DIGIT SEVEN */ +"\x247b" "(8)" /* <U247B> PARENTHESIZED DIGIT EIGHT */ +"\x247c" "(9)" /* <U247C> PARENTHESIZED DIGIT NINE */ +"\x247d" "(10)" /* <U247D> PARENTHESIZED NUMBER TEN */ +"\x247e" "(11)" /* <U247E> PARENTHESIZED NUMBER ELEVEN */ +"\x247f" "(12)" /* <U247F> PARENTHESIZED NUMBER TWELVE */ +"\x2480" "(13)" /* <U2480> PARENTHESIZED NUMBER THIRTEEN */ +"\x2481" "(14)" /* <U2481> PARENTHESIZED NUMBER FOURTEEN */ +"\x2482" "(15)" /* <U2482> PARENTHESIZED NUMBER FIFTEEN */ +"\x2483" "(16)" /* <U2483> PARENTHESIZED NUMBER SIXTEEN */ +"\x2484" "(17)" /* <U2484> PARENTHESIZED NUMBER SEVENTEEN */ +"\x2485" "(18)" /* <U2485> PARENTHESIZED NUMBER EIGHTEEN */ +"\x2486" "(19)" /* <U2486> PARENTHESIZED NUMBER NINETEEN */ +"\x2487" "(20)" /* <U2487> PARENTHESIZED NUMBER TWENTY */ +"\x2488" "1." /* <U2488> DIGIT ONE FULL STOP */ +"\x2489" "2." /* <U2489> DIGIT TWO FULL STOP */ +"\x248a" "3." /* <U248A> DIGIT THREE FULL STOP */ +"\x248b" "4." /* <U248B> DIGIT FOUR FULL STOP */ +"\x248c" "5." /* <U248C> DIGIT FIVE FULL STOP */ +"\x248d" "6." /* <U248D> DIGIT SIX FULL STOP */ +"\x248e" "7." /* <U248E> DIGIT SEVEN FULL STOP */ +"\x248f" "8." /* <U248F> DIGIT EIGHT FULL STOP */ +"\x2490" "9." /* <U2490> DIGIT NINE FULL STOP */ +"\x2491" "10." /* <U2491> NUMBER TEN FULL STOP */ +"\x2492" "11." /* <U2492> NUMBER ELEVEN FULL STOP */ +"\x2493" "12." /* <U2493> NUMBER TWELVE FULL STOP */ +"\x2494" "13." /* <U2494> NUMBER THIRTEEN FULL STOP */ +"\x2495" "14." /* <U2495> NUMBER FOURTEEN FULL STOP */ +"\x2496" "15." /* <U2496> NUMBER FIFTEEN FULL STOP */ +"\x2497" "16." /* <U2497> NUMBER SIXTEEN FULL STOP */ +"\x2498" "17." /* <U2498> NUMBER SEVENTEEN FULL STOP */ +"\x2499" "18." /* <U2499> NUMBER EIGHTEEN FULL STOP */ +"\x249a" "19." /* <U249A> NUMBER NINETEEN FULL STOP */ +"\x249b" "20." /* <U249B> NUMBER TWENTY FULL STOP */ +"\x249c" "(a)" /* <U249C> PARENTHESIZED LATIN SMALL LETTER A */ +"\x249d" "(b)" /* <U249D> PARENTHESIZED LATIN SMALL LETTER B */ +"\x249e" "(c)" /* <U249E> PARENTHESIZED LATIN SMALL LETTER C */ +"\x249f" "(d)" /* <U249F> PARENTHESIZED LATIN SMALL LETTER D */ +"\x24a0" "(e)" /* <U24A0> PARENTHESIZED LATIN SMALL LETTER E */ +"\x24a1" "(f)" /* <U24A1> PARENTHESIZED LATIN SMALL LETTER F */ +"\x24a2" "(g)" /* <U24A2> PARENTHESIZED LATIN SMALL LETTER G */ +"\x24a3" "(h)" /* <U24A3> PARENTHESIZED LATIN SMALL LETTER H */ +"\x24a4" "(i)" /* <U24A4> PARENTHESIZED LATIN SMALL LETTER I */ +"\x24a5" "(j)" /* <U24A5> PARENTHESIZED LATIN SMALL LETTER J */ +"\x24a6" "(k)" /* <U24A6> PARENTHESIZED LATIN SMALL LETTER K */ +"\x24a7" "(l)" /* <U24A7> PARENTHESIZED LATIN SMALL LETTER L */ +"\x24a8" "(m)" /* <U24A8> PARENTHESIZED LATIN SMALL LETTER M */ +"\x24a9" "(n)" /* <U24A9> PARENTHESIZED LATIN SMALL LETTER N */ +"\x24aa" "(o)" /* <U24AA> PARENTHESIZED LATIN SMALL LETTER O */ +"\x24ab" "(p)" /* <U24AB> PARENTHESIZED LATIN SMALL LETTER P */ +"\x24ac" "(q)" /* <U24AC> PARENTHESIZED LATIN SMALL LETTER Q */ +"\x24ad" "(r)" /* <U24AD> PARENTHESIZED LATIN SMALL LETTER R */ +"\x24ae" "(s)" /* <U24AE> PARENTHESIZED LATIN SMALL LETTER S */ +"\x24af" "(t)" /* <U24AF> PARENTHESIZED LATIN SMALL LETTER T */ +"\x24b0" "(u)" /* <U24B0> PARENTHESIZED LATIN SMALL LETTER U */ +"\x24b1" "(v)" /* <U24B1> PARENTHESIZED LATIN SMALL LETTER V */ +"\x24b2" "(w)" /* <U24B2> PARENTHESIZED LATIN SMALL LETTER W */ +"\x24b3" "(x)" /* <U24B3> PARENTHESIZED LATIN SMALL LETTER X */ +"\x24b4" "(y)" /* <U24B4> PARENTHESIZED LATIN SMALL LETTER Y */ +"\x24b5" "(z)" /* <U24B5> PARENTHESIZED LATIN SMALL LETTER Z */ +"\x24b6" "(A)" /* <U24B6> CIRCLED LATIN CAPITAL LETTER A */ +"\x24b7" "(B)" /* <U24B7> CIRCLED LATIN CAPITAL LETTER B */ +"\x24b8" "(C)" /* <U24B8> CIRCLED LATIN CAPITAL LETTER C */ +"\x24b9" "(D)" /* <U24B9> CIRCLED LATIN CAPITAL LETTER D */ +"\x24ba" "(E)" /* <U24BA> CIRCLED LATIN CAPITAL LETTER E */ +"\x24bb" "(F)" /* <U24BB> CIRCLED LATIN CAPITAL LETTER F */ +"\x24bc" "(G)" /* <U24BC> CIRCLED LATIN CAPITAL LETTER G */ +"\x24bd" "(H)" /* <U24BD> CIRCLED LATIN CAPITAL LETTER H */ +"\x24be" "(I)" /* <U24BE> CIRCLED LATIN CAPITAL LETTER I */ +"\x24bf" "(J)" /* <U24BF> CIRCLED LATIN CAPITAL LETTER J */ +"\x24c0" "(K)" /* <U24C0> CIRCLED LATIN CAPITAL LETTER K */ +"\x24c1" "(L)" /* <U24C1> CIRCLED LATIN CAPITAL LETTER L */ +"\x24c2" "(M)" /* <U24C2> CIRCLED LATIN CAPITAL LETTER M */ +"\x24c3" "(N)" /* <U24C3> CIRCLED LATIN CAPITAL LETTER N */ +"\x24c4" "(O)" /* <U24C4> CIRCLED LATIN CAPITAL LETTER O */ +"\x24c5" "(P)" /* <U24C5> CIRCLED LATIN CAPITAL LETTER P */ +"\x24c6" "(Q)" /* <U24C6> CIRCLED LATIN CAPITAL LETTER Q */ +"\x24c7" "(R)" /* <U24C7> CIRCLED LATIN CAPITAL LETTER R */ +"\x24c8" "(S)" /* <U24C8> CIRCLED LATIN CAPITAL LETTER S */ +"\x24c9" "(T)" /* <U24C9> CIRCLED LATIN CAPITAL LETTER T */ +"\x24ca" "(U)" /* <U24CA> CIRCLED LATIN CAPITAL LETTER U */ +"\x24cb" "(V)" /* <U24CB> CIRCLED LATIN CAPITAL LETTER V */ +"\x24cc" "(W)" /* <U24CC> CIRCLED LATIN CAPITAL LETTER W */ +"\x24cd" "(X)" /* <U24CD> CIRCLED LATIN CAPITAL LETTER X */ +"\x24ce" "(Y)" /* <U24CE> CIRCLED LATIN CAPITAL LETTER Y */ +"\x24cf" "(Z)" /* <U24CF> CIRCLED LATIN CAPITAL LETTER Z */ +"\x24d0" "(a)" /* <U24D0> CIRCLED LATIN SMALL LETTER A */ +"\x24d1" "(b)" /* <U24D1> CIRCLED LATIN SMALL LETTER B */ +"\x24d2" "(c)" /* <U24D2> CIRCLED LATIN SMALL LETTER C */ +"\x24d3" "(d)" /* <U24D3> CIRCLED LATIN SMALL LETTER D */ +"\x24d4" "(e)" /* <U24D4> CIRCLED LATIN SMALL LETTER E */ +"\x24d5" "(f)" /* <U24D5> CIRCLED LATIN SMALL LETTER F */ +"\x24d6" "(g)" /* <U24D6> CIRCLED LATIN SMALL LETTER G */ +"\x24d7" "(h)" /* <U24D7> CIRCLED LATIN SMALL LETTER H */ +"\x24d8" "(i)" /* <U24D8> CIRCLED LATIN SMALL LETTER I */ +"\x24d9" "(j)" /* <U24D9> CIRCLED LATIN SMALL LETTER J */ +"\x24da" "(k)" /* <U24DA> CIRCLED LATIN SMALL LETTER K */ +"\x24db" "(l)" /* <U24DB> CIRCLED LATIN SMALL LETTER L */ +"\x24dc" "(m)" /* <U24DC> CIRCLED LATIN SMALL LETTER M */ +"\x24dd" "(n)" /* <U24DD> CIRCLED LATIN SMALL LETTER N */ +"\x24de" "(o)" /* <U24DE> CIRCLED LATIN SMALL LETTER O */ +"\x24df" "(p)" /* <U24DF> CIRCLED LATIN SMALL LETTER P */ +"\x24e0" "(q)" /* <U24E0> CIRCLED LATIN SMALL LETTER Q */ +"\x24e1" "(r)" /* <U24E1> CIRCLED LATIN SMALL LETTER R */ +"\x24e2" "(s)" /* <U24E2> CIRCLED LATIN SMALL LETTER S */ +"\x24e3" "(t)" /* <U24E3> CIRCLED LATIN SMALL LETTER T */ +"\x24e4" "(u)" /* <U24E4> CIRCLED LATIN SMALL LETTER U */ +"\x24e5" "(v)" /* <U24E5> CIRCLED LATIN SMALL LETTER V */ +"\x24e6" "(w)" /* <U24E6> CIRCLED LATIN SMALL LETTER W */ +"\x24e7" "(x)" /* <U24E7> CIRCLED LATIN SMALL LETTER X */ +"\x24e8" "(y)" /* <U24E8> CIRCLED LATIN SMALL LETTER Y */ +"\x24e9" "(z)" /* <U24E9> CIRCLED LATIN SMALL LETTER Z */ +"\x24ea" "(0)" /* <U24EA> CIRCLED DIGIT ZERO */ +"\x2500" "-" /* <U2500> BOX DRAWINGS LIGHT HORIZONTAL */ +"\x2502" "|" /* <U2502> BOX DRAWINGS LIGHT VERTICAL */ +"\x250c" "+" /* <U250C> BOX DRAWINGS LIGHT DOWN AND RIGHT */ +"\x2510" "+" /* <U2510> BOX DRAWINGS LIGHT DOWN AND LEFT */ +"\x2514" "+" /* <U2514> BOX DRAWINGS LIGHT UP AND RIGHT */ +"\x2518" "+" /* <U2518> BOX DRAWINGS LIGHT UP AND LEFT */ +"\x251c" "+" /* <U251C> BOX DRAWINGS LIGHT VERTICAL AND RIGHT */ +"\x2524" "+" /* <U2524> BOX DRAWINGS LIGHT VERTICAL AND LEFT */ +"\x252c" "+" /* <U252C> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL */ +"\x2534" "+" /* <U2534> BOX DRAWINGS LIGHT UP AND HORIZONTAL */ +"\x253c" "+" /* <U253C> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL */ +"\x3000" " " /* <U3000> IDEOGRAPHIC SPACE */ +"\xfb00" "ff" /* <UFB00> LATIN SMALL LIGATURE FF */ +"\xfb01" "fi" /* <UFB01> LATIN SMALL LIGATURE FI */ +"\xfb02" "fl" /* <UFB02> LATIN SMALL LIGATURE FL */ +"\xfb03" "ffi" /* <UFB03> LATIN SMALL LIGATURE FFI */ +"\xfb04" "ffl" /* <UFB04> LATIN SMALL LIGATURE FFL */ +"\xfb06" "st" /* <UFB06> LATIN SMALL LIGATURE ST */ +"\xfb29" "+" /* <UFB29> HEBREW LETTER ALTERNATIVE PLUS SIGN */ +"\xfe4d" "_" /* <UFE4D> DASHED LOW LINE */ +"\xfe4e" "_" /* <UFE4E> CENTRELINE LOW LINE */ +"\xfe4f" "_" /* <UFE4F> WAVY LOW LINE */ +"\xfe50" "," /* <UFE50> SMALL COMMA */ +"\xfe52" "." /* <UFE52> SMALL FULL STOP */ +"\xfe54" ";" /* <UFE54> SMALL SEMICOLON */ +"\xfe55" ":" /* <UFE55> SMALL COLON */ +"\xfe56" "?" /* <UFE56> SMALL QUESTION MARK */ +"\xfe57" "!" /* <UFE57> SMALL EXCLAMATION MARK */ +"\xfe59" "(" /* <UFE59> SMALL LEFT PARENTHESIS */ +"\xfe5a" ")" /* <UFE5A> SMALL RIGHT PARENTHESIS */ +"\xfe5b" "{" /* <UFE5B> SMALL LEFT CURLY BRACKET */ +"\xfe5c" "}" /* <UFE5C> SMALL RIGHT CURLY BRACKET */ +"\xfe5f" "#" /* <UFE5F> SMALL NUMBER SIGN */ +"\xfe60" "&" /* <UFE60> SMALL AMPERSAND */ +"\xfe61" "*" /* <UFE61> SMALL ASTERISK */ +"\xfe62" "+" /* <UFE62> SMALL PLUS SIGN */ +"\xfe63" "-" /* <UFE63> SMALL HYPHEN-MINUS */ +"\xfe64" "<" /* <UFE64> SMALL LESS-THAN SIGN */ +"\xfe65" ">" /* <UFE65> SMALL GREATER-THAN SIGN */ +"\xfe66" "=" /* <UFE66> SMALL EQUALS SIGN */ +"\xfe68" "\\" /* <UFE68> SMALL REVERSE SOLIDUS */ +"\xfe69" "$" /* <UFE69> SMALL DOLLAR SIGN */ +"\xfe6a" "%" /* <UFE6A> SMALL PERCENT SIGN */ +"\xfe6b" "@" /* <UFE6B> SMALL COMMERCIAL AT */ +"\xff01" "!" /* <UFF01> FULLWIDTH EXCLAMATION MARK */ +"\xff02" "\"" /* <UFF02> FULLWIDTH QUOTATION MARK */ +"\xff03" "#" /* <UFF03> FULLWIDTH NUMBER SIGN */ +"\xff04" "$" /* <UFF04> FULLWIDTH DOLLAR SIGN */ +"\xff05" "%" /* <UFF05> FULLWIDTH PERCENT SIGN */ +"\xff06" "&" /* <UFF06> FULLWIDTH AMPERSAND */ +"\xff07" "'" /* <UFF07> FULLWIDTH APOSTROPHE */ +"\xff08" "(" /* <UFF08> FULLWIDTH LEFT PARENTHESIS */ +"\xff09" ")" /* <UFF09> FULLWIDTH RIGHT PARENTHESIS */ +"\xff0a" "*" /* <UFF0A> FULLWIDTH ASTERISK */ +"\xff0b" "+" /* <UFF0B> FULLWIDTH PLUS SIGN */ +"\xff0c" "," /* <UFF0C> FULLWIDTH COMMA */ +"\xff0d" "-" /* <UFF0D> FULLWIDTH HYPHEN-MINUS */ +"\xff0e" "." /* <UFF0E> FULLWIDTH FULL STOP */ +"\xff0f" "/" /* <UFF0F> FULLWIDTH SOLIDUS */ +"\xff10" "0" /* <UFF10> FULLWIDTH DIGIT ZERO */ +"\xff11" "1" /* <UFF11> FULLWIDTH DIGIT ONE */ +"\xff12" "2" /* <UFF12> FULLWIDTH DIGIT TWO */ +"\xff13" "3" /* <UFF13> FULLWIDTH DIGIT THREE */ +"\xff14" "4" /* <UFF14> FULLWIDTH DIGIT FOUR */ +"\xff15" "5" /* <UFF15> FULLWIDTH DIGIT FIVE */ +"\xff16" "6" /* <UFF16> FULLWIDTH DIGIT SIX */ +"\xff17" "7" /* <UFF17> FULLWIDTH DIGIT SEVEN */ +"\xff18" "8" /* <UFF18> FULLWIDTH DIGIT EIGHT */ +"\xff19" "9" /* <UFF19> FULLWIDTH DIGIT NINE */ +"\xff1a" ":" /* <UFF1A> FULLWIDTH COLON */ +"\xff1b" ";" /* <UFF1B> FULLWIDTH SEMICOLON */ +"\xff1c" "<" /* <UFF1C> FULLWIDTH LESS-THAN SIGN */ +"\xff1d" "=" /* <UFF1D> FULLWIDTH EQUALS SIGN */ +"\xff1e" ">" /* <UFF1E> FULLWIDTH GREATER-THAN SIGN */ +"\xff1f" "?" /* <UFF1F> FULLWIDTH QUESTION MARK */ +"\xff20" "@" /* <UFF20> FULLWIDTH COMMERCIAL AT */ +"\xff21" "A" /* <UFF21> FULLWIDTH LATIN CAPITAL LETTER A */ +"\xff22" "B" /* <UFF22> FULLWIDTH LATIN CAPITAL LETTER B */ +"\xff23" "C" /* <UFF23> FULLWIDTH LATIN CAPITAL LETTER C */ +"\xff24" "D" /* <UFF24> FULLWIDTH LATIN CAPITAL LETTER D */ +"\xff25" "E" /* <UFF25> FULLWIDTH LATIN CAPITAL LETTER E */ +"\xff26" "F" /* <UFF26> FULLWIDTH LATIN CAPITAL LETTER F */ +"\xff27" "G" /* <UFF27> FULLWIDTH LATIN CAPITAL LETTER G */ +"\xff28" "H" /* <UFF28> FULLWIDTH LATIN CAPITAL LETTER H */ +"\xff29" "I" /* <UFF29> FULLWIDTH LATIN CAPITAL LETTER I */ +"\xff2a" "J" /* <UFF2A> FULLWIDTH LATIN CAPITAL LETTER J */ +"\xff2b" "K" /* <UFF2B> FULLWIDTH LATIN CAPITAL LETTER K */ +"\xff2c" "L" /* <UFF2C> FULLWIDTH LATIN CAPITAL LETTER L */ +"\xff2d" "M" /* <UFF2D> FULLWIDTH LATIN CAPITAL LETTER M */ +"\xff2e" "N" /* <UFF2E> FULLWIDTH LATIN CAPITAL LETTER N */ +"\xff2f" "O" /* <UFF2F> FULLWIDTH LATIN CAPITAL LETTER O */ +"\xff30" "P" /* <UFF30> FULLWIDTH LATIN CAPITAL LETTER P */ +"\xff31" "Q" /* <UFF31> FULLWIDTH LATIN CAPITAL LETTER Q */ +"\xff32" "R" /* <UFF32> FULLWIDTH LATIN CAPITAL LETTER R */ +"\xff33" "S" /* <UFF33> FULLWIDTH LATIN CAPITAL LETTER S */ +"\xff34" "T" /* <UFF34> FULLWIDTH LATIN CAPITAL LETTER T */ +"\xff35" "U" /* <UFF35> FULLWIDTH LATIN CAPITAL LETTER U */ +"\xff36" "V" /* <UFF36> FULLWIDTH LATIN CAPITAL LETTER V */ +"\xff37" "W" /* <UFF37> FULLWIDTH LATIN CAPITAL LETTER W */ +"\xff38" "X" /* <UFF38> FULLWIDTH LATIN CAPITAL LETTER X */ +"\xff39" "Y" /* <UFF39> FULLWIDTH LATIN CAPITAL LETTER Y */ +"\xff3a" "Z" /* <UFF3A> FULLWIDTH LATIN CAPITAL LETTER Z */ +"\xff3b" "[" /* <UFF3B> FULLWIDTH LEFT SQUARE BRACKET */ +"\xff3c" "\\" /* <UFF3C> FULLWIDTH REVERSE SOLIDUS */ +"\xff3d" "]" /* <UFF3D> FULLWIDTH RIGHT SQUARE BRACKET */ +"\xff3e" "^" /* <UFF3E> FULLWIDTH CIRCUMFLEX ACCENT */ +"\xff3f" "_" /* <UFF3F> FULLWIDTH LOW LINE */ +"\xff40" "`" /* <UFF40> FULLWIDTH GRAVE ACCENT */ +"\xff41" "a" /* <UFF41> FULLWIDTH LATIN SMALL LETTER A */ +"\xff42" "b" /* <UFF42> FULLWIDTH LATIN SMALL LETTER B */ +"\xff43" "c" /* <UFF43> FULLWIDTH LATIN SMALL LETTER C */ +"\xff44" "d" /* <UFF44> FULLWIDTH LATIN SMALL LETTER D */ +"\xff45" "e" /* <UFF45> FULLWIDTH LATIN SMALL LETTER E */ +"\xff46" "f" /* <UFF46> FULLWIDTH LATIN SMALL LETTER F */ +"\xff47" "g" /* <UFF47> FULLWIDTH LATIN SMALL LETTER G */ +"\xff48" "h" /* <UFF48> FULLWIDTH LATIN SMALL LETTER H */ +"\xff49" "i" /* <UFF49> FULLWIDTH LATIN SMALL LETTER I */ +"\xff4a" "j" /* <UFF4A> FULLWIDTH LATIN SMALL LETTER J */ +"\xff4b" "k" /* <UFF4B> FULLWIDTH LATIN SMALL LETTER K */ +"\xff4c" "l" /* <UFF4C> FULLWIDTH LATIN SMALL LETTER L */ +"\xff4d" "m" /* <UFF4D> FULLWIDTH LATIN SMALL LETTER M */ +"\xff4e" "n" /* <UFF4E> FULLWIDTH LATIN SMALL LETTER N */ +"\xff4f" "o" /* <UFF4F> FULLWIDTH LATIN SMALL LETTER O */ +"\xff50" "p" /* <UFF50> FULLWIDTH LATIN SMALL LETTER P */ +"\xff51" "q" /* <UFF51> FULLWIDTH LATIN SMALL LETTER Q */ +"\xff52" "r" /* <UFF52> FULLWIDTH LATIN SMALL LETTER R */ +"\xff53" "s" /* <UFF53> FULLWIDTH LATIN SMALL LETTER S */ +"\xff54" "t" /* <UFF54> FULLWIDTH LATIN SMALL LETTER T */ +"\xff55" "u" /* <UFF55> FULLWIDTH LATIN SMALL LETTER U */ +"\xff56" "v" /* <UFF56> FULLWIDTH LATIN SMALL LETTER V */ +"\xff57" "w" /* <UFF57> FULLWIDTH LATIN SMALL LETTER W */ +"\xff58" "x" /* <UFF58> FULLWIDTH LATIN SMALL LETTER X */ +"\xff59" "y" /* <UFF59> FULLWIDTH LATIN SMALL LETTER Y */ +"\xff5a" "z" /* <UFF5A> FULLWIDTH LATIN SMALL LETTER Z */ +"\xff5b" "{" /* <UFF5B> FULLWIDTH LEFT CURLY BRACKET */ +"\xff5c" "|" /* <UFF5C> FULLWIDTH VERTICAL LINE */ +"\xff5d" "}" /* <UFF5D> FULLWIDTH RIGHT CURLY BRACKET */ +"\xff5e" "~" /* <UFF5E> FULLWIDTH TILDE */ diff --git a/locale/gen-translit.pl b/locale/gen-translit.pl index b6fba77c80..d44310b316 100644 --- a/locale/gen-translit.pl +++ b/locale/gen-translit.pl @@ -134,7 +134,7 @@ for ($cnt = 0; $cnt <= $#tos; ++$cnt) { printf(" "); ++$col; } - printf("L\"$tos[$cnt]\\0\""); + printf("%s", "L\"$tos[$cnt]\\0\""); $col += length($tos[$cnt]) + 5; } printf(";\n"); diff --git a/manual/memory.texi b/manual/memory.texi index fc364194df..6d86f550a3 100644 --- a/manual/memory.texi +++ b/manual/memory.texi @@ -841,7 +841,7 @@ The value of this variable is a pointer to the function that function to look like @code{malloc}; that is, like: @smallexample -void *@var{function} (size_t @var{size}, void *@var{caller}) +void *@var{function} (size_t @var{size}, const void *@var{caller}) @end smallexample The value of @var{caller} is the return address found on the stack when @@ -857,7 +857,7 @@ uses whenever it is called. You should define this function to look like @code{realloc}; that is, like: @smallexample -void *@var{function} (void *@var{ptr}, size_t @var{size}, void *@var{caller}) +void *@var{function} (void *@var{ptr}, size_t @var{size}, const void *@var{caller}) @end smallexample The value of @var{caller} is the return address found on the stack when @@ -873,7 +873,7 @@ uses whenever it is called. You should define this function to look like @code{free}; that is, like: @smallexample -void @var{function} (void *@var{ptr}, void *@var{caller}) +void @var{function} (void *@var{ptr}, const void *@var{caller}) @end smallexample The value of @var{caller} is the return address found on the stack when @@ -889,8 +889,12 @@ uses whenever it is called. You should define this function to look like @code{memalign}; that is, like: @smallexample -void *@var{function} (size_t @var{size}, size_t @var{alignment}) +void *@var{function} (size_t @var{size}, size_t @var{alignment}, const void *@var{caller}) @end smallexample + +The value of @var{caller} is the return address found on the stack when +the @code{memalign} function was called. This value allows you to trace the +memory consumption of the program. @end defvar You must make sure that the function you install as a hook for one of @@ -936,14 +940,13 @@ assume here that @code{realloc} and @code{memalign} are not used in our program. @smallexample -/* Global variables used to hold underlaying hook values. */ -static void *(*old_malloc_hook) (size_t); -static void (*old_free_hook) (void*); +/* Prototypes for __malloc_hook, __free_hook */ +#include <malloc.h> /* Prototypes for our hooks. */ static void *my_init_hook (void); -static void *my_malloc_hook (size_t); -static void my_free_hook (void*); +static void *my_malloc_hook (size_t, const void *); +static void my_free_hook (void*, const void *); /* Override initializing hook from the C library. */ void (*__malloc_initialize_hook) (void) = my_init_hook; @@ -958,7 +961,7 @@ my_init_hook (void) @} static void * -my_malloc_hook (size_t size) +my_malloc_hook (size_t size, const void *caller) @{ void *result; /* Restore all old hooks */ @@ -978,7 +981,7 @@ my_malloc_hook (size_t size) @} static void * -my_free_hook (void *ptr) +my_free_hook (void *ptr, const void *caller) @{ /* Restore all old hooks */ __malloc_hook = old_malloc_hook; @@ -1109,16 +1112,16 @@ Tell @code{malloc} to perform occasional consistency checks on dynamically allocated memory, and to call @var{abortfn} when an inconsistency is found. @xref{Heap Consistency Checking}. -@item void *(*__malloc_hook) (size_t @var{size}, void *@var{caller}) +@item void *(*__malloc_hook) (size_t @var{size}, const void *@var{caller}) A pointer to a function that @code{malloc} uses whenever it is called. -@item void *(*__realloc_hook) (void *@var{ptr}, size_t @var{size}, void *@var{caller}) +@item void *(*__realloc_hook) (void *@var{ptr}, size_t @var{size}, const void *@var{caller}) A pointer to a function that @code{realloc} uses whenever it is called. -@item void (*__free_hook) (void *@var{ptr}, void *@var{caller}) +@item void (*__free_hook) (void *@var{ptr}, const void *@var{caller}) A pointer to a function that @code{free} uses whenever it is called. -@item void (*__memalign_hook) (size_t @var{size}, size_t @var{alignment}) +@item void (*__memalign_hook) (size_t @var{size}, size_t @var{alignment}, const void *@var{caller}) A pointer to a function that @code{memalign} uses whenever it is called. @item struct mallinfo mallinfo (void) |