[HarfBuzz] harfbuzz-ng: Branch 'master' - 6 commits

Behdad Esfahbod behdad at kemper.freedesktop.org
Wed Nov 17 11:58:11 PST 2010


 TODO                                 |    5 +++++
 src/hb-icu.c                         |    8 +++++++-
 src/hb-ot-layout-gsubgpos-private.hh |    4 +++-
 src/hb-ot-tag.c                      |   33 +++++++++++++++++++--------------
 src/hb-unicode.c                     |    7 ++++++-
 src/hb-unicode.h                     |    9 +++++++--
 6 files changed, 47 insertions(+), 19 deletions(-)

New commits:
commit 43bf2f7f1ec427c431e2ee2fd1a9345e7d5c9718
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Nov 17 14:49:40 2010 -0500

    Add OpenType script tags for Unicode 5.2 and Unicode 6.0 scripts
    
    Based on tags proposed by Microsoft for inclusion in OpenType.

diff --git a/src/hb-ot-tag.c b/src/hb-ot-tag.c
index 8c23ce9..f3e0f1f 100644
--- a/src/hb-ot-tag.c
+++ b/src/hb-ot-tag.c
@@ -125,26 +125,26 @@ static const hb_tag_t ot_scripts[][3] = {
   {HB_TAG('l','y','d','i')},	/* HB_SCRIPT_LYDIAN */
 
   /* Unicode-5.2 additions */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_AVESTAN */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_BAMUM */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_EGYPTIAN_HIEROGLYPHS */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_IMPERIAL_ARAMAIC */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_INSCRIPTIONAL_PAHLAVI */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_INSCRIPTIONAL_PARTHIAN */
+  {HB_TAG('a','v','s','t')},	/* HB_SCRIPT_AVESTAN */
+  {HB_TAG('b','a','m','u')},	/* HB_SCRIPT_BAMUM */
+  {HB_TAG('e','g','y','p')},	/* HB_SCRIPT_EGYPTIAN_HIEROGLYPHS */
+  {HB_TAG('a','r','m','i')},	/* HB_SCRIPT_IMPERIAL_ARAMAIC */
+  {HB_TAG('p','h','l','i')},	/* HB_SCRIPT_INSCRIPTIONAL_PAHLAVI */
+  {HB_TAG('p','r','t','i')},	/* HB_SCRIPT_INSCRIPTIONAL_PARTHIAN */
   {HB_TAG('j','a','v','a')},	/* HB_SCRIPT_JAVANESE */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_KAITHI */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_LISU */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_MEETEI_MAYEK */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_OLD_SOUTH_ARABIAN */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_OLD_TURKIC */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_SAMARITAN */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_TAI_THAM */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_TAI_VIET */
+  {HB_TAG('k','t','h','i')},	/* HB_SCRIPT_KAITHI */
+  {HB_TAG('l','i','s','u')},	/* HB_SCRIPT_LISU */
+  {HB_TAG('m','y','e','i')},	/* HB_SCRIPT_MEETEI_MAYEK */
+  {HB_TAG('s','a','r','b')},	/* HB_SCRIPT_OLD_SOUTH_ARABIAN */
+  {HB_TAG('o','r','k','h')},	/* HB_SCRIPT_OLD_TURKIC */
+  {HB_TAG('s','a','m','r')},	/* HB_SCRIPT_SAMARITAN */
+  {HB_TAG('l','a','n','a')},	/* HB_SCRIPT_TAI_THAM */
+  {HB_TAG('t','a','v','t')},	/* HB_SCRIPT_TAI_VIET */
 
   /* Unicode-6.0 additions */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_BATAK */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_BRAHMI */
-  {HB_TAG('D','F','L','T')} 	/* HB_SCRIPT_MANDAIC */
+  {HB_TAG('b','a','t','k')},	/* HB_SCRIPT_BATAK */
+  {HB_TAG('b','r','a','h')},	/* HB_SCRIPT_BRAHMI */
+  {HB_TAG('m','a','n','d')} 	/* HB_SCRIPT_MANDAIC */
 };
 
 const hb_tag_t *
