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