be5invis / Iosevka

Versatile typeface for code, from code.
http://be5invis.github.io/Iosevka
SIL Open Font License 1.1
19.12k stars 567 forks source link

OpenType Feature Request: Small/Petite Capitals (`smcp`/`pcap`). #2259

Open jmcwilliams403 opened 6 months ago

jmcwilliams403 commented 6 months ago

Small capitals (in an open-type sense, not an IPA/Unicode sense) would be the height of old-style numerals. Petite caps would always be x-height (more similar to IPA/Unicode small capitals). Examples under smcp: Noto Sans Mono: image Roboto Mono: image Keep in mind that their coverage here is not exhaustive, as they do not show examples of cyrillic/greek small capitals, and long s (ſ) should share a small capital form with round s (s). Some SIL fonts like Doulos SIL, Charis SIL, Gentium Plus, etc. have some examples, but not all at once.

be5invis commented 6 months ago

There are just too many things to handle... Mark as far future.

Logo121 commented 6 months ago

This feature has been raised before in #1815 and that one got Needs Justification.

A question though: How much coverage is smcp/pcap(/c2sc) supposed to have, as you mentioned the other fonts don't do it exhaustively?

jmcwilliams403 commented 6 months ago

A question though: How much coverage is smcp/pcap(/c2sc) supposed to have, as you mentioned the other fonts don't do it exhaustively?

There is no rule. Open-type feature utilization is entirely up to the font developers and is independent from Unicode. Some fonts only do Latin script, some do only ASCII, some do Latin and Cyrillic but not Greek due to casing issues being challenging, and some go all-out and give every character with a canonical capital counterpart in Unicode its own small-capital form.

jmcwilliams403 commented 6 months ago

This feature has been raised before in 1815 and that one got Needs Justification.

This one actually cites monospace/programming fonts.

jmcwilliams403 commented 1 month ago

If it helps at all, versions of fonts compiled for Google Fonts usually outsource their smcp etc. OpenType features to separate ttf/otf files as derived builds to save on space/glyphs. Example: Vollkorn vs. Vollkorn SC.