[HarfBuzz] The purpose of hb-unicode and more flexible builds

Behdad Esfahbod behdad at behdad.org
Fri Oct 21 09:46:08 PDT 2011


On 10/17/2011 12:11 PM, Petr Kobalíček wrote:
> Hello list,
> 
> I'd like to ask what is real purpose/advantage to have hb_unicode_funcs_t?

More flexible builds!

> I know that this is a wrapper to the real implementation, but is there
> another use-case to switch unicode functions on the fly and per
> hb_buffer?

There are many reasons:

  - This lets you compile HarfBuzz with no default implementation and hook
yours at runtime.

  - Even if there is an internal implementation already, you may want to hook
yours.  For example, a Python user may want to hookup Python's Unicode
Character Database instead.  Same for Perl, etc.

  - It's also useful for developing new scripts for Unicode.  This is a small
audience, but since I regularly work with these people, I wanted to
accommodate their needs.

  - Having it per-buffer enables comparison against different implementations.

  - Having it per-buffer instead of global is simply an artifact of HarfBuzz
being a shared library.  Ie. no global settable state.  The buffer simply was
the best place to put this.


What's your concern, if any?

behdad


> Thanks!
> Petr Kobalicek



More information about the HarfBuzz mailing list