Re: [RFC]refactor Noto CJK fonts packaging

Marguerite Su <[email protected]> Sat, 8 Apr 2017 17:52:43 +0800
Newsgroups gmane.linux.suse.m17n
Message-ID <CAK0PdA=Qm+XJV41B5+vrZ3kHCH+vVUX-VAQiFsnbqRUjyPv0=g@mail.gmail.com>
On Sat, Apr 8, 2017 at 5:09 PM, Takashi Iwai <[email protected]> wrote:
> Well, suppose you install only noto-sans-cjksc-fonts for Simplified
> Chinese locale, and visit a Japanese web page.  Would it be shown
> correctly with Japanese glyphs even for the CJK unified ideographs?
>
> If my understanding is correct, it wouldn't.  When you install
> noto-sans-cjkja-fonts in addition and choose it explicitly, then you
> can show the Japanese glyphs for such letters properly, though.

I'm not familiar with the terms of Japanese Language...so I'll speak in pla=
in
English.

Part 1:

As you know, there're some common chars in Chinese and Japanese, eg "=E5=9D=
=82".

If I install SC only, the "=E5=9D=82" on a Japanese website will be display=
ed
using SC glyphs.

and the Japanese only chars will be displayed using JP glyphs because
Chinese doesn't have them.

It'll be the same for Japanese. the common chars will be displayed with JP.

the Chinese only chars will be displayed using SC, eg: =E7=85=9A

That is, if you install only one variant, all CJK chars can be shown
and understandable.

But with slightly difference in glyph styles.

Do you want the display effect to be that perfect that every char
needs to be displayed in correct glyph style?

Apparently not. You just want to avoid the "=E5=8F=A3=E5=8F=A3=E5=8F=A3=E5=
=8F=A3=E5=8F=A3" issue for a foreign language.

That's why I said no one will install a second one if the chars have
already been displayed.

Maybe you supposed that the same char eg "=E6=88=91" will be displayed as "=
=E6=88=91"
in Chinese but "=E4=BD=A0" in Japanese?

No, there's no such char at all. CJK doesn't have that big difference
for "immigrant" chars.

They look every much similar.  The only difference may be, eg:

The rotation degree for "=E4=B8=BF" might be slight different, but both wil=
l
still be in the same direction.

Part 2:

If you install both.

On a localized system (with zh_CN.UTF-8 or ja.UTF-8 locale):

The Japanese chars will be displayed with JP.

The common chars will be displayed in JP.

The Chinese only chars will be displayed in SC.

because I wrote the language specific prepend policy. JP will be the
preferred one.

And as the common chars are ambiguous for both languages, it'll be
displayed with the preferred font.

Part 3:

If you install both.

On a Latin system (with en_US.UTF-8 locale):

Everything will be displayed in JP except for those Chinese only chars.

Because the prepend policy doesn't and can't cover this case.

> Sorry, I'm confused by the argument here.  I supposed that splitting
> to subpackages for each region and weight is for reducing the size as
> the primary goal?
> We might need to reach to some compromise between the reasonable size
> reduction and the easy installation / management, but the above
> doesn't look well-explaining to me.

Yes. split subpackages so we can form a small group for DVD later.

Please read the above "Part 3" first. that is the problem I want to resolve=
.

Because each of the CJK SC/TC/JP/KR fonts covers for all CJK (just the
order is different,
eg for CJK JP, it'll display texts using JP glyphs first, but CJK SC
will display texts using SC
glyphs first)

If you install two or more of them on a Latin system,

fontconfig will not know which glyph style is preferred, it'll pick
using alphabetical order,
that is JP.

In my assumption (see "Part 1"), no one will install two or more.

A Chinese will pick SC variant by himself because he's familiar with SC onl=
y.

And then Japanese can be displayed too.

So there's no motivation for him to install JP again.

But what if that guy installs JP?

Every common chars will be displayed in JP style on his Latin system.

It annoys him because he's Chinese...

Now comes the issue I want to solve.

I want SC to be used for display even he installed both.

Then I can't use NotoSansCJKSC-hinted.zip as source code.

I need to head to the NotoSansSC.zip as source code.

Because that tarball contains Chinese only. and NotoSansJP.zip
contains Japanese only.

They can be used together now. (I still don't know how common chars display=
 yet)

But NotoSansSC.zip doesn't contain the Noto Sans SC Monospace.

There's no such font, if you want a native monospace, you can only use
Noto Sans CJK SC Monospace,
which is in NotoSansCJKSC-hinted.zip.

So:

NotoSansCJKSC-hinted and NotoSansSC.zip must be used as source code both.

But in the final product, noto-sans-cjksc-fonts contains the Noto Sans
SC and Noto Sans CJK SC Monospace.

Every other stuff will be deleted when packaging.

So it will not affect the RPM size, but we need to host more stuff on
OBS and in the .src.rpm.

But since no one raise that need. I think we don't need to be that complica=
ted.

Just assume no one will install two fonts should be okay.

Marguerite
-- 
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]