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