Behdad Esfahbod [Tue, 27 Sep 2011 17:50:45 +0000 (13:50 -0400)]
Add TODO item
Behdad Esfahbod [Tue, 27 Sep 2011 16:38:16 +0000 (12:38 -0400)]
Fix GSUB lookuptype 1 subtype 1 delta wrapping
Behdad Esfahbod [Tue, 27 Sep 2011 16:36:26 +0000 (12:36 -0400)]
[util] s/%d/%u/ when printing glyph ids and clusters
Behdad Esfahbod [Wed, 21 Sep 2011 20:50:39 +0000 (16:50 -0400)]
Minor
Behdad Esfahbod [Wed, 21 Sep 2011 20:49:33 +0000 (16:49 -0400)]
Fix possible leaks
Behdad Esfahbod [Wed, 21 Sep 2011 20:41:43 +0000 (16:41 -0400)]
hb-shape: In --no-glyph-names, output glyph number directly
Ie. write "86" instead of "gid86".
Behdad Esfahbod [Tue, 20 Sep 2011 18:43:55 +0000 (14:43 -0400)]
[util] Fix option parsing
Wow, who knew bool is one byte and I was using it as a 4byte int?!
C++ auto casts fails you in mysterious ways...
Behdad Esfahbod [Tue, 20 Sep 2011 18:34:06 +0000 (14:34 -0400)]
Whitespace
Behdad Esfahbod [Tue, 20 Sep 2011 15:20:53 +0000 (11:20 -0400)]
[util] Add hb-diff
A diff program written in Python that is more suitable for comparing
hb-shape output from different backends. Main differences with stock
diff:
1. It outputs one line's comparison at a time, as opposed to batching
'+' lines and '-' lines.
2. It colors the part of the line that changed, taking word boundaries
into consideration.
You can pipe the colored output to 'less -r'.
Behdad Esfahbod [Tue, 20 Sep 2011 03:10:22 +0000 (23:10 -0400)]
Rewrite ICU detection code with in-house macros
At least works for cross-compiling now...
Behdad Esfahbod [Mon, 19 Sep 2011 22:51:48 +0000 (18:51 -0400)]
[graphite] Add note about graphite shaker brokenness
Behdad Esfahbod [Mon, 19 Sep 2011 21:57:02 +0000 (17:57 -0400)]
[util] Account for line-space in surface size
Behdad Esfahbod [Mon, 19 Sep 2011 20:56:21 +0000 (16:56 -0400)]
[util] Rename --output to --output_file, and --format to --output-format
Behdad Esfahbod [Mon, 19 Sep 2011 20:53:47 +0000 (16:53 -0400)]
Minor
Behdad Esfahbod [Mon, 19 Sep 2011 20:50:18 +0000 (16:50 -0400)]
Really fix build this time
Behdad Esfahbod [Mon, 19 Sep 2011 20:49:03 +0000 (16:49 -0400)]
Fix dist
Behdad Esfahbod [Mon, 19 Sep 2011 20:41:17 +0000 (16:41 -0400)]
[util] Add hb-shape utility
Like hb-view, but prints out buffer contents.
The output format is kinda cryptic. Suggestions welcome.
Behdad Esfahbod [Mon, 19 Sep 2011 20:15:22 +0000 (16:15 -0400)]
Minor
Behdad Esfahbod [Mon, 19 Sep 2011 19:45:52 +0000 (15:45 -0400)]
[util] If no text is provided, simply call cairo_show_glyphs()
Behdad Esfahbod [Mon, 19 Sep 2011 18:53:26 +0000 (14:53 -0400)]
[uniscribe] Various improvements
Behdad Esfahbod [Mon, 19 Sep 2011 13:58:55 +0000 (09:58 -0400)]
[util] Move font-size into view-options
Behdad Esfahbod [Sat, 17 Sep 2011 13:59:58 +0000 (09:59 -0400)]
Fix Linux build when io.h is available
Bug 40953 - fail compile git: make[2]: *** [hb_view-options.o] Error 1
Behdad Esfahbod [Fri, 16 Sep 2011 20:59:17 +0000 (16:59 -0400)]
Fix "[util] Fix hb-view crash with bogus font."
Behdad Esfahbod [Fri, 16 Sep 2011 20:56:34 +0000 (16:56 -0400)]
Cosmetic
Behdad Esfahbod [Fri, 16 Sep 2011 20:52:26 +0000 (16:52 -0400)]
[util] Fix hb-view crash with bogus font
Behdad Esfahbod [Fri, 16 Sep 2011 20:40:44 +0000 (16:40 -0400)]
Minor
Behdad Esfahbod [Fri, 16 Sep 2011 20:34:39 +0000 (16:34 -0400)]
TODO items
Behdad Esfahbod [Fri, 16 Sep 2011 20:33:18 +0000 (16:33 -0400)]
Minor
Behdad Esfahbod [Fri, 16 Sep 2011 16:30:50 +0000 (12:30 -0400)]
Minor
Behdad Esfahbod [Fri, 16 Sep 2011 06:08:36 +0000 (02:08 -0400)]
Fix reading text from stdin
Behdad Esfahbod [Fri, 16 Sep 2011 05:16:41 +0000 (01:16 -0400)]
Move code around
Behdad Esfahbod [Fri, 16 Sep 2011 05:11:30 +0000 (01:11 -0400)]
Always shape at size=upem
Fixes bug with uniscribe not handling GIGANTIC sizes.
Behdad Esfahbod [Fri, 16 Sep 2011 04:54:05 +0000 (00:54 -0400)]
Minor
Behdad Esfahbod [Fri, 16 Sep 2011 04:38:19 +0000 (00:38 -0400)]
Fix binary stdin/stdout io in Windows
Make --font-file accept "-" to mean stdin, and have it work
in Windows too!
Behdad Esfahbod [Thu, 15 Sep 2011 22:09:49 +0000 (18:09 -0400)]
Minor
Behdad Esfahbod [Thu, 15 Sep 2011 21:52:00 +0000 (17:52 -0400)]
[hb-view] Make print to stdout work in Windows
Apparently there's no equivalent to "/dev/stdout", so write using
stdio to be able to output to stdout.
Behdad Esfahbod [Thu, 15 Sep 2011 20:29:51 +0000 (16:29 -0400)]
Minor
Behdad Esfahbod [Tue, 13 Sep 2011 17:33:11 +0000 (13:33 -0400)]
Fix test
Behdad Esfahbod [Tue, 13 Sep 2011 17:30:39 +0000 (13:30 -0400)]
[util] Refactor hb-view completely
Now we can use the same code to do other utils...
Behdad Esfahbod [Thu, 8 Sep 2011 21:08:32 +0000 (17:08 -0400)]
More reshuffling
Behdad Esfahbod [Thu, 8 Sep 2011 20:50:24 +0000 (16:50 -0400)]
[util] Simplify more
Behdad Esfahbod [Thu, 8 Sep 2011 20:49:02 +0000 (16:49 -0400)]
[util] Move code around
Behdad Esfahbod [Thu, 8 Sep 2011 20:43:15 +0000 (16:43 -0400)]
Minor
We now support using -1 for NUL-terminated strings.
Behdad Esfahbod [Thu, 8 Sep 2011 20:42:37 +0000 (16:42 -0400)]
[util] Move code around
Behdad Esfahbod [Thu, 8 Sep 2011 20:00:04 +0000 (16:00 -0400)]
[util] Further refactor option parsing
Behdad Esfahbod [Thu, 8 Sep 2011 17:35:17 +0000 (13:35 -0400)]
Refine Indic scripts, following Martin Hosken's recommendation
Behdad Esfahbod [Fri, 2 Sep 2011 17:31:19 +0000 (13:31 -0400)]
Pass through unknown ISO 639-3 language tags to OpenType engine
In hb_ot_tag_from_language(), if first component of an unknown
language is three letters long, use it directly as OpenType language
tag (after case conversion and padding).
Behdad Esfahbod [Fri, 2 Sep 2011 16:39:20 +0000 (12:39 -0400)]
[graphite] Don't preload glyphs
Doesn't seem to be slower.
Behdad Esfahbod [Fri, 26 Aug 2011 11:39:49 +0000 (13:39 +0200)]
Minor
Behdad Esfahbod [Fri, 26 Aug 2011 07:40:54 +0000 (09:40 +0200)]
[graphite2] Chop a few more lines
Behdad Esfahbod [Fri, 26 Aug 2011 07:33:06 +0000 (09:33 +0200)]
Minor
Behdad Esfahbod [Fri, 26 Aug 2011 07:30:49 +0000 (09:30 +0200)]
[graphite] Use buffer->replace_glyphs()
Behdad Esfahbod [Fri, 26 Aug 2011 07:29:42 +0000 (09:29 +0200)]
Add buffer->replace_glyphs()
Behdad Esfahbod [Fri, 26 Aug 2011 07:27:13 +0000 (09:27 +0200)]
Minor
Behdad Esfahbod [Fri, 26 Aug 2011 07:25:04 +0000 (09:25 +0200)]
[graphite] Only pass the first part language tag to graphite
Still not sure about:
1) Case. We pass lowercase for now. Would be nice if graphite was
uppercase 3letter like OpenType,
2) Padding. IMO, tag padding is always with spaces, but Martin was
talking about NUL bytes.
Behdad Esfahbod [Fri, 26 Aug 2011 07:18:53 +0000 (09:18 +0200)]
[API] Make all _from_string() functions take a len parameter
Can be -1 for NUL-terminated string. This is useful for passing parts
of a larger string to a function without having to copy or modify the
string first.
Affected functions:
hb_tag_t hb_tag_from_string()
hb_direction_from_string()
hb_language_from_string()
hb_script_from_string()
Behdad Esfahbod [Thu, 25 Aug 2011 20:46:21 +0000 (22:46 +0200)]
[graphite2] Bail if grface is NULL
Behdad Esfahbod [Thu, 25 Aug 2011 07:08:53 +0000 (09:08 +0200)]
Reorder combining-class to better suit Arabic shadda mark-mark positioning
As reported by Khaled on the list:
"After the introduction of canonical reordering of combining marks
(commit 34c22f8), I'm no longer able to do mark/mark substitution or
positioning for mark sequences that involve shadda as a first mark (or
most interesting sequences at least).
"After some digging, it turned out that shadda have a ccc=33 while most
Arabic marks that combine with it have a lower ccc value, which results
in the shadda being reordered after the other mark which,
unsurprisingly, breaks my contextual substitution and mkmk anchors."
See:
http://unicode.org/faq/normalization.html#8
http://unicode.org/faq/normalization.html#9
Behdad Esfahbod [Wed, 24 Aug 2011 17:16:13 +0000 (19:16 +0200)]
Fix make distcheck
Behdad Esfahbod [Wed, 24 Aug 2011 17:13:15 +0000 (19:13 +0200)]
Add hb-ot-hmtx-table.hh
Oops!
Behdad Esfahbod [Wed, 24 Aug 2011 01:22:49 +0000 (03:22 +0200)]
[graphite] Rewrite properly
Behdad Esfahbod [Wed, 24 Aug 2011 00:24:27 +0000 (02:24 +0200)]
Minor
Behdad Esfahbod [Wed, 24 Aug 2011 00:12:05 +0000 (02:12 +0200)]
[configure] Fix graphite bits
Behdad Esfahbod [Wed, 24 Aug 2011 00:09:04 +0000 (02:09 +0200)]
[uniscribe] Minor
Behdad Esfahbod [Tue, 23 Aug 2011 23:47:25 +0000 (01:47 +0200)]
[graphite] Minor
Behdad Esfahbod [Tue, 23 Aug 2011 23:45:47 +0000 (01:45 +0200)]
[graphite] Remove hb_graphite2_feature_check()
I don't see how this function can be useful.
Behdad Esfahbod [Tue, 23 Aug 2011 23:29:25 +0000 (01:29 +0200)]
Add graphite2 integration from Martin Hosken
To be modified, a lot.
Behdad Esfahbod [Tue, 23 Aug 2011 23:31:29 +0000 (01:31 +0200)]
Minor
Behdad Esfahbod [Mon, 22 Aug 2011 22:04:57 +0000 (00:04 +0200)]
Add a constructor for hb_prealloced_array_t
Fixes build with MSVC.
Behdad Esfahbod [Fri, 19 Aug 2011 17:59:24 +0000 (19:59 +0200)]
Add gobject enum support, but disabled for now
need to figure out the naming. The generated code doesn't have the
right name.
Behdad Esfahbod [Wed, 17 Aug 2011 21:55:29 +0000 (23:55 +0200)]
Flesh out tt funcs a bit
Behdad Esfahbod [Wed, 17 Aug 2011 17:21:44 +0000 (19:21 +0200)]
[API] Add hb_font_set_funcs_data()
Behdad Esfahbod [Wed, 17 Aug 2011 17:07:59 +0000 (19:07 +0200)]
Remove the pre_allocate argument from hb_buffer_create()
For two reasons:
1. User can always call hb_buffer_pre_allocate() themselves, and
2. Now we do a pre_alloc in add_utfX anyway, so the total number of
reallocs is limited to a small number (~3) anyway. This just makes the
API cleaner.
Behdad Esfahbod [Wed, 17 Aug 2011 17:03:06 +0000 (19:03 +0200)]
Do (nothing for) hmtx sanitize
Behdad Esfahbod [Wed, 17 Aug 2011 12:47:41 +0000 (14:47 +0200)]
Fix name-table sanitize
Behdad Esfahbod [Wed, 17 Aug 2011 12:43:45 +0000 (14:43 +0200)]
Add hhea-table support
Behdad Esfahbod [Wed, 17 Aug 2011 12:19:59 +0000 (14:19 +0200)]
Rename table files from eg maxp-private.hh to maxp-table.hh
Behdad Esfahbod [Mon, 15 Aug 2011 18:41:59 +0000 (20:41 +0200)]
[ft] FT_Get_Advance() for advance-width callbacks
Using graphite2's comparerenderer suggests that this makes hb-ft 15
times faster. No caching layer needed anymore.
Behdad Esfahbod [Mon, 15 Aug 2011 17:03:43 +0000 (19:03 +0200)]
Fix falloffs of the GOption conversion
Behdad Esfahbod [Mon, 15 Aug 2011 14:21:22 +0000 (16:21 +0200)]
Pre-allocate buffers when adding string
We do a conservative estimate of the number of characters, but still,
this limits the number of buffer reallocs to a small constant.
Behdad Esfahbod [Mon, 15 Aug 2011 14:21:06 +0000 (16:21 +0200)]
Minor
Behdad Esfahbod [Mon, 15 Aug 2011 14:15:44 +0000 (16:15 +0200)]
[ft] FT_Select_Charmap() when we create face
Behdad Esfahbod [Mon, 15 Aug 2011 07:52:05 +0000 (09:52 +0200)]
Apply 'locl' with 'ccmp' in Arabic shaper
According to Peter Constable this is indeed what Uniscribe has been
doing for years.
Mozilla Bug 667166 - wrong shape of letter when it comes at the end of
word in the arabic version of Firefox 5.0
Behdad Esfahbod [Sun, 14 Aug 2011 13:17:16 +0000 (15:17 +0200)]
Start adding gobject-introspection support
Behdad Esfahbod [Sat, 13 Aug 2011 17:03:48 +0000 (19:03 +0200)]
Fix missing return
Behdad Esfahbod [Sat, 13 Aug 2011 15:16:45 +0000 (17:16 +0200)]
Minor
Behdad Esfahbod [Thu, 11 Aug 2011 09:54:31 +0000 (11:54 +0200)]
Refactor hb-view code
Behdad Esfahbod [Wed, 10 Aug 2011 20:08:36 +0000 (22:08 +0200)]
Add uniscribe font getters
Behdad Esfahbod [Wed, 10 Aug 2011 20:00:35 +0000 (22:00 +0200)]
Implement hb_ft_font_get_face
Behdad Esfahbod [Wed, 10 Aug 2011 19:54:22 +0000 (21:54 +0200)]
Fix charset conversion
Behdad Esfahbod [Wed, 10 Aug 2011 14:28:38 +0000 (16:28 +0200)]
[util] Add hb-shape --shapers
If the specified shapers fail, hb-shape will fail immediately
Behdad Esfahbod [Wed, 10 Aug 2011 14:25:56 +0000 (16:25 +0200)]
Fix const correctness in the API
Behdad Esfahbod [Wed, 10 Aug 2011 14:07:49 +0000 (16:07 +0200)]
Reformat
Behdad Esfahbod [Wed, 10 Aug 2011 13:26:41 +0000 (15:26 +0200)]
[util] Port hb-view to GOption
Behdad Esfahbod [Tue, 9 Aug 2011 13:03:00 +0000 (15:03 +0200)]
Move hb-view into util/
Behdad Esfahbod [Tue, 9 Aug 2011 12:03:12 +0000 (14:03 +0200)]
[uniscribe] Remove zerowidth glyphs from output
Behdad Esfahbod [Tue, 9 Aug 2011 12:00:44 +0000 (14:00 +0200)]
[test/shape-complex] Print cluster and position info in --verbose
Behdad Esfahbod [Tue, 9 Aug 2011 11:52:36 +0000 (13:52 +0200)]
Fix warnings with old glib
Behdad Esfahbod [Tue, 9 Aug 2011 09:44:42 +0000 (11:44 +0200)]
Minor
Behdad Esfahbod [Tue, 9 Aug 2011 09:37:46 +0000 (11:37 +0200)]
Add fallback shaper