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