silnrsi / font-padauk

Padauk pan Myanmar font
Other
28 stars 7 forks source link

language support #40

Open bobh0303 opened 2 years ago

bobh0303 commented 2 years ago

At present KHN (which is used in the OT code) is not a registered OT tag; I'm assuming it is supposed to be used for bcp47 khn (which is used in the Graphite code).

According to the Ethnologue, khn is Khandesi, a language of India, and written with Devanagari script. Do some Khandesi write with Myanmar script? If so, we'll want to register KHN -- but there are some oddities in the font code that make me wonder.

According to the table(language) in myfeatures.gdl, language tags khn and kht both turn on the Khamti language processing:

khamti {
    languages = ("khn", "kht");
    khamti = 1;
    filled = 1;
};

The OpenType code also mentions both of these, but with different functionality in padauk.fea:

feature locl {
 script mym2;
     language KHN  exclude_dflt;
      lookup mym2_locl_dot;
     language KHT  exclude_dflt;
      lookup mym2_locl_dot;
      lookup mym2_locl_khamti;
    ...

(In a similar issue, the table(language) includes both aio and phk:

aiph {
    languages = ("aio", "phk");
    khamti = 1;
    aitonph = 1;
    filled = 1;
};

but the equivalent OT tags AIO and PHK do not appear in the OT code.)

Related:

README.txt mentions

Features:
* Special support for: ksw, kht, kyu, shn, aio, phk, csh
* Variation Selector support for kht, aio, phk

while README.md mentions:

## Features
* Special support for: ksw, kht, kyu, shn, aio, phk
* Variation Selector support for kht, aio, phk

Note that

bobh0303 commented 2 years ago

According to the Ethnologue, khn is Khandesi, a language of India, and written with Devanagari script. Do some Khandesi write with Myanmar script? If so, we'll want to register KHN -- but there are some oddities in the font code that make me wonder.

@jcoblentz or @mhosken could you clarify whether khn is actually correct for padauk?

bobh0303 commented 2 years ago

Also, ISO csh is already in the the OT spec under QIN -- is a reason that isn't being used?

jcoblentz commented 2 years ago

QIN is on the list of things to change. See https://github.com/silnrsi/font-padauk/issues/39

mhosken commented 2 years ago

Harfbuzz maps the lang code khn to the internal language tag of KHN to conform to Microsoft's mapping. It also maps to KHT internally too. So I guess it just picks one of the two. This implies that KHN is Microsoft's internal langtag for the kht language.

bobh0303 commented 2 years ago

Harfbuzz maps the lang code khn to the internal language tag of KHN to conform to Microsoft's mapping ... This implies that KHN is Microsoft's internal langtag for the kht language.

You often manage leaps of logic that my feeble brain can't follow so I may be wrong, but I don't understand how these statements can be the case since Microsoft language tag registry contains neither KHN nor khn.