update to 0.9.12
[platform/upstream/harfbuzz.git] / TODO
1 General fixes:
2 =============
3
4 - AAT 'morx' implementation.
5
6 - Return "safe-to-break" bit from shaping.
7
8 - Implement 'rand' feature.
9
10 - mask propagation? (when ligation, "or" the masks).
11
12 - Warn at compile time (and runtime with HB_DEBUG?) if no Unicode / font
13   funcs found / set.
14
15 - Do proper rounding when scaling from font space?  May be a non-issue.
16
17 - Misc features:
18   * init/medi/fina/isol for non-cursive scripts
19
20
21 API issues to fix before 1.0:
22 ============================
23
24 - API to accept a list of languages?
25
26 - Add init_func to font_funcs.  Adjust ft.
27
28 - hb-ft load_flags issues.
29
30 - Add pkg-config files for glue codes (harfbuzz-glib, etc)
31
32 - 'const' for getter APIs? (use mutable internally)
33
34 - Remove hb_ot_shape_glyphs_closure()?
35
36
37 API additions
38 =============
39
40 - Language to/from script.
41
42 - blob_from_file?
43
44 - Add hb-cairo glue
45
46 - Add sanitize API (and a cached version, that saves result on blob user-data)
47
48 - BCP 47 language handling / API (language_matches?)
49
50 - Add hb_font_create_unscaled()?
51
52 - Add query / enumeration API for aalt-like features?
53
54 - SFNT api? get_num_faces? get_table_tags? (there's something in stash)
55
56 - Add segmentation API
57
58 - Add hb-fribidi glue?
59
60
61 hb-view / hb-shape enhancements:
62 ===============================
63
64 - Add --width, --height, --auto-size, --ink-box, --align, etc?
65
66
67 Tests to write:
68 ==============
69
70 - ot-layout enumeration API (needs font)
71
72 - Finish test-shape.c, grep for TODO
73
74 - Finish test-unicode.c, grep for TODO
75
76 - GObject, FreeType, etc
77
78 - hb_cache_t and relatives
79
80 - hb_feature_to/from_string
81 - hb_buffer_[sg]et_contents