[HarfBuzz] harfbuzz: Branch 'master'

Rajeesh K V rajeeshknambiar at gmail.com
Fri Dec 18 11:49:09 PST 2015


Hi Behdad,


On Thu, Dec 17, 2015 at 6:31 PM, Behdad Esfahbod <
behdad at kemper.freedesktop.org> wrote:

>  src/hb-ot-shape-complex-indic.cc |   11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
>
> New commits:
> commit 508cc3d3cfcfb0383df0fe795cc28db4e0fd5729
> Author: Behdad Esfahbod <behdad at behdad.org>
> Date:   Thu Dec 17 17:31:17 2015 +0000
>
>     [indic] Allow context when matching for Malayalam new-spec
>
>     Test sequence:
>         U+0995,U+09CD,U+09B0
>

These code points are for Bengali, they don't make sense for Malayalam.
Could you share more details about this specific test case?
(I saw that subsequent commit 45b7ec365225109eb0854e6c417f48860b5f24af
fixes regression introduced by this commit, that made me curious to look
into this one).


>
>     With Nirmala shipped on Windows 10, this failed to form the below form.
>     Works now.
>
>     Reported by Sairus.
>
> diff --git a/src/hb-ot-shape-complex-indic.cc
> b/src/hb-ot-shape-complex-indic.cc
> index 5354897..a630419 100644
> --- a/src/hb-ot-shape-complex-indic.cc
> +++ b/src/hb-ot-shape-complex-indic.cc
> @@ -557,8 +557,15 @@ data_create_indic (const hb_ot_shape_plan_t *plan)
>    indic_plan->virama_glyph = (hb_codepoint_t) -1;
>
>    /* Use zero-context would_substitute() matching for new-spec of the main
> -   * Indic scripts, and scripts with one spec only, but not for
> old-specs. */
> -  bool zero_context = !indic_plan->is_old_spec;
> +   * Indic scripts, and scripts with one spec only, but not for old-specs.
> +   * The new-spec for all dual-spec scripts says zero-context matching
> happens.
> +   *
> +   * However, testing with Malayalam shows that old and new spec both
> allow
> +   * context.  Testing with Bengali new-spec however shows that it
> doesn't.
> +   * So, the heuristic here is the way it is.  It should *only* be
> changed,
> +   * as we discover more cases of what Windows does.  DON'T TOUCH
> OTHERWISE.
> +   */
> +  bool zero_context = !indic_plan->is_old_spec && plan->props.script !=
> HB_SCRIPT_MALAYALAM;
>    indic_plan->rphf.init (&plan->map, HB_TAG('r','p','h','f'),
> zero_context);
>    indic_plan->pref.init (&plan->map, HB_TAG('p','r','e','f'),
> zero_context);
>    indic_plan->blwf.init (&plan->map, HB_TAG('b','l','w','f'),
> zero_context);
> _______________________________________________
> HarfBuzz mailing list
> HarfBuzz at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/harfbuzz
>



-- 
Cheers,
Rajeesh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/harfbuzz/attachments/20151218/84b067b6/attachment.html>


More information about the HarfBuzz mailing list