1. 23 10月, 2018 4 次提交
  2. 22 10月, 2018 9 次提交
  3. 21 10月, 2018 3 次提交
  4. 20 10月, 2018 9 次提交
  5. 19 10月, 2018 1 次提交
  6. 18 10月, 2018 2 次提交
  7. 16 10月, 2018 1 次提交
  8. 14 10月, 2018 1 次提交
  9. 13 10月, 2018 2 次提交
    • B
      Touch up new API · c0a6814b
      Behdad Esfahbod 提交于
      New API:
      +hb_ot_layout_feature_get_name_ids()
      +hb_ot_layout_feature_get_characters()
      c0a6814b
    • E
      Add two APIs for getting stylistic set labels · dc49bd8d
      Ebrahim Byagowi 提交于
      * hb_ot_layout_feature_get_characters
      * hb_ot_layout_feature_get_name_ids
      
      However HarfBuzz currently doesn't expose an API for retrieving the actual
      information associated with NameId from the `name` table and that should be
      done separately.
      dc49bd8d
  10. 12 10月, 2018 8 次提交
    • D
      Parse Indic3 tags · 28d091d0
      David Corbett 提交于
      28d091d0
    • B
      Minor · 1d995a34
      Behdad Esfahbod 提交于
      1d995a34
    • B
      [test] Fix use of deprecated symbols · 57b05210
      Behdad Esfahbod 提交于
      57b05210
    • M
      fixed leak · ca37172e
      Michiharu Ariza 提交于
      ca37172e
    • D
      Add hb_ot_tags_to_script_and_language · 7f1fbfe2
      David Corbett 提交于
      7f1fbfe2
    • D
      Match extlang subtags · 7c7cb2a9
      David Corbett 提交于
      If the second subtag of a BCP 47 tag is three letters long, it denotes
      an extended language. The tag converter ignores the language subtag and
      uses the extended language instead.
      
      There are some grandfathered exceptions, which are handled earlier.
      7c7cb2a9
    • D
      Autogenerate the BCP 47 to OpenType mappings · 2f1f961c
      David Corbett 提交于
      The new script, gen-tag-table.py, generates `ot_languages` automatically
      from the [OpenType language system tag registry][ot] and the [IANA
      Language Subtag Registry][bcp47] with some manual modifications. If an
      OpenType tag maps to a BCP 47 macrolanguage, all the macrolanguage's
      individual languages are mapped to the same OpenType tag, except for
      individual languages with their own OpenType mappings. Deprecated
      BCP 47 tags are canonicalized.
      
      [ot]: https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags
      [bcp47]: https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry
      
      Some OpenType tags correspond to multiple ISO 639 codes. The mapping
      from ISO 639 codes lists OpenType tags in priority order, such that more
      specific or more likely tags appear first.
      
      Some OpenType tags have no corresponding ISO 639 code in the registry so
      their mappings use BCP 47 subtags besides the language. For example, any
      BCP 47 tag with a fonipa variant subtag is mapped to 'IPPH', and 'IPPH'
      is mapped back to und-fonipa.
      
      Other OpenType tags have no corresponding ISO 639 code because it is not
      clear what they are for. HarfBuzz just ignores these tags.
      
      One such ignored tag is 'ZHP ' (Chinese Phonetic). It probably means
      zh-Latn. However, it is used in Microsoft JhengHei and Microsoft YaHei
      with the script tag 'hani', implying that it is not a romanization
      scheme after all. It would be simple enough to add this mapping to
      gen-tag-table.py once a definitive mapping is determined.
      
      The manual modifications are mainly either obvious mappings that the
      OpenType registry omits or mappings for compatibility with previous
      versions of HarfBuzz. Some of the old mappings were discarded, though,
      for homophonous language names. For example, OpenType maps 'KUI ' to
      kxu; previous versions of HarfBuzz also mapped it to kvd, because kvd
      and kxu both happen to be called "Kui".
      
      gen-tag-table.py also generates a function to convert multi-subtag tags
      like el-polyton and zh-HK to OpenType tags, replacing `ot_languages_zh`
      and the hard-coded list of special cases in `hb_ot_tags_from_language`.
      It also generates a function to convert OpenType tags to BCP 47,
      replacing the hard-coded list of special cases in
      `hb_ot_tag_to_language`.
      2f1f961c
    • D
      Refactor the selection of script and language tags · 91067716
      David Corbett 提交于
      The old hb-ot-tag.cc functions, `hb_ot_tags_from_script` and
      `hb_ot_tag_from_language`, are now wrappers around a new function:
      `hb_ot_tags`. It converts a script and a language to arrays of script
      tags and language tags. This will make it easier to add new script tags
      to scripts, like 'dev3'. It also allows for language fallback chains;
      nothing produces more than one language yet though.
      
      Where the old functions return the default tags 'DFLT' and 'dflt',
      `hb_ot_tags` returns an empty array. The caller is responsible for
      using the default tag in that case.
      
      The new function also adds a new private use subtag syntax for script
      overrides: "x-hbscabcd" requests a script tag of 'abcd'.
      
      The old hb-ot-layout.cc functions,`hb_ot_layout_table_choose_script` and
      `hb_ot_layout_script_find_language` are now wrappers around the new
      functions `hb_ot_layout_table_select_script` and
      `hb_ot_layout_script_select_language`. They are essentially the same as
      the old ones plus a tag count parameter.
      
      Closes #495.
      91067716