Behdad Esfahbod [Tue, 28 Jun 2011 18:13:38 +0000 (14:13 -0400)]
[Indic] Optimize Indic table storage
Behdad Esfahbod [Tue, 28 Jun 2011 18:03:29 +0000 (14:03 -0400)]
[Indic] Generate a single data table instead of multiple ones
Behdad Esfahbod [Tue, 28 Jun 2011 16:49:18 +0000 (12:49 -0400)]
[test] Add Indic tests from harfbuzz.old
Needs fonts to be put in test/fonts. Tests are skipped otherwise.
Run with --verbose for details. Working on improving the test runner
to make it easier to make sense of what's going on.
Behdad Esfahbod [Sat, 25 Jun 2011 00:45:55 +0000 (20:45 -0400)]
[Indic] Define indic_position_t
Behdad Esfahbod [Fri, 24 Jun 2011 23:05:52 +0000 (19:05 -0400)]
[Indic] Add a table of consonant positions
Copied form HarfBuzz.old Indic data. These are below and post
consonants. This is temporary. Read the comment in the patch.
Behdad Esfahbod [Fri, 24 Jun 2011 23:05:34 +0000 (19:05 -0400)]
[Indic] Some of the basic features are global; Mark them so
Behdad Esfahbod [Fri, 17 Jun 2011 22:35:46 +0000 (18:35 -0400)]
[indic] Add syllable recognition state machine
Using an incredible tool called Ragel.
Behdad Esfahbod [Wed, 15 Jun 2011 21:22:48 +0000 (17:22 -0400)]
Better categorize Indic character classes
Matches OT types now.
Behdad Esfahbod [Wed, 15 Jun 2011 13:49:58 +0000 (09:49 -0400)]
Minor compiler warning fixes
Behdad Esfahbod [Wed, 15 Jun 2011 13:33:52 +0000 (09:33 -0400)]
Change a couple strstr() to strchr()
Behdad Esfahbod [Tue, 14 Jun 2011 18:47:07 +0000 (14:47 -0400)]
Fix compiler warnings with -pedantic
Behdad Esfahbod [Tue, 14 Jun 2011 18:35:44 +0000 (14:35 -0400)]
Remove extra semicolon
Behdad Esfahbod [Mon, 13 Jun 2011 20:02:18 +0000 (16:02 -0400)]
Cosmetic
Behdad Esfahbod [Sat, 11 Jun 2011 03:08:54 +0000 (23:08 -0400)]
GNOME Bug 652227 - Unconditional use of stdint.h
Behdad Esfahbod [Tue, 7 Jun 2011 21:02:48 +0000 (17:02 -0400)]
More Indic data shuffling
Behdad Esfahbod [Tue, 7 Jun 2011 19:51:40 +0000 (15:51 -0400)]
Minor
Behdad Esfahbod [Thu, 2 Jun 2011 21:43:12 +0000 (17:43 -0400)]
[Indic] Start an Indic shaper
Nothing functional in there yet.
So far, we're parsing IndicSyllabicCategory.txt and IndicMatraCategory.txt
fils from Unicode Character Database and store them in an array to be used
by the shaper. Also hooked up the shaper, but it does not do anything
right now.
Behdad Esfahbod [Thu, 2 Jun 2011 00:52:00 +0000 (20:52 -0400)]
Minor
Behdad Esfahbod [Thu, 2 Jun 2011 00:45:14 +0000 (20:45 -0400)]
Update to ArabicShaping-6.1.0d2.txt
Behdad Esfahbod [Wed, 1 Jun 2011 22:10:10 +0000 (18:10 -0400)]
Minor rename
Behdad Esfahbod [Wed, 1 Jun 2011 16:44:30 +0000 (12:44 -0400)]
[TODO] New items
Behdad Esfahbod [Tue, 31 May 2011 19:18:13 +0000 (15:18 -0400)]
[Vertical] Apply vertical features
We apply all of vert, vrt2, vkrn, valt, and vpal.
Behdad Esfahbod [Tue, 31 May 2011 16:59:17 +0000 (12:59 -0400)]
[hb-view] Add --face-index to choose a face in a TrueType Collection
Behdad Esfahbod [Tue, 31 May 2011 16:33:11 +0000 (12:33 -0400)]
Fix TTC header handling
Also change the Version type to avoid similar bugs in the future.
Reported by Grigori Goronzy.
Behdad Esfahbod [Mon, 30 May 2011 15:08:40 +0000 (11:08 -0400)]
Fixed inifinite loop introduced in
7403e055cd1463f
k is the index, not j.
Reported by Tom Hacohen.
Behdad Esfahbod [Fri, 27 May 2011 22:15:56 +0000 (18:15 -0400)]
Shrink code size
Behdad Esfahbod [Fri, 27 May 2011 22:13:31 +0000 (18:13 -0400)]
[OT] Separate map_builder from the actual map
Respectively, separate planner from the actual plan.
Behdad Esfahbod [Fri, 27 May 2011 21:49:16 +0000 (17:49 -0400)]
Minor
Behdad Esfahbod [Fri, 27 May 2011 20:05:01 +0000 (16:05 -0400)]
[TODO] Add item
Behdad Esfahbod [Fri, 27 May 2011 19:59:33 +0000 (15:59 -0400)]
Minor
Behdad Esfahbod [Fri, 27 May 2011 19:58:54 +0000 (15:58 -0400)]
Add check-includes.sh
Behdad Esfahbod [Fri, 27 May 2011 08:58:11 +0000 (04:58 -0400)]
[configure] Generate sha256sum and GPG-sign it
Behdad Esfahbod [Fri, 27 May 2011 07:58:17 +0000 (03:58 -0400)]
[test] Rename valgrind-log to log-vaglring.txt
Behdad Esfahbod [Fri, 27 May 2011 07:56:37 +0000 (03:56 -0400)]
Minor
Behdad Esfahbod [Fri, 27 May 2011 08:14:12 +0000 (04:14 -0400)]
Bump version to 0.7.0 to open up for development
Behdad Esfahbod [Wed, 25 May 2011 20:08:06 +0000 (16:08 -0400)]
Release 0.6.0. First official tarball release!
There are no API guarantees just yet, but I *expect* that no
incompatible API changes to happen before 1.0.0.
Update NEWS.
Behdad Esfahbod [Fri, 27 May 2011 07:38:46 +0000 (03:38 -0400)]
[test-common] Test hb_direction_to_string()
Caught by "make check-symbols".
Behdad Esfahbod [Fri, 27 May 2011 07:38:30 +0000 (03:38 -0400)]
[test] Rename test-symbols to check-symbols
Shows undocumented symbols.
Behdad Esfahbod [Fri, 27 May 2011 07:35:58 +0000 (03:35 -0400)]
Hide internal symbols
Behdad Esfahbod [Fri, 27 May 2011 06:46:28 +0000 (02:46 -0400)]
[test/unicode] Fix double-free
Caught by "make check-valgrind".
Behdad Esfahbod [Fri, 27 May 2011 06:44:29 +0000 (02:44 -0400)]
[test] Switch to automake-based test-runner
Adds check-valgrind among other modes. We do not run under gtester by
default anymore.
Behdad Esfahbod [Fri, 27 May 2011 05:33:18 +0000 (01:33 -0400)]
[test] Add test-symbols that checks API symbol text coverage
We're not at 100% coverage yet, so do not enable the test by default.
Behdad Esfahbod [Fri, 27 May 2011 05:00:55 +0000 (01:00 -0400)]
[test/version] Test hb-version.h
Behdad Esfahbod [Wed, 25 May 2011 20:07:07 +0000 (16:07 -0400)]
Add libtool versioning
The versioning is automatic. For now, soname-major is 0. With
the 1.0.0 release it will jump to 1 and stay there forever.
Behdad Esfahbod [Wed, 25 May 2011 18:49:35 +0000 (14:49 -0400)]
Update README, etc
Behdad Esfahbod [Wed, 25 May 2011 18:43:10 +0000 (14:43 -0400)]
[TODO] Add item
Behdad Esfahbod [Wed, 25 May 2011 15:27:33 +0000 (11:27 -0400)]
[API] One last font-funcs API change
Now that vertical text works correctly, I'm doing a last round
modification of the font-funcs API to simplify. Expect no more
changes around here.
Behdad Esfahbod [Wed, 25 May 2011 15:01:32 +0000 (11:01 -0400)]
[test] Update to API changes
Behdad Esfahbod [Wed, 25 May 2011 01:04:15 +0000 (21:04 -0400)]
[Vertical] fix vertical gpos
Wow, it took me a few days to find the right fix!
We now set the advance for attached marks to zero, but we
do this in the _finish() state of gpos, so it shouldn't
regress with fonts like DejaVuSansMono that explicitly
decrease the mark advance width to set it to zero.
Behdad Esfahbod [Wed, 25 May 2011 13:56:06 +0000 (09:56 -0400)]
[TODO] Update
Behdad Esfahbod [Fri, 20 May 2011 19:59:59 +0000 (15:59 -0400)]
[Vertical] GPOS x/y advance adjustments only apply in hori/vert respectively
Behdad Esfahbod [Thu, 19 May 2011 23:19:50 +0000 (19:19 -0400)]
[Vertical] Fix GPOS y-advance direction
Behdad Esfahbod [Thu, 19 May 2011 23:08:57 +0000 (19:08 -0400)]
[Vertical] Do fallback origin calculation
Behdad Esfahbod [Thu, 19 May 2011 22:46:15 +0000 (18:46 -0400)]
[Vertical] GPOS is always done with horizontal origin
Behdad Esfahbod [Thu, 19 May 2011 17:08:00 +0000 (13:08 -0400)]
More vertical
Starting to get there, but not without yet another round of changes.
I think I know wheere to go now.
Behdad Esfahbod [Wed, 18 May 2011 14:17:02 +0000 (10:17 -0400)]
[hb-view] Add --annotate
Currently it only marks glyph origins.
Behdad Esfahbod [Wed, 18 May 2011 03:31:00 +0000 (23:31 -0400)]
Vertical: Adjust origin in glyph_extents() and glyph_contour_point()
The base for vertical is almost ready now.
Behdad Esfahbod [Wed, 18 May 2011 03:27:22 +0000 (23:27 -0400)]
Cosmetic
Behdad Esfahbod [Wed, 18 May 2011 03:23:27 +0000 (23:23 -0400)]
Minor
Behdad Esfahbod [Tue, 17 May 2011 21:55:03 +0000 (17:55 -0400)]
[API] Vertical support, take 2
I like this API *much* better. Implementation still incomplete, but
horizontal works.
Behdad Esfahbod [Mon, 16 May 2011 22:15:37 +0000 (18:15 -0400)]
[API] Add support for vertical text
Design not final yet, and in fact I'm going to change it immediately,
but this is an standalone change for itself.
Behdad Esfahbod [Tue, 17 May 2011 21:08:36 +0000 (17:08 -0400)]
Minor
Behdad Esfahbod [Tue, 17 May 2011 19:05:34 +0000 (15:05 -0400)]
Check for mmap()
Apparently there exist systems with mprotect(), but not mmap()?
Behdad Esfahbod [Mon, 16 May 2011 20:20:48 +0000 (16:20 -0400)]
Cosmetic
Behdad Esfahbod [Mon, 16 May 2011 20:01:58 +0000 (16:01 -0400)]
Remove unnecessary TODO item
Behdad Esfahbod [Mon, 16 May 2011 19:18:16 +0000 (15:18 -0400)]
[hb-view] Start work on vertical support
Behdad Esfahbod [Mon, 16 May 2011 19:08:31 +0000 (15:08 -0400)]
[hb-view] No need to allocate an extra glyph item at the end
Behdad Esfahbod [Mon, 16 May 2011 19:07:48 +0000 (15:07 -0400)]
Minor
Behdad Esfahbod [Mon, 16 May 2011 16:24:56 +0000 (12:24 -0400)]
[test/buffer] Add more tests for nil buffer
Behdad Esfahbod [Sat, 14 May 2011 03:04:46 +0000 (23:04 -0400)]
[test/ot-tag] More tests
Behdad Esfahbod [Sat, 14 May 2011 02:55:32 +0000 (22:55 -0400)]
[API] Add HB_LANGUAGE_INVALID
Behdad Esfahbod [Sat, 14 May 2011 02:46:36 +0000 (22:46 -0400)]
[test/test-ot-tag] Test hb-ot-tag.h, fix many bugs
I'm in awe with how many bugs this test revealed. All fixed.
Behdad Esfahbod [Sat, 14 May 2011 00:25:38 +0000 (20:25 -0400)]
[TODO] Add items
Behdad Esfahbod [Thu, 12 May 2011 21:48:20 +0000 (17:48 -0400)]
[API] Add hb_face_make/is_immutable()
Behdad Esfahbod [Thu, 12 May 2011 19:19:33 +0000 (15:19 -0400)]
Finish off previous change
Behdad Esfahbod [Thu, 12 May 2011 19:14:13 +0000 (15:14 -0400)]
[API] Make get_glyph() callback return a boolean
We need to know whether the glyph exists, so we can fallback to
composing / decomposing. Assuming that glyph==0 means "doesn't exist"
wouldn't work for applications like Pango that want to use different
"doesn't exist" glyph codes for different characters. An explicit
return value fixes that.
Behdad Esfahbod [Thu, 12 May 2011 18:27:44 +0000 (14:27 -0400)]
[test/shape] Check shape output
Behdad Esfahbod [Thu, 12 May 2011 16:39:40 +0000 (12:39 -0400)]
Rename get_kernings() arguments from first/second_glyph to left/right_glyph
Makes it clear that kerning is in visual order.
Behdad Esfahbod [Thu, 12 May 2011 14:53:57 +0000 (10:53 -0400)]
[test] Add test-shape.c. Oops
Behdad Esfahbod [Thu, 12 May 2011 14:49:30 +0000 (10:49 -0400)]
[test/blob] Use MAP_ANON instead of MAP_ANONYMOUS
More portable.
Behdad Esfahbod [Thu, 12 May 2011 05:39:17 +0000 (01:39 -0400)]
[test/shape] Add simplest test for hb_shape()
Behdad Esfahbod [Thu, 12 May 2011 05:19:39 +0000 (01:19 -0400)]
[object] Make object inert during destruction
Such that user_data and other finalizers cannot resurrect object
Behdad Esfahbod [Thu, 12 May 2011 05:02:03 +0000 (01:02 -0400)]
[TODO] Update
Behdad Esfahbod [Thu, 12 May 2011 04:46:57 +0000 (00:46 -0400)]
Fix font subclass chainup
Test passing now.
Behdad Esfahbod [Thu, 12 May 2011 04:35:12 +0000 (00:35 -0400)]
[test/font] Test font_funcs subclassing
Behdad Esfahbod [Thu, 12 May 2011 04:18:28 +0000 (00:18 -0400)]
[test/font] Test empty funcs
Behdad Esfahbod [Thu, 12 May 2011 03:57:36 +0000 (23:57 -0400)]
[test/font] Test more
Behdad Esfahbod [Thu, 12 May 2011 03:31:15 +0000 (23:31 -0400)]
[API] Pass face to get_table()
Behdad Esfahbod [Thu, 12 May 2011 03:25:28 +0000 (23:25 -0400)]
[API] Remove const from font user_data
Behdad Esfahbod [Thu, 12 May 2011 03:22:55 +0000 (23:22 -0400)]
[test/font] More tests
Behdad Esfahbod [Thu, 12 May 2011 03:12:58 +0000 (23:12 -0400)]
[test/font] More tests
Behdad Esfahbod [Thu, 12 May 2011 03:07:47 +0000 (23:07 -0400)]
[test/font] More get_empty() tests
Behdad Esfahbod [Thu, 12 May 2011 03:06:02 +0000 (23:06 -0400)]
[test/font] Test get_face() / get_parent()
Behdad Esfahbod [Thu, 12 May 2011 03:05:02 +0000 (23:05 -0400)]
[test/font] Add test_font_properties()
Behdad Esfahbod [Thu, 12 May 2011 02:52:35 +0000 (22:52 -0400)]
[test/font] Start adding tests for hb-font.h
Behdad Esfahbod [Thu, 12 May 2011 02:49:29 +0000 (22:49 -0400)]
[API] Rename hb_face_create_for_data() to hb_face_create()
Behdad Esfahbod [Thu, 12 May 2011 02:33:13 +0000 (22:33 -0400)]
[API] Add hb_ot_layout_substitute_start/finish()
Behdad Esfahbod [Thu, 12 May 2011 02:23:15 +0000 (22:23 -0400)]
Remove unused hb_set_t
Behdad Esfahbod [Thu, 12 May 2011 02:21:38 +0000 (22:21 -0400)]
Remove hb_static_threadsafe_set_t
Behdad Esfahbod [Thu, 12 May 2011 02:18:31 +0000 (22:18 -0400)]
Use constructor/destructor for hb_ot_shape_plan_t