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