7bbd07229fca5e04f47ad244517703cb26f93d14
[m17n/libotf.git] / ChangeLog
1 2009-08-13  Kenichi Handa  <handa@m17n.org>
2
3         * Version 0.9.10 released.
4
5 2009-08-13  Kenichi Handa  <handa@m17n.org>
6
7         * src/otf.h (LIBOTF_VERSION): Changed to "0.9.10".
8         (LIBOTF_RELEASE_NUMBER): Changed to 10.
9
10         * configure.ac: Versions changed to 0.9.10.
11
12 2009-07-23  Kenichi Handa  <handa@m17n.org>
13
14         * src/otf.h (OTF_cmap): New member table_index;
15
16         * src/otfopen.c (read_cmap_table): Set cmap->table_index.
17
18         * src/otfdrive.c (lookup_encoding_0, lookup_encoding_2)
19         (lookup_encoding_4, lookup_encoding_6, lookup_encoding_8)
20         (lookup_encoding_10, lookup_encoding_12): Arguments and return
21         value changed.
22         (lookup_cmap_func): New function type.
23         (lookup_cmap_func_table): New variable.
24         (get_GlyphID): New function.
25         (get_uvs_glyph): Call get_GlyphID instead of directly accessing
26         cmal->unicode_table.
27         (OTF_drive_cmap, OTF_drive_cmap2): Call one of lookup functions in
28         lookup_cmap_func_table.
29
30 2009-07-10  Kenichi Handa  <handa@m17n.org>
31
32         * example/otfview.c (update_seq_area): Drive features of the
33         correct script and langsys.
34
35 2009-03-03  Kenichi Handa  <handa@m17n.org>
36
37         * Version 0.9.9 released.
38
39 2009-03-03  Kenichi Handa  <handa@m17n.org>
40
41         * src/otf.h (LIBOTF_VERSION): Changed to "0.9.9".
42         (LIBOTF_RELEASE_NUMBER): Changed to 9.
43
44 2009-03-02  Kenichi Handa  <handa@m17n.org>
45
46         * configure.ac: Versions changed to 0.9.9.
47
48 2009-02-26  Kenichi Handa  <handa@m17n.org>
49
50         * src/otfopen.c (free_stream): Check stream->buf before freeing
51         it.
52         (read_gdef_table): Do nothing if stream->buf is NULL.
53         (read_header_part): If a font doesn't have a GDEF table, make a
54         pseudo stream.
55
56         * src/otfdrive.c (glyph_class_table): New variable.
57         (get_class_def_auto): New function.
58         (OTF_drive_gdef): If a font doesn't have a GDEF table, use
59         get_class_def_auto.
60
61 2009-02-25  Kenichi Handa  <handa@m17n.org>
62
63         * src/otfopen.c (get_table_info): Always succeed for GDEF table.
64
65         * example/otfview.c (main): If ! otf, don't setup sub14.
66
67 2008-12-31  Kenichi Handa  <handa@m17n.org>
68
69         * src/otfdrive.c (check_cmap_uvs): Update the member
70         MGlyph.f.index.to.
71
72 2008-12-29  Kenichi Handa  <handa@m17n.org>
73
74         * src/otf.h (OTF_get_variation_glyphs): Extern it..
75
76         * src/otfdrive.c (OTF_get_variation_glyphs): New function.
77
78         * example/otfview.c (uvs_area, uvs_label): New variables.
79         (sub14, uvs): New variable.
80         (update_uvs_area): New function.
81         (update_seq_area): Set `glyph_id' member only when no charmap is
82         used.
83         (update_render_area): Handle a variation selector.
84         (UVSProc): New function.
85         (RenderProc): Call update_uvs_area if the font is OpenType.
86         (create_widgets): Create uvs_area widget if the font has variation
87         selector.
88         (main): Setup sub14. Set font in gc_set.
89
90 2008-12-24  Kenichi Handa  <handa@m17n.org>
91
92         * src/otfdrive.c (get_uvs_glyph): Complete the code.
93
94 2008-12-23  Kenichi Handa  <handa@m17n.org>
95
96         * example/otfview.c (update_seq_area): Call OTF_drive_cmap.
97
98         * example/otfdump.c (dump_cmap_table): Fix previous change.
99
100         * src/otfdrive.c (lookup_encoding_4): Fix typo.
101         (get_uvs_glyph): Argument changed.
102         (check_cmap_uvs): Adjusted for the above change.
103
104         * src/otfopen.c (READ_UINT24): New macro.
105         (read_cmap_uvs_table): Argument changed.  Complete the code.
106         (read_cmap_table): Adjusted for the above change.  Fix typo.
107
108         * src/otf.h (OTF_cmapSegment): Fix typo.
109         (OTF_EncodingSubtable4): Fix typo.
110         (OTF_UVSMapping): New type.
111         (OTF_UnicodeValueRange): New type.
112         (OTF_VariationSelectorRecord): New type.
113         (OTF_EncodingSubtable14): Fix previous change.
114
115 2008-12-22  Kenichi Handa  <handa@m17n.org>
116
117         * example/otfdump.c (dump_cmap_table): Handle format 14.
118
119         * src/otfdrive.c (check_cmap_uvs): New function.  Not yet completed.
120         (UVS_P): New macro.
121         (OTF_drive_cmap): Check UVS (Unicode Variation Sequences).
122         (get_uvs_glyph): New function.
123
124         * src/otfopen.c (read_cmap_uvs_table): New function.
125         (read_cmap_table): Handle format 14 (Unicode Variation Sequences).
126         Not yet completed.
127
128         * src/otf.h (OTF_EncodingSubtable14): New type.
129         (OTF_EncodingSubtable): New union member f.f14.
130
131 2008-12-03  Kenichi Handa  <handa@m17n.org>
132
133         * example/otfview.c (update_seq_area): Call OTF_drive_gpos2
134         instead of OTF_drive_gpos.  Handle the accumulated positioning.
135
136         * src/otfdrive.c (setup_lookup_flags): The last argument changed
137         to lookup_flags.  Just set the elements to 1 or 0.
138         (gstring_insert_for_gpos): New function.
139         (lookup_gpos): New arg accumulate.  Insert pseudo glyphs to
140         accumulate positioning if necessary.
141         (OTF_drive_gsub_internal): Adjusted for the change of
142         setup_lookup_flags.
143         (OTF_drive_gpos_internal): Renamed from OTF_drive_gpos.  Adjusted
144         for the change of setup_lookup_flags and lookup_gpos.
145         (OTF_drive_gpos): Just call OTF_drive_gpos_internal with
146         accumulate == 0.
147         (OTF_drive_gpos2): New function.
148
149         * src/otf.h (OTF_drive_gpos2): Extern it.
150
151 2008-11-27  Simon Zamecnik  <zamecnik@ui42.sk>  (tiny change)
152
153         * src/otfdrive.c (setup_lookup_indices): New arg LangSys.
154         (OTF_drive_gsub_internal, OTF_drive_gpos): Adjusted for the above
155         change.
156
157 2008-07-01  Kenichi Handa  <handa@m17n.org>
158
159         * src/otfopen.c (make_stream, setup_stream)
160         (make_stream_from_ft_face, free_stream, read_offset_table): Make
161         them static.
162
163 2008-06-29  Kenichi Handa  <handa@m17n.org>
164
165         * Version 0.9.8 released.
166
167 2008-06-29  Kenichi Handa  <handa@m17n.org>
168
169         * configure.ac: Versions changed to 0.9.8.
170
171         * example/otfview.c (DEVICE_DELTA): Handle an invalid table.
172
173         * example/otfdump.c (dump_device_table): Handle an invalid table.
174
175         * src/otfopen.c (read_device_table): Accept an invalid table.
176
177 2007-12-28  Kenichi Handa  <handa@ni.aist.go.jp>
178
179         * Version 0.9.7 released.
180
181 2007-12-28  Kenichi Handa  <handa@ni.aist.go.jp>
182
183         * configure.ac: Versions changed to 0.9.7.
184
185 2007-12-20  Kenichi Handa  <handa@ni.aist.go.jp>
186
187         * src/otfdrive.c (gstring_subst): If a glyph is changed, set the
188         character code to 0, and update GlyphClass.
189
190 2007-10-29  Kenichi Handa  <handa@m17n.org>
191
192         * example/otfdump.c (dump_chain_class_set_list): Ignore an element
193         whose offset is zero.
194
195 2007-09-06  Kenichi Handa  <handa@m17n.org>
196
197         * src/otfdrive.c (lookup_gpos): Ignore mark glyphs while
198         processing GPOS_MarkBase1.
199
200 2007-08-17  Kenichi Handa  <handa@m17n.org>
201
202         * src/otfdrive.c (lookup_gpos): Fix handling of IGNORED_GLYPH.
203
204 2007-08-06  Kenichi Handa  <handa@m17n.org>
205
206         * src/otfdrive.c (gstring_subst): If otf->cmap is NULL, set
207         character code of a glyph to 0.
208         (OTF_drive_gsub): If otf->cmap is NULL, try to load it.
209
210 2007-07-13  Kenichi Handa  <handa@m17n.org>
211
212         * Version 0.9.6 released.
213
214 2007-07-13  Kenichi Handa  <handa@m17n.org>
215
216         * configure.ac: Updated to 0.9.6.
217
218         * src/otf.h (LIBOTF_VERSION): Updated to 0.9.6.
219         (LIBOTF_RELEASE_NUMBER): Updated to 6.
220
221 2007-07-09  Kenichi Handa  <handa@m17n.org>
222
223         * src/otfdrive.c (gstring_subst): Remove a glyph if it is ignored
224         because of 0 glyph ID.
225
226 2007-01-09  Kenichi Handa  <handa@m17n.org>
227
228         * src/otf.h: Adjusted for C++.  Adjusted many prototypes to
229         contain `const' qualifiers.
230
231         * src/otferror.h (otf__error): Add `const' qualifier.
232
233         * src/otferror.c (otf__error, OTF_perror): Add `const' qualifiers.
234
235         * src/otfdrive.c: Add many `const' qualifiers.
236
237         * src/otfopen.c: Add many `const' qualifiers.
238
239 2006-07-25  Kenichi Handa  <handa@m17n.org>
240
241         * Version 0.9.5 released.
242
243 2006-07-25  Kenichi Handa  <handa@m17n.org>
244
245         * src/otfdrive.c (gstring_subst): Setup all members of struct
246         OTF_Glyph.
247         (lookup_gsub): Call gstring_subst with correct args.
248
249 2006-07-19  Kenichi Handa  <handa@m17n.org>
250
251         * libotf.pc.in: New file.
252
253         * Makefile.am (pkgconfigdir, pkgconfig_DATA): New variables.
254
255         * configure.ac: Updated to 0.9.5.
256         (FREETYPE_INC, FREETYPE_LD_FLAGS): AC_SUBST them.
257         (AC_CONFIG_FILES): Include libotf.pc.
258
259         * libotf-config.in: Include @FREETYPE_INC@ and @FREETYPE_LD_FLAGS@
260         in output.
261
262 2006-07-18  Kenichi Handa  <handa@m17n.org>
263
264         * example/otfview.c (bitmap): Array increated to cover full
265         Unicode.
266         (fontindex): New variable.
267         (update_glyph_area): Adjusted for the change of `bitmap'.
268         (GlyphProc): Likewise.
269         (help): New function.
270         (main): Accept a new 2nd arg INDEX.
271
272 2006-07-14  Kenichi Handa  <handa@m17n.org>
273
274         * src/otfopen.c: Include FT_TRUETYPE_TABLES_H.
275         (make_stream): New arg name.  Caller changed.
276         (setup_stream): Delete arg name.
277         (make_stream_from_ft_face): New function.
278         (read_cmap_table): Fix typo (`i'->`j').
279         (read_header_part): New arg face.  Caller changed.
280         (OTF_open_ft_face): New function.
281
282         * src/otf.h (LIBOTF_VERSION): Updated to 0.9.5.
283         (LIBOTF_RELEASE_NUMBER): Updated to 5.
284         (OTF_open_ft_face): Extern it.
285
286 2006-07-11  Kenichi Handa  <handa@m17n.org>
287
288         * src/otf.h (OTF_ERROR_FT_FACE): New macro.
289
290 2006-07-07  Kenichi Handa  <handa@m17n.org>
291
292         * src/otf.h (OTF_Anchor): Distinguish XDeviceTable and
293         YDeviceTable.
294
295 2006-06-23  Kenichi Handa  <handa@m17n.org>
296
297         * example/otfview.c (update_glyph_area): Don't use none_pixmap for
298         glyph index 0 if charmap_index is negative.
299
300         * example/otftobdf.c (main): Call dump_image with the arg full as 0.
301
302         * src/otfopen.c (read_table_directory): Fix setting of tag name.
303
304 2006-02-15  Kenichi Handa  <handa@m17n.org>
305
306         * example/otfview.c (DumpProc): Fix handling of non-existing glyph.
307         (create_otf_script_widgets): Fix typo; gsub -> gpos.
308
309 2006-02-10  Kenichi Handa  <handa@m17n.org>
310
311         * src/otfopen.c (read_table_directory): Fix setting of
312         OTF_TableDirectory->name.
313
314 2006-02-07  Kenichi Handa  <handa@m17n.org>
315
316         * example/otfview.c (DumpProc): Fix calculation of x/y offsets.
317
318 2006-01-27  Kenichi Handa  <handa@m17n.org>
319
320         * example/otfview.c (DumpProc): Completely re-written to produce
321         PostScirpt instead of PBM.
322
323 2005-12-22  Kenichi Handa  <handa@m17n.org>
324
325         * Version 0.9.4 released.
326
327         * src/otf.h (LIBOTF_VERSION): Updated to "0.9.4"
328         (LIBOTF_RELEASE_NUMBER): Update to 4.
329
330 2005-12-22  Kenichi Handa  <handa@m17n.org>
331
332         * example/otfview.c (update_glyph_area): Use non_pixmap for
333         non-existing glyphs.
334
335 2005-11-22  Kenichi Handa  <handa@m17n.org>
336
337         * example/otfview.c (main) [! HAVE_X11_XAW_COMMAND_H]: Fix args to
338         fprintf.
339
340         * configure.ac: Use AC_CHECK_HEADERS instead of AC_CHECK_HEADER.
341
342 2005-09-02  Kenichi Handa  <handa@m17n.org>
343
344         * example/Makefile.am (otfview_LDFLAGS): Use @X11_XT_XAW_XMU@
345         instead of directory listing libraries.
346
347         * autogen.sh: Run automake with -a -c.
348
349         * configure.ac (AC_INIT): Version updated to 0.9.4.
350         (AM_INIT_AUTOMAKE): Likewise.
351         (X11_XT_XAW_XMU): New variable.  Set to a library list for Xaw if
352         X11 is available.
353
354 2005-07-11  Kenichi Handa  <handa@m17n.org>
355
356         * src/otfdrive.c (OTF_drive_gsub_internal): Call OTF_get_table
357         unconditionally.
358         (OTF_drive_gpos): Likewise.
359
360         * src/otfopen.c (read_gsub_gpos_table): Set *table->address earlier.
361         (OTF_check_features): Set script_list and feature_list according
362         to gsubp.  Even if failed in getting features, if all requested
363         features are negative, return 1.
364
365 2005-06-29  Kenichi Handa  <handa@m17n.org>
366
367         * example/otfview.c (get_features): Don't return "*" even if all
368         features are being used.
369
370         * src/otfdrive.c (OTF_drive_gsub_internal): Initialize
371         positioning_type member to 0.
372         (OTF_drive_gpos): Likewise.
373
374 2005-06-24  Kenichi Handa  <handa@m17n.org>
375
376         * src/otfopen.c (OTF_check_features): If the MSB of a feature tag
377         is set, treat it as a negation flag.
378
379 2005-06-14  Kenichi Handa  <handa@m17n.org>
380
381         * src/otfopen.c (OTF_check_features): If gsubp is zero, check gpos
382         scripts and features.  Treat feature tag 0 as wildcard.
383
384 2005-05-26  Kenichi Handa  <handa@m17n.org>
385
386         * example/otfview.c (langsys_tag): New variable.
387         (get_features): Check if rec->langsys and rec->features are not
388         NULL.
389         (update_seq_area): Delete unused var.
390         (setup_feature_rec): Setup rec->langsys correctly.  Don't allocate
391         rec->features here.
392         (compose_script_langsys, decompose_script_langsys): New functions.
393         (ScriptProc): Fix handling of the arg call_data.
394         (create_otf_script_widgets): Check all langsys.  Allocate
395         gsub.features and gpos.features here.
396         (create_otf_widgets): Delete unused var.
397
398         * example/otflist.c (print_gsub_gpos_info): Don't print
399         superfluous space.
400         (main): Delete unused variables.
401
402 2005-05-23  Kenichi Handa  <handa@m17n.org>
403
404         * src/otfopen.c (OTF_check_features): Fix indexing to
405         feature_list->Feature.
406         (OTF_tag): Handle the case that the length of NAME is short.
407
408 2005-05-21  Kenichi Handa  <handa@m17n.org>
409
410         * src/otfopen.c (OTF_get_features): If table_info doesn't have
411         stream nor address, return -1.
412
413 2005-05-19  Kenichi Handa  <handa@m17n.org>
414
415         * src/otf.h (OTF_get_scripts, OTF_get_features,
416         OTF_check_features): Extern them.
417
418         * src/otfopen.c (enum OTF_ReaderFlag): New enum.
419         (OTF_TableInfo): Change the prototype of the member `reader'.
420         Caller changed.
421         (read_head_table, read_name_table, read_cmap_table)
422         (read_gdef_table): Adjusted for the change of OTF_TableInfo.
423         (read_feature_list): Seek the stream at first.
424         (read_gsub_gpos_table): Adjusted for the change of OTF_TableInfo.
425         Pay attention to the arg `flag'.
426         (read_gsub_table, read_gpos_table): Adjusted for the change of
427         OTF_TableInfo.
428         (OTF_get_table): Likewise.
429         (OTF_get_scripts, OTF_get_features, OTF_check_features): New
430         functions.
431
432 2005-05-13  Kenichi Handa  <handa@m17n.org>
433
434         * src/otfdrive.c (lookup_gsub): Increment `gidx' correctly in the
435         case of GSUB_Ligature1.
436
437 2005-02-18  Kenichi Handa  <handa@m17n.org>
438
439         * src/otferror.c (error_message): Allocate it statically.
440         (otf__error): Don't allocate error_message dynamically.
441         (OTF_perror): Adjust for the above changes.
442
443 2005-02-17  Kenichi Handa  <handa@m17n.org>
444
445         * example/otflist.c (filter): Accept extentions ".ttc" and ".TTC".
446
447         * src/otfopen.c (read_cmap_table): Delete unsed var.
448
449         * src/otfdrive.c (gstring_subst): Correctly set temp.f.index.
450         (lookup_gsub): Fix updating gidx.
451         (gstring_subst): New arg OTF.  Callers changed.
452         (lookup_gsub): New arg OTF.  Callers changed.
453
454 2004-12-27  Kenichi Handa  <handa@m17n.org>
455
456         * Version 0.9.3 released.
457
458 2004-11-19  Kenichi Handa  <handa@m17n.org>
459
460         * libotf-config: Update to version "0.9.3".
461
462         * configure.ac (AC_INIT): Update to 0.9.3.
463         (AM_INIT_AUTOMAKE): Likewise.
464
465         * src/otf.h (LIBOTF_VERSION): Update to "0.9.3".
466         (LIBOTF_RELEASE_NUMBER): Update to 3.
467
468 2004-11-09  Kenichi Handa  <handa@m17n.org>
469
470         * src/otf.h (OTF_Glyph): Delete member alternate_set.
471         (OTF_drive_gsub_alternate): Extern it.
472
473         * src/otfdrive.c (lookup_gsub): New arg alternate_subst.  Callers
474         changed.
475         (OTF_drive_gsub_internal): Renamed from OTF_drive_gsub.
476         (OTF_drive_gsub): Just call OTF_drive_gsub_internal.
477         (OTF_drive_gsub_alternate): New function.
478
479         * example/otfview.c (alt_subst, do_alternate_subst): New
480         variables.
481         (update_seq_area): If do_alternate_subst, call
482         OTF_drive_gsub_alternate.  Correctly set advance.  Don't check
483         g->alternate_set.
484         (AltSubstProc): New function.
485         (create_widgets): Create AltSubst widget.
486
487 2004-11-08  Kenichi Handa  <handa@m17n.org>
488
489         * example/otfview.c: Include "config.h".
490
491 2004-11-02  Kenichi Handa  <handa@m17n.org>
492
493         * example/otfview.c (MAX_FEATURE_COUNT): Delete this macro.
494         (FeatureElement): New type.
495         (FeatureRec): New element num_features and parent.
496         (update_seq_area): Show alternate glyphs if any.
497         (setup_feature_rec): (Re)allocate rec->features.  Create widgets.
498         (create_otf_widgets): Don't create widgets here.
499
500         * example/otfdump.c (dump_cmap_table): Support Format 2 of cmap.
501
502         * src/otfopen.c (read_cmap_table): Support Format 2 of cmap.
503
504         * src/otfdrive.c (lookup_gsub): For Format 3, set
505         OTF_Glyph->alternate_set.
506
507         * src/otf.h (OTF_EncodingSubtable2): New members subHeaderCount
508         and glyphIndexCount.
509         (OTF_Glyph): New member alternate_set.
510
511 2004-10-27  Kenichi Handa  <handa@m17n.org>
512
513         * example/otfview.c: Pay attention to HAVE_X11_XAW_COMMAND_H.
514
515         * configure.ac: Check existence of X11/Xaw/Command.h.
516
517 2004-09-03  Kenichi Handa  <handa@m17n.org>
518
519         * src/otfdrive.c (GSTRING_INSERT): Fix size of reallocating
520         memory.
521         (lookup_gpos): For LooupType 5, fix finding a base/ligature glyph.
522
523         * example/otfview.c (update_seq_area): Use malloc and free for
524         gstring.glyphs.
525
526 2004-08-13  Kenichi Handa  <handa@m17n.org>
527
528         * Version 0.9.2 released.
529
530 2004-08-13  Kenichi Handa  <handa@m17n.org>
531
532         * src/otfdrive.c (IGNORED_GLYPH): Fix checking of MarkAttachClass.
533
534         * configure.ac: Updated to 0.9.2.
535
536         * src/otf.h (LIBOTF_VERSION): Updated to 0.9.2.
537         (LIBOTF_RELEASE_NUMBER): Updated to 2.
538
539 2004-08-09  Kenichi Handa  <handa@m17n.org>
540
541         * Version 0.9.1 released.
542
543 2004-08-09  Kenichi Handa  <handa@m17n.org>
544
545         * src/otfdrive.c (setup_lookup_indices): Fix handling of "*" in
546         features.
547
548         * example/otfview.c (update_seq_area): Call OTF_drive_gdef only
549         when otf is not NULL.
550
551 2004-08-07  Kenichi Handa  <handa@m17n.org>
552
553         * example/otfview.c (FeatureProc): Highlight selected features by
554         changing border width, not by changing fore and back color.
555         (setup_feature_rec): Setup internal height and width of widgets.
556         (create_otf_widgets): Likewise.
557
558         * src/otfdrive.c (IGNORED_GLYPH): New macro.
559         (gstring_subst, match_ids, match_chain_ids, match_classes)
560         (match_chain_classes, match_coverages, match_chain_coverages):
561         use IGNORED_GLYPH.
562         (lookup_gsub): Likewise.  Include OTF_MarkAttachmentType in flag.
563         (lookup_gpos): Likewise.
564
565 2004-08-06  Kenichi Handa  <handa@m17n.org>
566
567         * src/otfdrive.c (lookup_gsub): Fix handling of Extension lookup.
568         (lookup_gpos): Support Extension lookup.
569         (gstring_subst): Fix previous change.
570
571 2004-08-05  Kenichi Handa  <handa@m17n.org>
572
573         * src/otf.h (enum OTF_LookupFlagBit): Fix OTF_IgnoreMarks.
574
575         * example/otfview.c (update_seq_area): Fix sign of yoff.
576         Support more positioning_type.
577
578         * example/otfdump.c (dump_lookup_subtable_gpos): Add support for
579         LookupType 5.
580
581         * src/otfopen.c (read_ligature_attach): Fix for the case that an
582         offset is NULL.
583
584         * src/otfdrive.c (lookup_gpos): Add support for LookupType 5.
585         Fix handling of flag.
586         (gstring_subst): Fix previous change.
587
588 2004-08-04  Kenichi Handa  <handa@m17n.org>
589
590         * example/otfview.c (bidi, reversed): New variables.
591         (update_seq_area): Call OTF_drive_gdef.  If reversed is nonzero,
592         reorder glyphs properly.  Create pixmap if necessary.  Handle
593         OTF_XAdvance and OTF_XAdvDevice.
594         (BidiProc): New function.
595         (create_widgets): Setup bidi.
596
597         * src/otfdrive.c (gstring_subst): New arg flag.  Caller changed.
598         Ignore glyphs specified in flag.
599         (match_ids, match_classes, match_coverages): Likewise.
600         (match_chain_ids, match_chain_classes, match_chain_coverages): New
601         arg flag.
602         (lookup_gsub): Fix handling of LookupFlag.
603         (lookup_gpos): Likewise.  Support more LookupType.
604
605         * src/otf.h (OTF_LookupFlagIgnoreMask): New macro.
606
607 2004-07-29  Kenichi Handa  <handa@m17n.org>
608
609         * example/otfview.c (create_widgets): Fix width of index glyphs..
610
611 2004-07-26  Kenichi Handa  <handa@m17n.org>
612
613         * src/otfopen.c (read_value_record): Fix typo.
614
615         * src/otfdrive.c (lookup_gpos): Don't apply a GPOS feature twice.
616         (OTF_drive_gpos): Initialize values positioning_type memeber.
617         (OTF_drive_gsub): Fix previous change.
618
619 2004-07-24  Kenichi Handa  <handa@m17n.org>
620
621         * src/otfdrive.c (gstring_subst): Set `c' and `f.index' of
622         OTF_Glyph.
623         (OTF_drive_gsub): Iniialize f.index member of OTF_Glhph.
624
625         * src/otf.h (OTF_Glyph): New union member u.index.
626
627 2004-07-23  Kenichi Handa  <handa@m17n.org>
628
629         * example/otfview.c: Big change to implement selection of script.
630
631 2004-07-12  Kenichi Handa  <handa@m17n.org>
632
633         * example/otfview.c: Big change to implement driving OpenType
634         tables (GSUB and GPOS).
635
636         * src/otfdrive.c (get_langsys): If script is NULL, use the first
637         one in script_list.
638
639 2004-07-09  Kenichi Handa  <handa@m17n.org>
640
641         * src/otfdrive.c (lookup_gpos): Ignore glyphs whose ID is 0 (fix
642         for the case of LookupType 2).
643
644 2004-07-08  Kenichi Handa  <handa@m17n.org>
645
646         * src/otfopen.c (read_class_set_list): Allocate the array *set
647         by OTF_CALLOC.
648
649 2004-07-07  Kenichi Handa  <handa@m17n.org>
650
651         * src/otfdrive.c (lookup_gsub): For LookupType 5 Subformat 2, if
652         ClassSet is not defined, do nothing.
653
654 2004-06-29  Kenichi Handa  <handa@m17n.org>
655
656         * src/otfdrive.c (lookup_gsub): Fix handling of lookup type 6
657         format 3.
658
659 2004-05-28  Kenichi Handa  <handa@m17n.org>
660
661         * example/otflist.c: Include <sys/types.h> and "config.h".
662         (next_file): New function.
663         (main): Call next_file.
664
665         * configure.ac: Check functions scandir and alphasort.
666
667 2004-05-06  Kenichi Handa  <handa@m17n.org>
668
669         * example/otftobdf.c (registry): New variable.
670         (dump_header): Include registry in the font name.
671         (main): Handle the encoding arg of the format M-N.  Without this
672         arg, generate a font with raw-encoding.
673
674         * src/otfdrive.c: Include "config.h".  Delete '//' style comments.
675         (lookup_encoding_0, lookup_encoding_2, lookup_encoding_4)
676         (lookup_encoding_6, lookup_encoding_8, lookup_encoding_10)
677         (lookup_encoding_12, OTF_drive_cmap2): New functions.
678
679         * src/otfopen.c (read_name): Argument changed.  Set
680         OTF_NameRecord->ascii.  If possible, convert Unicode sequence to
681         ASCII.
682         (read_name_table): Adjusted for the change of read_name.
683         (read_cmap_table): Signal an error (not-yet-supported) if format
684         is 2.  Support for formats, 8, 10, 12.
685         (read_value_record): Clear value_record at first.
686         (read_lookup_subtable_gpos): Fix for the case subFormat is 1 and
687         2.
688         (OTF_open): Check file name extension.
689
690         * example/otflist.c: Include <otf.h>.
691         (FATAL_ERROR): New macro.
692         (print_tag, print_gsub_gpos_info, help_and_exit): New functions.
693         (main): Handle -h, --help, -l args.  Prefer family/style names
694         extracted by the otf library.
695
696 2004-03-30  Kenichi Handa  <handa@m17n.org>
697
698         * src/otfopen.c (read_value_record): Clear value_record at
699         first.
700         (read_lookup_subtable_gpos): For Lookup Type 1, read Coverage at
701         first.
702
703 2004-03-29  Kenichi Handa  <handa@m17n.org>
704
705         * example/otfdump.c (dump_lookup_subtable_gsub): For Lookup Type
706         7, fix arg to dump_lookup_subtable_gsub.
707         (dump_lookup_subtable_gpos): Support Lookup Type 9.
708
709         * autogen.sh: Run automake after autoheader.
710
711         * src/otfopen.c (OTF_close): Free otf->filename.
712
713 2004-02-01  Kenichi Handa  <handa@m17n.org>
714
715         * Version 0.9 released.
716
717 \f
718 Copyright (C) 2003, 2004
719   National Institute of Advanced Industrial Science and Technology (AIST)
720   Registration Number H15PRO112
721
722 This file is part of the m17n library.
723
724 The m17n library is free software; you can redistribute it and/or
725 modify it under the terms of the GNU Lesser General Public License
726 as published by the Free Software Foundation; either version 2.1 of
727 the License, or (at your option) any later version.
728
729 The m17n library is distributed in the hope that it will be useful,
730 but WITHOUT ANY WARRANTY; without even the implied warranty of
731 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
732 Lesser General Public License for more details.
733
734 You should have received a copy of the GNU Lesser General Public
735 License along with the m17n library; if not, write to the Free
736 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
737 02111-1307, USA.