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