commit afab01cf7caca79cf6dfabe6827d1703be1a74f7
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Nov 17 14:35:34 2010 -0500

    Add Unicode 6.0 scripts

diff --git a/src/hb-icu.c b/src/hb-icu.c
index 97b2fa0..44709b1 100644
--- a/src/hb-icu.c
+++ b/src/hb-icu.c
@@ -228,6 +228,12 @@ hb_icu_get_script (hb_codepoint_t unicode)
   MATCH_SCRIPT2(ORKHON, OLD_TURKIC);     /* Orkh */
   MATCH_SCRIPT (SAMARITAN);              /* Samr */
   MATCH_SCRIPT (TAI_VIET);               /* Tavt */
+
+  /* Unicode-6.0 additions */
+  MATCH_SCRIPT (BATAK);                  /* Batk */
+  MATCH_SCRIPT (BRAHMI);                 /* Brah */
+  MATCH_SCRIPT2(MANDAEAN, MANDAIC);      /* Mand */
+
   }
   return HB_SCRIPT_UNKNOWN;
 }
diff --git a/src/hb-ot-tag.c b/src/hb-ot-tag.c
index d774c4f..8c23ce9 100644
--- a/src/hb-ot-tag.c
+++ b/src/hb-ot-tag.c
@@ -139,7 +139,12 @@ static const hb_tag_t ot_scripts[][3] = {
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_OLD_TURKIC */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_SAMARITAN */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_TAI_THAM */
-  {HB_TAG('D','F','L','T')} 	/* HB_SCRIPT_TAI_VIET */
+  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_TAI_VIET */
+
+  /* Unicode-6.0 additions */
+  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_BATAK */
+  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_BRAHMI */
+  {HB_TAG('D','F','L','T')} 	/* HB_SCRIPT_MANDAIC */
 };
 
 const hb_tag_t *
diff --git a/src/hb-unicode.c b/src/hb-unicode.c
index 280c61f..2ab308b 100644
--- a/src/hb-unicode.c
+++ b/src/hb-unicode.c
@@ -341,7 +341,12 @@ const hb_direction_t horiz_dir[] =
   RTL,	/* Orkh */
   RTL,	/* Samr */
   LTR,	/* Lana */
-  LTR 	/* Tavt */
+  LTR,	/* Tavt */
+
+  /* Unicode-6.0 additions */
+  LTR,	/* Batk */
+  LTR,	/* Brah */
+  RTL 	/* Mand */
 };
 #undef LTR
 #undef RTL
diff --git a/src/hb-unicode.h b/src/hb-unicode.h
index 9fedd27..5fd6dff 100644
--- a/src/hb-unicode.h
+++ b/src/hb-unicode.h
@@ -173,7 +173,12 @@ typedef enum
   HB_SCRIPT_OLD_TURKIC,             /* Orkh */
   HB_SCRIPT_SAMARITAN,              /* Samr */
   HB_SCRIPT_TAI_THAM,               /* Lana */
-  HB_SCRIPT_TAI_VIET                /* Tavt */
+  HB_SCRIPT_TAI_VIET,               /* Tavt */
+
+  /* Unicode-6.0 additions */
+  HB_SCRIPT_BATAK,                  /* Batk */
+  HB_SCRIPT_BRAHMI,                 /* Brah */
+  HB_SCRIPT_MANDAIC                 /* Mand */
 } hb_script_t;
 
 
commit f234b68d18d956f7e4eb4bf58d6dc408d9e5146e
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Nov 17 14:25:44 2010 -0500

    Change HB_SCRIPT_MEITEI_MAYEK to HB_SCRIPT_MEETEI_MAYEK
    
    The new name matches the Unicode name.  Reported by Jonathan Kew.

diff --git a/src/hb-icu.c b/src/hb-icu.c
index 44b92af..97b2fa0 100644
--- a/src/hb-icu.c
+++ b/src/hb-icu.c
@@ -221,7 +221,7 @@ hb_icu_get_script (hb_codepoint_t unicode)
 #if CHECK_ICU_VERSION (4, 4)
   MATCH_SCRIPT (LISU);                   /* Lisu */
 #endif
