rsms / inter

The Inter font family
https://rsms.me/inter/
SIL Open Font License 1.1
17.76k stars 398 forks source link

Request: Localized Cyrillic for Bulgarian, Macedonian & Serbian #562

Open cssobral2013 opened 1 year ago

cssobral2013 commented 1 year ago

Currently, Inter uses default traditional Cyrillic for all Cyrillic languages.

rsms commented 1 year ago

For this to be actionable, we need details on what it means to localize for these languages. What glyphs (Unicode codepoints) need special treatment and what are some canonical, reliable reference designs

kenmcd commented 1 year ago

Some info to get you started...

Bulgarian Cyrillic Localization

Changes 16 roman characters and 7 italic characters. (usually, may be more, see article) Roman: Л, Ф, в, г, д, ж, и, й, к, л, п, т, ц, ш, щ, ю Italic: Л, Ф, в, д, ж, к, ю

Something I have been working on ... Bulgarian-test-OpenType Features Reference Guide (2023-05-02)

It is a work-in-progress, but that first page gives you a quick overview.

Source Serif 4 and Source Sans 3 both include Bulgarian localization. It is done in calt - so you can look at those fonts. https://github.com/adobe-fonts/source-sans/releases Also... Bitter Pro (slabserif) https://github.com/solmatas/BitterPro FiraGo (sans serif) https://github.com/bBoxType/FiraGO Montserrat (sans serif) https://github.com/JulietaUla/Montserrat Sofia Sans - default is Bulgarian, includes RUS localization https://github.com/vv-monsalve/Sofia-Sans

Good article about Bulgarian localization: What shall be done for Bulgarian Cyrillic .loclBGR https://www.lettersoup.de/what-shall-be-done-for-bulgarian-cyrillic-loclbgr/ Includes this helpful image: image

I will post similar info about Macedonian and Serbian later.

kenmcd commented 1 year ago

Was making some Bulgarian examples and found substantial differences in how many characters are replaced in different fonts.

FOSS Fonts (# alternates): Arsenal (21), BitterPro (26), Commissioner (22), Cormorant Garamond (23), Fira Sans (62), FiraGo (62), Linguistics Pro (27), Manrope (23), Montserrat (23), PT Sans Expert v2.004 (25), Sophia Sans (30), Source Sans 3 (23), Source Serif 4 (23), Spectral (23), Unbounded (20), Vollkorn (26), Ysabeau (25)

Commercial Fonts: SF Pro Text (27, incl. small caps),

moyogo commented 1 year ago

There is no official Bulgarian style and no official glyph set for it either. This is basically a style based on the cursive forms that works for any language using those forms in cursive that was popularized in Bulgaria on signage, display and headlines and came to be use increasingly in text as well. They were minorly popular in other languages a some point as well, but really only took off in text in Bulgaria.

There is no requirement, as such, to have that style in Bulgarian. It’s just a popular style so it’s nice to have.

KrasnayaPloshchad commented 1 year ago

Here’s some samples: https://books.google.com/books?id=6HTdZ5rxJ-cC

moyogo commented 1 year ago

@KrasnayaPloshchad that book doesn't mention letter forms.

rsms commented 1 year ago

Related to #567

vitorsr commented 1 year ago

Examples

PT Root UI

fontplot2 pt-root-ui_regular.ttf

Bahnschrift

Bahnschrift in Vietnamese, Greek, Russian, and Bulgarian

Merriweather

fontplot2 Merriweather-Regular.ttf

Shantell Sans

Shantell Sans Cyrillic character set

Counterexamples

Noncomprehensive.

There are no other bg-Cyrl families in the Microsoft Typography Font Library.

SIL has not updated current LGC families such as Andika.

STI Pub has not updated STIX Two.

Noto has not been updated either.

Roboto also.

See relevant discussion on https://github.com/notofonts/latin-greek-cyrillic/issues/187 (Jul 2014) and https://github.com/notofonts/latin-greek-cyrillic/issues/172 (Nov 2016). See also https://github.com/googlefonts/roboto/issues/215 (Dec 2016).


See attached pyftfeatfreeze reports for the mentioned font families.

$ pyftfeatfreeze -r 'pt-root-ui_regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'cyrl' -l 'BGR '
-s 'cyrl' -l 'BSH '
-s 'cyrl' -l 'SRB '
-s 'latn'
-s 'latn' -l 'AZE '
-s 'latn' -l 'MOL '
-s 'latn' -l 'ROM '
-s 'latn' -l 'TRK '
# Features:
-f aalt,case,ccmp,dlig,dnom,frac,hist,liga,locl,numr,ordn,pnum,salt,sinf,ss01,ss02,ss03,ss04,ss05,ss06,ss07,ss08,ss09,subs,sups,tnum
$ pyftfeatfreeze -r 'bahnschrift.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'cyrl' -l 'BGR '
-s 'cyrl' -l 'MKD '
-s 'cyrl' -l 'SRB '
-s 'latn'
-s 'latn' -l 'MOL '
-s 'latn' -l 'ROM '
# Features:
-f aalt,case,ccmp,frac,locl,ordn,pnum,rvrn,sups,tnum
$ pyftfeatfreeze -r 'Merriweather-Regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'cyrl' -l 'BGR '
-s 'cyrl' -l 'BSH '
-s 'cyrl' -l 'CHU '
-s 'cyrl' -l 'SRB '
-s 'latn'
-s 'latn' -l 'AZE '
-s 'latn' -l 'CAT '
-s 'latn' -l 'CRT '
-s 'latn' -l 'KAZ '
-s 'latn' -l 'MOL '
-s 'latn' -l 'ROM '
-s 'latn' -l 'TAT '
-s 'latn' -l 'TRK '
# Features:
-f aalt,case,ccmp,dnom,frac,liga,lnum,locl,numr,onum,ordn,salt,sinf,ss01,subs,sups,zero
$ pyftfeatfreeze -r 'ShantellSans-Regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'cyrl' -l 'BGR '
-s 'cyrl' -l 'MKD '
-s 'cyrl' -l 'SRB '
-s 'cyrl' -l 'UKR '
-s 'latn'
-s 'latn' -l 'CAT '
-s 'latn' -l 'MOL '
-s 'latn' -l 'NLD '
-s 'latn' -l 'ROM '
-s 'latn' -l 'TRK '
# Features:
-f aalt,calt,case,ccmp,dnom,frac,liga,locl,numr,ordn,rlig,sinf,ss01,ss02,ss03,ss04,sups,tnum,zero
$ pyftfeatfreeze -r 'Andika-Regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'cyrl' -l 'MKD '
-s 'cyrl' -l 'SRB '
-s 'latn'
-s 'latn' -l 'IPPH'
-s 'latn' -l 'VIT '
# Features:
-f aalt,c2sc,ccmp,cv01,cv04,cv06,cv07,cv10,cv13,cv17,cv19,cv20,cv25,cv28,cv31,cv34,cv35,cv37,cv39,cv43,cv44,cv46,cv47,cv49,cv51,cv52,cv55,cv56,cv57,cv62,cv67,cv68,cv69,cv70,cv71,cv75,cv76,cv77,cv79,cv80,cv81,cv82,cv84,cv90,cv91,cv92,cv98,frac,liga,locl,smcp,ss01,ss04,ss05,ss13,ss14,subs,sups
$ pyftfeatfreeze -r 'STIXTwoText-Regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'grek'
-s 'latn'
-s 'latn' -l 'LTH '
-s 'latn' -l 'ROM '
-s 'latn' -l 'TRK '
# Features:
-f c2sc,case,ccmp,cv01,cv02,cv03,dnom,frac,liga,locl,numr,onum,pnum,smcp,subs,sups
$ pyftfeatfreeze -r 'NotoSans-Regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'cyrl' -l 'MKD '
-s 'cyrl' -l 'SRB '
-s 'dev2'
-s 'dev2' -l 'MAR '
-s 'dev2' -l 'NEP '
-s 'grek'
-s 'latn'
-s 'latn' -l 'APPH'
-s 'latn' -l 'CAT '
-s 'latn' -l 'IPPH'
-s 'latn' -l 'MAH '
-s 'latn' -l 'MOL '
-s 'latn' -l 'NAV '
-s 'latn' -l 'ROM '
# Features:
-f aalt,abvs,akhn,blwf,blws,c2sc,case,ccmp,cjct,dnom,frac,half,haln,liga,lnum,locl,nukt,numr,onum,ordn,pnum,pres,psts,rkrf,rphf,rtlm,salt,sinf,smcp,ss03,ss04,ss06,ss07,subs,sups,tnum,vatu,zero
$ pyftfeatfreeze -r 'Roboto-Regular.ttf'
# Scripts and languages:
-s 'DFLT'
-s 'cyrl'
-s 'grek'
-s 'latn'
-s 'latn' -l 'AZE '
-s 'latn' -l 'CRT '
-s 'latn' -l 'FRA '
-s 'latn' -l 'MOL '
-s 'latn' -l 'NAV '
-s 'latn' -l 'ROM '
-s 'latn' -l 'TRK '
# Features:
-f c2sc,ccmp,dlig,dnom,frac,liga,lnum,locl,numr,onum,pnum,salt,smcp,ss01,ss02,ss03,ss04,ss05,ss06,ss07,tnum,unic
StefanPeev commented 7 months ago

There is no official Bulgarian style and no official glyph set for it either.

@moyogo This is true. There is no official form of Bulgarian Cyrillic, although fonts with Bulgarian Cyrillic forms are widely spread in Bulgaria in the last 5 years.

StefanPeev commented 5 months ago

The oval Cyrillic alphabet has already been codified as an official book standard for printed letters in Bulgaria

The oval form of the Cyrillic alphabet is recognized as official in Bulgaria and is legalized by the Bulgarian Language Institute of the Bulgarian Academy of Sciences and the Ministry of Education and Science of the Republic of Bulgaria through the online edition of the "Official Spelling Dictionary of the Bulgarian Language". The Bulgarian Language Institute of the Bulgarian Academy of Sciences is the only institution in Bulgaria that is authorized to be officially responsible for the codification norms of the modern Bulgarian literary language. In the "Bulgarian alphabet" section, for the first time, the printed capital and small letters are represented by an oval form of the Cyrillic alphabet, and this already turns the oval Cyrillic into an official form of the printed alphabet in Bulgaria. It is curious that the website of the publication "Official Spelling Dictionary of the Bulgarian Language" uses the font of the Russian company "Paratype" - PT Serif BGR.

Screenshot 2024-05-11 031036