2005-07-06 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / corlib / Mono.Globalization.Unicode / ChangeLog
1 2005-07-06  Atsushi Enomoto  <atsushi@ximian.com>
2
3         * create-mscompat-collation-table.cs : Roman numeral characters
4           have diacritical weight. quick hack for control signs (U+2400..)
5           and box drawings.
6
7 2005-07-06  Atsushi Enomoto  <atsushi@ximian.com>
8
9         * create-mscompat-collation-table.cs : improving Latin mappings.
10           Setting non-ASCII Latin characters' primary weight between those
11           ASCII characters, and setting diacritical weight (hacky).
12         * MSCompatUnicodeTable.cs :
13           Kanatype check: fixed (voice marks) and improved (comparison order).
14
15 2005-07-06  Atsushi Enomoto  <atsushi@ximian.com>
16
17         * create-mscompat-collation-table.cs : more diacritical fixes.
18           primary weight fixes on punctuations in category 07.
19
20 2005-07-06  Atsushi Enomoto  <atsushi@ximian.com>
21
22         * create-mscompat-collation-table.cs : several diacritical fixes.
23         * TestDriver.cs : sortkey dumper should use StringSort.
24
25 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
26
27         * SimpleCollator.cs : fixed incorrect indexer setup. Optimized
28           GetContraction() call a bit.
29
30 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
31
32         * create-mscompat-collation-table.cs : fixed incorrect level 2
33           output type.
34         * MSCompatUnicodeTable.cs : remove debug line.
35
36 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
37
38         * MSCompatUnicodeTableUtil.cs,
39           MSCompatUnicodeTable.cs,
40           CodePointIndexer.cs,
41           create-mscompat-collation-table.cs : made some members internal and
42           accessible from other classes. Many indexes could be 0 by default.
43         * SimpleCollator.cs : optimizations. avoid method call.
44
45 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
46
47         * Collation-notes.txt : more updates.
48         * SimpleCollator.cs : Added quick check for Ordinal comparison.
49           Fixed special weight comparison. It cannot be customizable in the
50           implementation (and it won't be harmful).
51         * mono-tailoring-source.txt : thus updated comment.
52
53 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
54
55         * SimpleCollator.cs : Compare() was missing French sort support.
56         * TestDriver.cs : added example case.
57
58 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
59
60         * Collation-notes.txt : updated status. Eliminated descriptions on
61           "iterator" (I avoided it for performance concern). Fixed misc.
62           incorrect descriptions.
63
64 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
65
66         * Collator.cs : Now that SimpleCollator became feature complete, it is
67           not useful anymore.
68
69 2005-07-05  Atsushi Enomoto  <atsushi@ximian.com>
70
71         * SimpleCollator.cs : implemented decent Compare() that immediately
72           stops at first primary difference.
73
74 2005-07-04  Atsushi Enomoto  <atsushi@ximian.com>
75
76         * SimpleCollator.cs : indexers might return -1.
77
78 2005-07-04  Atsushi Enomoto  <atsushi@ximian.com>
79
80         * SimpleCollator.cs : IsPrefix() and IsSuffix() optimization code was
81           buggy (length check for source was missing).
82
83 2005-07-04  Atsushi Enomoto  <atsushi@ximian.com>
84
85         * create-mscompat-collation-table.cs : Fixed tailoring table output
86           to be in correct and countable order. Now if tailoring alias was not
87           found, just stop the build.
88         * MSCompatUnicodeTable.cs : several build fixes. Now it works to read
89           assembly resources.
90         * mono-tailoring-source.txt : commented out CJK aliases that miss
91           target.
92         * Makefile : needed further filename fixes.
93
94 2005-07-04  Atsushi Enomoto  <atsushi@ximian.com>
95
96         * MSCompatUnicodeTable.cs : renamed from MSCompatUnicodeTable.template
97           (now it is working as a standalone file).
98         * Makefile : renamed generated file as MSCompatUnicodeTableGenerated.cs
99           (the generator now creates both binary resources and C# source).
100
101 2005-07-04  Atsushi Enomoto  <atsushi@ximian.com>
102
103         * create-mscompat-collation-table.cs : Now it generates binary
104           resources (to parent directory).
105         * MSCompatUnicodeTable.template : added conditional code that fills
106           collation tables from manifest resources.
107         * Makefile : remove collation table binaries as well on "make clean".
108           Removed extraneous dependency.
109
110 2005-07-01  Atsushi Enomoto  <atsushi@ximian.com>
111
112         * MSCompatUnicodeTable.template,
113           SimpleCollator.cs : removed extraneous GetExpansion().
114
115 2005-07-01  Atsushi Enomoto  <atsushi@ximian.com>
116
117         * SimpleCollator.cs : IsSuffix() also supports contractions.
118         * TestDriver.cs : IsSuffix() example contraction cases.
119
120 2005-07-01  Atsushi Enomoto  <atsushi@ximian.com>
121
122         * SimpleCollator.cs : reverted IsSuffix() to return bool (to match w/
123           what current IsPrefix() does). For expansion of target, IsPrefix()
124           should check the no-match case that expansion is longer than input.
125           Some refactory on IsPrefix().
126           Added GetContractionTal() for IsSuffix() (not used yet).
127
128 2005-07-01  Atsushi Enomoto  <atsushi@ximian.com>
129
130         * TestDriver.cs : added IsPrefix() expansion cases.
131         * SimpleCollator.cs : IsPrefix() now supports contractions (with much
132           of complexity), and it now returns bool again.
133           IndexOf() for replacement should make use of IndexOfPrimitiveChar()
134           since expansions won't be expanded recursively.
135
136 2005-07-01  Atsushi Enomoto  <atsushi@ximian.com>
137
138         * SimpleCollator.cs : commonized character comparison in IsPrefix()
139           and IsSuffix(). csc compile fix.
140         * CompareInfoImpl.cs : deleted.
141
142 2005-06-30  Atsushi Enomoto  <atsushi@ximian.com>
143
144         * TestDriver.cs : added SimpleCollator.ctor() sanity check.
145           Added replacement contraction example.
146         * SimpleCollator.cs : Now IndexOf() and LastIndexOf() support 
147           contraction in source string. Extracted matching code to Matches().
148           Replacement contraction was including extraneous '\x0'.
149
150 2005-06-30  Atsushi Enomoto  <atsushi@ximian.com>
151
152         * Collation-notes.txt : updated status.
153         * CollationDataStructures.txt : tiny fixes.
154         * SimpleCollator.cs :
155           Renamed alias Util to UUtil (MS sys.enterprisesvc has sucky global
156           namespace Util and csc borked).
157           GetContraction was incorrectly returning first item.
158           Private IsPrefix() now returns int (but it might not be in real use).
159           Extracted simple char comparison to CompareCharSimple().
160           IndexOf() and LastIndexOf() now fully handle contractions (both
161           binary key and string replacement) in "target" (for "s" not yet).
162         * TestDriver.cs : be more verbose.
163         * mono-tailoring-source.txt : added comment.
164         * MSCompatUnicodeTable.template :
165           Renamed alias Util to UUtil (MS sys.enterprisesvc has sucky global
166
167 2005-06-30  Atsushi Enomoto  <atsushi@ximian.com>
168
169         * create-mscompat-collation-table.cs : compute COMBINING blah marks as
170           well as those characters WITH blah.
171         * TestDriver.cs : added combining sortkey cases.
172
173 2005-06-30  Atsushi Enomoto  <atsushi@ximian.com>
174
175         * mono-tailoring-source.txt : fixed description on '*' in sortkeys.
176         * SimpleCollator.cs : Now it fully uses tailoring info. Fixed
177           contraction search that worked only when string is contraction.
178           Removed commented code. Minor refactoring.
179         * TestDriver.cs : added example that uses "ZS" in Hungarian sorting.
180
181 2005-06-29  Atsushi Enomoto  <atsushi@ximian.com>
182
183         * create-mscompat-collation-table.cs,
184         * mono-tailoring-source.txt : removed extraneous level 4 sortkey
185           which cannot be supported.
186         * SimpleCollator.cs : added GetContraction() and used in some places.
187           Now CompareOptions is set only once. Reordered some code (e.g.
188           ignorable check -> get compat char -> compare).
189
190 2005-06-29  Atsushi Enomoto  <atsushi@ximian.com>
191
192         * SimpleCollator.cs : sort tailoring tables before actual usage.
193           Support diacritical remappings (it is customized collation rule
194           which does not exist in UCA).
195
196 2005-06-29  Atsushi Enomoto  <atsushi@ximian.com>
197
198         * SimpleCollator.cs : build culture specific tailoring table from
199           TailoringInfo and unified data array.
200         * create-mscompat-collation-table.cs : Added null termination to
201           sortkey map tailorings (mostly to save my eyes).
202         * MSCompatUnicodeTable.template : added public TailoringValues.
203
204 2005-06-29  Atsushi Enomoto  <atsushi@ximian.com>
205
206         * SortKeyBuffer.cs : handle special weight (category 06) characters.
207         * Collation-notes.txt : Updated description on special weight (it was
208           incorrect).
209         * TestDriver.cs : added special weight cases.
210
211 2005-06-29  Atsushi Enomoto  <atsushi@ximian.com>
212
213         * MSCompatUnicodeTable.template : added GetTailoringInfo().
214         * SimpleCollator.cs : Now tailoring information is acquired and used.
215           (FrenchSort is supported but Compare() won't work expectedly since
216            the table is still incomplete for those diacritical marks).
217         * SortKeyBuffer.cs : On reversing diacritical weights, it should
218           ignore zeros. Reset() should reset frenchSorted flag.
219
220 2005-06-28  Atsushi Enomoto  <atsushi@ximian.com>
221
222         * create-mscompat-collation-table.cs : Further fixes on Jamo,
223           diacritical weights by character name, and *Numbers primary weights.
224
225 2005-06-28  Atsushi Enomoto  <atsushi@ximian.com>
226
227         * create-mscompat-collation-table.cs : More fix on Devanagari,
228           Gujarati, Oliya, Tamil and Lao sortkeys.
229
230 2005-06-28  Atsushi Enomoto  <atsushi@ximian.com>
231
232         * create-mscompat-collation-table.cs : Fixed Georgian, Thai, Gurmukhi
233           sortkey values.
234
235 2005-06-28  Atsushi Enomoto  <atsushi@ximian.com>
236
237         * create-mscompat-collation-table.cs : Fixed Thai character primary
238           and secondary values. Fixed Thaana letters. Added more LAMESPEC
239           CJK compat. Fixed some circled CJK secondary weight.
240           Hacked some nonspacing mark sortkey value adjustment.
241
242 2005-06-28  Atsushi Enomoto  <atsushi@ximian.com>
243
244         * create-mscompat-collation-table.cs : CP932.TXT was not parsed as
245           expected. JIS ordering was incorrect. OtherNumbers that represents
246           10 or more values were incorrectly computed the offset. Some Hangul
247           compat characters has different offset.
248
249 2005-06-28  Atsushi Enomoto  <atsushi@ximian.com>
250
251         * create-mscompat-collation-table.cs : Fixed 0x8 category characters.
252           Added hack for need-to-be-fixed characters to fall into 0xA category.
253         * create-collation-element-table.cs : previous checkin seem failed :(
254         * README: updated a bit.
255
256 2005-06-24  Atsushi Enomoto  <atsushi@ximian.com>
257
258         * CodePointIndexer.cs :
259           removed extraneous switch (I could use empty array for that need).
260         * CollationElementTableUtil.cs : primary weight type became ushort.
261         * create-collation-element-table.cs : several bugfixes.
262           collElem should be int. It was skipping most of entries because of
263           incorrect string tokenization.
264
265 2005-06-23  Atsushi Enomoto  <atsushi@ximian.com>
266
267         * create-mscompat-collation-table.cs : handle some Jamo NKFD.
268
269 2005-06-23  Atsushi Enomoto  <atsushi@ximian.com>
270
271         * SimpleCollator.cs : forgot to commit in the last checkin.
272         * create-mscompat-collation-table.cs : fixed arabic shift weight chars.
273         * TestDriver.cs : switch table dumper and collator testing.
274         * SortKey.cs : for now comment out internal indexes (not in use).
275
276 2005-06-23  Atsushi Enomoto  <atsushi@ximian.com>
277
278         * MSCompatUnicodeTable.template,
279           SimpleCollator.cs : support for culture dependent CJK table.
280
281 2005-06-23  Atsushi Enomoto  <atsushi@ximian.com>
282
283         * create-mscompat-collation-table.cs,
284           MSCompatUnicodeTableUtil.cs : make CJK table more compact.
285
286 2005-06-22  Atsushi Enomoto  <atsushi@ximian.com>
287
288         * SimpleCollator.cs : Fixed stupid index search when start != 0.
289
290 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
291
292         * SimpleCollator.cs : fixed my misunderstanding on LastIndexOf(). It
293           now starts from "start" and proceeds backward by "length".
294         * TestDriver.cs : fix warning.
295
296 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
297
298         * TestDriver.cs : more tests.
299         * SimpleCollator.cs : LastIndexOf() is not setting search length
300           on iteration. Quick workaround fro String.LastIndexOf() bug (maybe).
301
302 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
303
304         * create-normalization-source.cs : output propValue as uint.
305
306 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
307
308         * SortKey.cs : Now it is System.Globalization.SortKey.
309           To replace existing implementation, it now requires lcid and 
310           CompareOptions. Added required members.
311         * SortKeyBuffer.cs : thus .ctor() requires LCID.
312         * SimpleCollator.cs : made required changes above.
313
314 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
315
316         * CodePointIndexer.cs : added CompressArray(). Now it requires two more
317           parameters for default index and codepoint.
318         * CollationElementTableUtil.cs,
319           NormalizationTableUtil.cs : required changes wrt above change.
320         * MSCompatUnicodeTableUtil.cs : added for several codepoint indexers.
321         * MSCompatUnicodeTable.template : Now it uses codepoint indexer.
322         * create-mscompat-collation-table.cs : Now it outputs compressed array.
323         * Makefile : now collation requires MSCompatUnicodeTableUtil.cs
324
325 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
326
327         * SimpleCollator.cs :
328           Implemented IsSuffix() and LastIndexOf().
329           Several fixes on index > 0 cases.
330         * TestDriver.cs : sample IsSuffix() and LastIndexOf() usage and more.
331
332 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
333
334         * Collation-notes.txt : updated (status, impl. classes).
335         * MSCompatUnicodeTable.cs : Korean Jamo are not really expansions.
336
337 2005-06-21  Atsushi Enomoto  <atsushi@ximian.com>
338
339         * SimpleCollator.cs : implemented IndexOf(string,string,CompareOptions)
340           and IsPrefix(). Tiny code refactory.
341         * TestDriver.cs : sample IsPrefix() and IndexOf() usage.
342         * MSCompatUnicodeTable.cs : tiny refactory for CodePointIndexer use.
343
344 2005-06-20  Atsushi Enomoto  <atsushi@ximian.com>
345
346         * SimpleCollator.cs :
347           IndexOf(string, char, CompareOptions) implementation.
348         * TestDriver.cs : sample IndexOf() usage.
349
350 2005-06-20  Atsushi Enomoto  <atsushi@ximian.com>
351
352         * create-mscompat-collation-table.cs : was missing most important
353           kind of blocks - equivalent expansions (e.g. invariant mappings).
354           More readable mappings.
355
356 2005-06-20  Atsushi Enomoto  <atsushi@ximian.com>
357
358         * mono-tailoring-source.txt : new file. It describes tailoring
359           information. Basically examined under .NET 1.x.
360         * create-mscompat-collation-table.cs : consume the file above.
361         * MSCompatUnicodeTable.template : now tailorings is not a stub.
362         * CollationDataStructures.txt : minor fixes.
363         * SortKeyBuffer.cs,
364           SimpleCollator.cs : added FrenchSort support.
365         * Collation-notes.txt : added description on Latin primary weights.
366         * ldml-limited.rng : added note.
367         * create-tailorings.cs : added note. more serialization (but won't be 
368           used anyways).
369
370 2005-06-17  Atsushi Enomoto  <atsushi@ximian.com>
371
372         * SortKeyBuffer.cs : non-primary character is added to previous 
373           diacritical weight.
374         * TestDriver.cs : added example case of above.
375
376 2005-06-17  Atsushi Enomoto  <atsushi@ximian.com>
377
378         * SimpleCollator.cs : IgnoreSymbols support.
379         * TestDriver.cs : compilation fix. IgnoreSymbols example.
380         * create-mscompat-collation-table.cs : more Hangul fixes.
381
382 2005-06-17  Atsushi Enomoto  <atsushi@ximian.com>
383
384         * create-mscompat-collation-table.cs : more Hangul fixes.
385         * SortKey.cs : it will replace sys.globalization.SortKey. It has
386           some internal members.
387         * SortKeyBuffer.cs : now it uses SortKey instead of byte[].
388         * SimpleCollator.cs : CompareOptions support. However I don't think
389           it will be developed anymore since SortKey never enables IndexOf().
390         * TestDriver.cs : a few CompareOptions cases.
391
392 2005-06-16  Atsushi Enomoto  <atsushi@ximian.com>
393
394         * SimpleCollator.cs : simple collator implementation that just will
395           use GetSortKey() for all its basis.
396         * TestDriver.cs : sample code that uses this collator set.
397         * MSCompatUnicodeTable.template : removed test driver from here.
398
399 2005-06-16  Atsushi Enomoto  <atsushi@ximian.com>
400
401         * create-mscompat-collation-table.cs : Hangul fixes.
402           Now less than 300 characters that does not have sortkey weights.
403         * MSCompatUnicodeTable.template : added FIXME info for Hangul Jamo.
404
405 2005-06-16  Atsushi Enomoto  <atsushi@ximian.com>
406
407         * create-mscompat-collation-table.cs : Added control picture mappings.
408           Minor primary weight fixes.
409
410 2005-06-16  Atsushi Enomoto  <atsushi@ximian.com>
411
412         * create-mscompat-collation-table.cs : Added mappings for box
413           drawings and blocks.
414
415 2005-06-16  Atsushi Enomoto  <atsushi@ximian.com>
416
417         * create-mscompat-collation-table.cs : Added mappings for arrows.
418
419 2005-06-15  Atsushi Enomoto  <atsushi@ximian.com>
420
421         * create-mscompat-collation-table.cs : added support for letterlike
422           characters and squared CJK compatibility characters, ordered by
423           character names (0x0E category).
424         * Collation-notes.txt : added description on that.
425
426 2005-06-15  Atsushi Enomoto  <atsushi@ximian.com>
427
428         * MSCompatUnicodeTable.template : Now expansions are simulated.
429         * create-mscompat-collation-table.cs : filled Korean number level2.
430           Reordered some code blocks to fill correct diacritical differences.
431         * Collation-notes.txt : some corrections and minor additions.
432
433 2005-06-15  Atsushi Enomoto  <atsushi@ximian.com>
434
435         * MSCompatUnicodeTable.template :
436           Now dumper test driver uses SortKeyBuffer for dogfooding.
437         * create-mscompat-collation-table.cs : some diacritical level fixes
438           (with non-working extra latin check).
439         * SortKeyBuffer.cs : several fixes to get working as a practical code.
440         * Collator.cs : make it compilable, leaving things as NotImplemented.
441
442 2005-06-15  Atsushi Enomoto  <atsushi@ximian.com>
443
444         * create-mscompat-collation-table.cs : some fixes on primary category
445           07 (miscellaneous symbols and punctuations).
446
447 2005-06-14  Atsushi Enomoto  <atsushi@ximian.com>
448
449         * create-mscompat-collation-table.cs : more mapping fix on numbers,
450           letters, variable weight characters, circled Japanese and CJK.
451         * MSCompatUnicodeTable.template : fixed HasSpecialWeight() to be more
452           inclusive. Simplified dumper code.
453
454 2005-06-14  Atsushi Enomoto  <atsushi@ximian.com>
455
456         * create-mscompat-collation-table.cs : finished Hangul (both Jamo
457           and Syllables). sortkey dumper diff lines became 8000 from 30000.
458
459 2005-06-14  Atsushi Enomoto  <atsushi@ximian.com>
460
461         * create-mscompat-collation-table.cs : added some nonspacing marks in
462           either correct or hacky way.
463
464 2005-06-13  Atsushi Enomoto  <atsushi@ximian.com>
465
466         * create-mscompat-collation-table.cs : several improvements. Japanese
467           Kana support, Hebrew accents, Bengali nonspacing marks, sorting of
468           numeric characters, diacritically decorated latin alphabets. Fixed
469           some diacritical weights detection.
470         * MSCompatUnicodeTable.cs : tiny Japanese fix. Handle nonspacing
471           marks' primary weight as empty.
472         * Collation-notes.txt : some updates.
473
474 2005-06-13  Atsushi Enomoto  <atsushi@ximian.com>
475
476         * create-mscompat-collation-table.cs : don't process nonexact NFKD 
477           mapping as equivalent, however store CJK extensions into NFKD map
478           even if one does not strictly match.
479           Now am going to fill Hangul into tables (unlike UCA it does not look
480           possible to calculate sortkey value).
481           Fixed Cyrillic and Georgian UCA based orderings.
482         * MSCompatUnicodeTable.template : added CJK extension sortkey 
483           calculation.
484
485 2005-06-10  Atsushi Enomoto  <atsushi@ximian.com>
486
487         * create-mscompat-collation-table.cs : Fixed latin alphabet support.
488           Added latin with diacritical and CJK extension.
489         * MSCompatUnicodeTable.cs : modified dumper code a bit (for my purpose).
490
491 2005-06-10  Atsushi Enomoto  <atsushi@ximian.com>
492
493         * create-mscompat-collation-table.cs : now parses DerivedAge.txt (right
494           now not used thouth). Filled CJK ideograph, still not perfect.
495           Fixed number primary keys. NFKD numbers and CJK ideographs are now
496           considered, including brackets elimination.
497         * Makefile : now it downloads DerivedAge.txt.
498         * MSCompatUnicodeTable.template : added dummy code dumper. It computes
499           PrivateUse, Surrogate and Hangul Syllables.
500         * Collation-notes.txt : Noted that Hangul Syllables need more love.
501
502 2005-06-09  Atsushi Enomoto  <atsushi@ximian.com>
503
504         * create-tailorings.cs : added configuration support. sort them.
505           I wonder if it is really usable. Having own format might be better.
506         * create-mscompat-collation-table.cs : fixing some sortkey numbers,
507           making closer to windows. Now it handles NFKD in some places.
508         * MSCompatUnicodeTable.template : Added dummy sortkey dumper driver.
509         * CollationDataStructures.txt : added description on tailoring
510           fields, though they are subject to change.
511
512 2005-06-07  Atsushi Enomoto  <atsushi@ximian.com>
513
514         * create-tailorings.cs, ldml-limited.rng : new file.
515         * LdmlReader.cs : removed old file.
516
517 2005-06-07  Atsushi Enomoto  <atsushi@ximian.com>
518
519         * SortKeyBuffer.cs : split from Collator.cs. Now it considers
520           practical use, reflecting updated sortkey constant design.
521           Especially level 4 weight is split to 4 arrays that are merged in
522           the last stage of GetSortKey().
523         * Collator.cs : thus SortKeyBuffer is removed from here.
524           Additionally, removed some extraneous bits in other classes.
525         * Collation-notes.txt : Some editorial fixes. Added information on
526           Korean matter (how to compute Hangle Syllables / Hangul Jamo cannot
527           be stored in simple byte arrays).
528         * CodePointIndexer.cs,
529           create-collation-element-table.cs,
530           CollationElementTable.template,
531           NormalizationTableUtil.cs : short CodePointIndexer method names.
532         * create-mscompat-collation-table.cs : Additional info on why some
533           meaningful characters are ignored in Windows (Unicode version
534           difference). Removed U+070F from special check (was extraneous).
535
536 2005-06-06  Atsushi Enomoto  <atsushi@ximian.com>
537
538         * MSCompatUnicodeTable.template:
539           Moved body implementation to table creator and put those bool
540           results into an array.
541         * create-mscompat-collation-table.cs :
542           So imported those methods. Modified array output to emit "0x"
543           only for more than 9.
544         * create-normalization-source.cs : ditto on "0x" output matter.
545         * CollationDataStructures.txt : so now it holds ignorableFlags.
546
547 2005-06-03  Atsushi Enomoto  <atsushi@ximian.com>
548
549         * Collation-notes.txt, CollationDataStructures.txt :
550           separate document for data structure design.
551
552 2005-06-03  Atsushi Enomoto  <atsushi@ximian.com>
553
554         * create-mscompat-collation-table.cs : added culture-dependent CJK
555           table creation. It uses CLDR as its basis. (Culture independent CJK
556           is not ready BTW).
557         * Makefile : added CLDR archive downloading support.
558         * MSCompatUnicodeTable.template : tiny renamings.
559         * Collation-notes.txt : additional CJK info.
560
561 2005-06-02  Atsushi Enomoto  <atsushi@ximian.com>
562
563         * Collation-notes.txt, create-mscompat-collation-table.cs :
564           added secondary weight support for BlahNumber characters.
565
566 2005-06-01  Atsushi Enomoto  <atsushi@ximian.com>
567
568         * downloaded : added directory. All downloaded files are stored here.
569         * Makefile : use "downloaded" directory.
570           Added more auto-download stuff.
571         * create-mscompat-collation-table.cs :
572           Added Japanese square kana support.
573
574 2005-06-01  Atsushi Enomoto  <atsushi@ximian.com>
575
576         * Collation-notes.txt : added Estrangela (ancient Syriac) and Thaana.
577         * create-mscompat-collation-table.cs : added support for Arabic abjad,
578           Estrangela and Thaana.
579         * MSCompatUnicodeTable.template : removed BOM.
580
581 2005-05-31  Atsushi Enomoto  <atsushi@ximian.com>
582
583         * Collation-notes.txt : wrong comment cleanup and spelling fixes.
584         * create-mscompat-collation-table.cs : added diacritic support for
585           Latin letters (as long as covered in primary weight).
586
587 2005-05-31  Atsushi Enomoto  <atsushi@ximian.com>
588
589         * Makefile : minor fixes. Added warning lines to generated sources.
590
591 2005-05-31  Atsushi Enomoto  <atsushi@ximian.com>
592
593         * create-char-mapping-source.cs :
594           Removed ToWidthInsensitive() generation.
595
596 2005-05-31  Atsushi Enomoto  <atsushi@ximian.com>
597
598         * create-mscompat-collation-table.cs : Now it dumps level1 to 3 values.
599           ToWidthInsensitive() is implemented here, using an array (which is
600           to be optimized using CodePointIndexer).
601         * MSCompatUnicodeTable.cs : renamed as MSCompatUnicodeTable.template
602         * MSCompatUnicodeTable.template : now it is used to generate
603           MSCompatUnicodeTable.cs which got ready to be used.
604         * Makefile : added MSCompatUnicodeTable.cs build support. Now it
605           supports "make normalization" and "make collation".
606
607 2005-05-30  Atsushi Enomoto  <atsushi@ximian.com>
608
609         * Collation-notes.txt : Description on ICU is very incorrect. Now it
610           became more rational and sane.
611         * create-mscompat-collation-table.cs : fixed some indexes.
612         * Makefile : added "mstablegen" target.
613         * MSCompatUnicodeTable.cs : removed GetPrimaryWeight(). Minor fix.
614
615 2005-05-26  Atsushi Enomoto  <atsushi@ximian.com>
616
617         * Collation-notes.txt : more analysis on "letters".
618         * create-mscompat-collation-table.cs : more proof of concepts.
619
620 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
621
622         * Collation-notes.txt : more info. Started letter sortkey analysis
623           (some of other stuff are really non-understandable right now.)
624         * create-mscompat-collation-table.cs : table generator proof-of-
625           concept source (not compilable).
626         * MSCompatUnicodeTable.cs : moved some code to the new source.
627           Some more fixes.
628
629 2005-05-20  Atsushi Enomoto  <atsushi@ximian.com>
630
631         * Collation-notes.txt : started level 2 weight analysis.
632
633 2005-05-19  Atsushi Enomoto  <atsushi@ximian.com>
634
635         * Collation-notes.txt : Additional information on how to create
636           level 3 tables.
637         * MSCompatUnicodeTable.cs : implemented part of GetLevel3Weight().
638
639 2005-05-19  Atsushi Enomoto  <atsushi@ximian.com>
640
641         * Collation-notes.txt : More case weight (level 3) analysis. I'm
642           likely to just write table generator.
643
644 2005-05-18  Atsushi Enomoto  <atsushi@ximian.com>
645
646         * MSCompatUnicodeTable.cs : part of level 4 weight implementation.
647
648 2005-05-18  Atsushi Enomoto  <atsushi@ximian.com>
649
650         * Collation-notes.txt :
651           Added task list.
652           Revised comparison methods; backward iteration is possible.
653           More on char-by-char comparison.
654           Level 4 comparison is actually a bit more complex.
655           Misc corrections.
656         * Collator.cs : some conceptual updates wrt above.
657
658 2005-05-17  Atsushi Enomoto  <atsushi@ximian.com>
659
660         * Collation-notes.txt : Japanese voice mark is level 2, and Hangul
661           properties are level 3.
662
663 2005-05-17  Atsushi Enomoto  <atsushi@ximian.com>
664
665         * Collation-notes.txt : Make it more readable. More analysis on
666           level 3 and 4 sortkey structures.
667         * Collator.cs : some compilation fixes (not compilable yet).
668
669 2005-05-16  Atsushi Enomoto  <atsushi@ximian.com>
670
671         * Collation-notes.txt : Analysis on variable-weighting (level 5)
672           sortkey format.
673         * Collator.cs : updated corresponding part of level 5, and more.
674
675 2005-05-13  Atsushi Enomoto  <atsushi@ximian.com>
676
677         * Collation-notes.txt : more updates.
678         * Collator.cs : rewrote from scratch. Some rough sketch for sortkey
679           buffer, character iterator and collator methods. Not compiling.
680
681 2005-05-13  Atsushi Enomoto  <atsushi@ximian.com>
682
683         * Collator.cs : Am going to replace it with new one. No need for 
684           CompareOptions-dependent Comparer.
685
686 2005-05-13  Atsushi Enomoto  <atsushi@ximian.com>
687
688         * Collation-notes.txt : There seems a bit more complexity.
689
690 2005-05-10  Atsushi Enomoto  <atsushi@ximian.com>
691
692         * Collation-notes.txt : more updates, being close to write sortkey
693           generator code.
694
695 2005-05-09  Atsushi Enomoto  <atsushi@ximian.com>
696
697         * CompareInfoImpl.cs, Collator.cs : conceptual update
698         * Collation-notes.txt : some corrections and additions.
699         * Makefile : added LDML input (but it won't be used at all).
700
701 2005-04-28  Atsushi Enomoto  <atsushi@ximian.com>
702
703         * Collation-notes.txt : more updates.
704
705 2005-04-26  Atsushi Enomoto  <atsushi@ximian.com>
706
707         * Collation-notes.txt : more updates.
708
709 2005-04-26  Atsushi Enomoto  <atsushi@ximian.com>
710
711         * Collation-notes.txt : some updates.
712         * create-mapping-char-source.cs : superscripts and subscripts are also
713           ignored in IgnoreWidth comparison.
714         * Makefile : tiny touch fix.
715
716 2005-04-25  Atsushi Enomoto  <atsushi@ximian.com>
717
718         * CompareInfoImpl.cs, Collator.cs : conceptual stuff (not working).
719
720 2005-04-25  Atsushi Enomoto  <atsushi@ximian.com>
721
722         * create-char-mapping-source.cs : Now it generates
723           ToWidthInsensitive() from combining category <wide> and <narrow>.
724         * MSCompatUnicodeTable.cs : added ToKanaTypeInsensitive() and
725           ToWidthInsensitive() for IgnoreKanaType and IgnoreWidth.
726
727 2005-04-25  Atsushi Enomoto  <atsushi@ximian.com>
728
729         * README, LdmlReader.cs, DataStructures.txt : new files.
730
731 2005-04-25  Atsushi Enomoto  <atsushi@ximian.com>
732
733         * CodePointIndexer.cs,
734           Collation-notes.txt,
735           CollationElementTable.template,
736           CollationElementTableUtil.cs,
737           create-char-mapping-source.cs,
738           create-collation-element-table.cs,
739           create-combining-class-source.cs,
740           create-normalization-source.cs,
741           Makefile,
742           MSCompatUnicodeTable.cs,
743           Normalization.template,
744           NormalizationTableUtil.cs : initial checkin (to private branch).
745