-  MATCH_SCRIPT (MEITEI_MAYEK);           /* Mtei */
+  MATCH_SCRIPT2(MEITEI_MAYEK, MEETEI_MAYEK);/* Mtei */
 #if CHECK_ICU_VERSION (4, 4)
   MATCH_SCRIPT (OLD_SOUTH_ARABIAN);      /* Sarb */
 #endif
diff --git a/src/hb-ot-tag.c b/src/hb-ot-tag.c
index c325802..d774c4f 100644
--- a/src/hb-ot-tag.c
+++ b/src/hb-ot-tag.c
@@ -134,7 +134,7 @@ static const hb_tag_t ot_scripts[][3] = {
   {HB_TAG('j','a','v','a')},	/* HB_SCRIPT_JAVANESE */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_KAITHI */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_LISU */
-  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_MEITEI_MAYEK */
+  {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_MEETEI_MAYEK */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_OLD_SOUTH_ARABIAN */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_OLD_TURKIC */
   {HB_TAG('D','F','L','T')},	/* HB_SCRIPT_SAMARITAN */
diff --git a/src/hb-unicode.h b/src/hb-unicode.h
index 4edab48..9fedd27 100644
--- a/src/hb-unicode.h
+++ b/src/hb-unicode.h
@@ -168,7 +168,7 @@ typedef enum
   HB_SCRIPT_JAVANESE,               /* Java */
   HB_SCRIPT_KAITHI,                 /* Kthi */
   HB_SCRIPT_LISU,                   /* Lisu */
-  HB_SCRIPT_MEITEI_MAYEK,           /* Mtei */
+  HB_SCRIPT_MEETEI_MAYEK,           /* Mtei */
   HB_SCRIPT_OLD_SOUTH_ARABIAN,      /* Sarb */
   HB_SCRIPT_OLD_TURKIC,             /* Orkh */
   HB_SCRIPT_SAMARITAN,              /* Samr */
commit 3ca9a6d1cffe950b325e1d522b20d4a645ae448e
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Nov 17 13:08:47 2010 -0500

    Add TODO item

diff --git a/TODO b/TODO
index 4a1c2a6..5a33c3c 100644
--- a/TODO
+++ b/TODO
@@ -1,6 +1,9 @@
 General fixes:
 =============
 
+- Instead of forming clusters immediately, only do it if we are reversing
+  the text.  We'd need a separate bit to indicate cluster start then
+
 - Fix tt kern on/off
 
 - Remove fixed-size feature/lookup arrays in hb-ot-map
commit 300cb41417d40473268e3b4089bed24e9e77a753
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Nov 17 12:57:23 2010 -0500

    Add XXX marks

diff --git a/src/hb-ot-layout-gsubgpos-private.hh b/src/hb-ot-layout-gsubgpos-private.hh
index caba1cf..ae5416b 100644
--- a/src/hb-ot-layout-gsubgpos-private.hh
+++ b/src/hb-ot-layout-gsubgpos-private.hh
@@ -77,12 +77,14 @@ struct hb_apply_context_t
 
   inline void guess_glyph_class (unsigned int klass)
   {
-//    buffer->info[buffer->i].props_cache() = klass;
+    /* XXX if ! has gdef */
+    buffer->info[buffer->i].props_cache() = klass;
   }
 
   private:
   inline void clear_property (void) const
   {
+    /* XXX if has gdef */
     buffer->info[buffer->i].props_cache() = 0;
   }
 };
commit ea00aee9f94ae8c6cf03d620254817d5e1f51d64
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Fri Nov 5 10:51:37 2010 -0400

    Add TODO item

diff --git a/TODO b/TODO
index fb6a86f..4a1c2a6 100644
--- a/TODO
+++ b/TODO
@@ -21,6 +21,8 @@ API issues to fix before 1.0:
 
 - Figure out how many .so objects, how to link, etc
 
+- Shall y axis progress downward instead of upward?
+
 
 API to add (maybe after 1.0):
 ============================



More information about the HarfBuzz mailing list