Documenting OpenType shaping

Hi everyone,

The past few months, I've been working on a set of specification-like documents that describe how OpenType Layout works in practice, specifically for shaping complex scripts. It's not quite complete yet, but we'd appreciate any and all feedback that the community can provide.


As the resident README says, the starting points that we'd currently suggest people look at are

- The Indic scripts, which you can get to from here: https://github.com/n8willis/opentype-shaping-documents/blob/master/opentype-shaping-indic-general.md
- The Arabic-and-related scripts (N'Ko, Syriac, Mongolian): https://github.com/n8willis/opentype-shaping-documents/blob/master/opentype-shaping-arabic-general.md
- Hangul: https://github.com/n8willis/opentype-shaping-documents/blob/master/opentype-shaping-hangul.md

A couple of the others are more-or-less ready for review, although I'm waiting on some question loops to close with people I've privately been pestering with questions. That includes Myanmar and Tibetan.

(I would definitely stay away from the Thai/Lao doc, which is in major churn, and Hebrew, which hopefully lands shortly.)

This is intended to be useful for people working on software support for OpenType shaping, as a bit of a bridge between the OTF and Unicode official specs. Whereas, for instance, the Microsoft Script-development specs are (in general) targeted more towards designers. It pulls together info from HarfBuzz, some Uniscribe (often via test reports), and me dissecting a lot of font binaries for better or worse.

In any case, all eyes are welcome and, if you see anything wrong, missing, or unclear — in the text or in the images, for that matter — please open an issue, a pull request, or just reply directly. 

Your feedback and help is appreciated!
Tagged: