githubnext / githubnext/monaspace
For variable fonts; cv13 only changes б into Serbian Cyrillic form; but г, д, и, п, and т don't get changed into Serbian Cyrillic forms.
- Lingua principale
- Shell
- Stelle
- 19.6k
- Fork
- 322
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Disclaimer: I don't speak languages that use Cyrillic characters so my knowledge of the script is fairly limited.
I was reading about the difference of Cyrillic characters between those in Russia, Bulgaria (available within the opentype feature `cv12` in Monaspace fonts) and Serbia (available within the opentype feature `cv13` in Monaspace fonts).
See also: https://en.wikipedia.org/wiki/Cyrillic_alphabets#/media/File:Cyrillic_alternates.svg
Afterwards I looked into implementation of this on other fonts, it seems that [Cascadia Code/Cascadia Mono](https://github.com/microsoft/cascadia-code/) implement both Bulgarian and Serbian Cyrillic glyphs.
* Bulgarian Cyrillic is available within the opentype feature `locl`. (which is harder to utilize than `cvxx` / `ssxx` so I think that Monaspace's implementation is better than that of Cascadia in this regard)
* Serbian Cyrillic is available for the character б, г, п and т тwithin the opentype feature `ss03`, but only for the italic font files. (No upright Serbian Cyrillic glyphs)
Back to Monaspace fonts, after I inspect some Monaspace font files with [Fontdrop](https://fontdrop.info/#/?darkmode=true), it appears that `cv13` is supposed to be able to alter up to six characters: б, г, д, и, п, and т. Where only the first character (б) would be changed into in the Serbian Cyrillic glyph in the upright fonts, and all of these 6 characters would be changed into in the Serbian Cyrillic glyph in the italic fonts. Although all fonts have no problem changing the first character (б) into the Serbian Cyrillic glyph. I couldn't get the variable font files to change the remaining 5 characters into the Serbian Cyrillic glyph at all. Which is strange since all italic static font files I've tested can change all 6 characters into the Serbian Cyrillic glyph with no problem.
Gallery:
Image 1, viewing `Monaspace Argon Var.ttf` with Fontdrop with `slant`=0 (upright) and `cv13` disabled
Image 2, viewing `Monaspace Argon Var.ttf` with Fontdrop with `slant`=-11 (italic) and `cv13` disabled
Image 3, viewing `Monaspace Argon Var.ttf` with Fontdrop with `slant`=0 (upright) and `cv13` enabled
Image 4, viewing `Monaspace Argon Var.ttf` with Fontdrop with `slant`=-11 (italic) and `cv13` enabled
Image 5, viewing `MonaspaceArgon-ExtraLight.otf` with Fontdrop with `cv13` disabled
Image 6, viewing `MonaspaceArgon-ExtraLightItalic.otf` with Fontdrop with `cv13` disabled
Image 7, viewing `MonaspaceArgon-ExtraLight.otf` with Fontdrop with `cv13` enabled
Image 8, viewing `MonaspaceArgon-ExtraLightItalic.otf` with Fontdrop with `cv13` enabled
As it can be seen here, behavior of variable fonts in image 4 is incorrect and, to the best of my understanding, should be like in image 8.
Closing notes:
1. I haven't checked every font files as there are 1485 Monaspace font files in total. (As of current version: 1.4)
2. I haven't seriously checked on the Bulgarian Cyrillic glyphs. Though everything about them seems normal for the time being.
3. The text shown in the above screenshots is:
> ШИРОКАЯ ЭЛЕКТРИФИКАЦИЯ ЮЖНЫХ ГУБЕРНИЙ ДАСТ МОЩНЫЙ ТОЛЧОК ПОДЪЁМУ СЕЛЬСКОГО ХОЗЯЙСТВА.
> Б Г Д И П Т
> широкая электрификация южных губерний даст мощный толчок подъёму сельского хозяйства.
> б г д и п т
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Riproduci il problema con Monaspace Argon Var.ttf in Fontdrop usando slant 0 e -11, con cv13 abilitato, e confrontalo con MonaspaceArgon-ExtraLightItalic.otf. Esamina come il font variabile gestisce i sei caratteri cirillici serbi б, г, д, и, п e т; il lavoro è completato quando cv13 produce le modifiche dei glifi previste nel font variabile, in linea con il comportamento del font statico in corsivo.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Ambito
- design
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 44/100