Update default macOS fonts
This commit is contained in:
parent
9519696a5b
commit
4b98970436
2 changed files with 47 additions and 8 deletions
|
|
@ -5,40 +5,81 @@ pub fn common_fallback() -> &'static [&'static str] {
|
||||||
&[
|
&[
|
||||||
".SF NS",
|
".SF NS",
|
||||||
"Apple Color Emoji",
|
"Apple Color Emoji",
|
||||||
|
"Geneva",
|
||||||
|
"Arial Unicode MS",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fallbacks to never use
|
// Fallbacks to never use
|
||||||
pub fn forbidden_fallback() -> &'static [&'static str] {
|
pub fn forbidden_fallback() -> &'static [&'static str] {
|
||||||
&[]
|
&[
|
||||||
|
".LastResort",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
fn han_unification(locale: &str) -> &'static [&'static str] {
|
||||||
|
match locale {
|
||||||
|
// Japan
|
||||||
|
"ja" => &["Hiragino Sans"],
|
||||||
|
// Korea
|
||||||
|
"ko" => &["Apple SD Gothic Neo"],
|
||||||
|
// Hong Kong
|
||||||
|
"zh-HK" => &["PingFang HK"],
|
||||||
|
// Taiwan
|
||||||
|
"zh-TW" => &["PingFang TC"],
|
||||||
|
// Simplified Chinese is the default (also catches "zh-CN" for China)
|
||||||
|
_ => &["PingFang SC"],
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fallbacks to use per script
|
// Fallbacks to use per script
|
||||||
pub fn script_fallback(script: &Script, locale: &str) -> &'static [&'static str] {
|
pub fn script_fallback(script: &Script, locale: &str) -> &'static [&'static str] {
|
||||||
//TODO: abstract style (sans/serif/monospaced)
|
//TODO: abstract style (sans/serif/monospaced)
|
||||||
|
//TODO: pull more data from about:config font.name-list.sans-serif in Firefox
|
||||||
match script {
|
match script {
|
||||||
Script::Adlam => &["Noto Sans Adlam"],
|
Script::Adlam => &["Noto Sans Adlam"],
|
||||||
|
Script::Arabic => &["Geeza Pro"],
|
||||||
Script::Armenian => &["Noto Sans Armenian"],
|
Script::Armenian => &["Noto Sans Armenian"],
|
||||||
|
Script::Bengali => &["Bangla Sangam MN"],
|
||||||
Script::Buhid => &["Noto Sans Buhid"],
|
Script::Buhid => &["Noto Sans Buhid"],
|
||||||
|
Script::Canadian_Aboriginal => &["Euphemia UCAS"],
|
||||||
Script::Chakma => &["Noto Sans Chakma"],
|
Script::Chakma => &["Noto Sans Chakma"],
|
||||||
|
Script::Devanagari => &["Devanagari Sangam MN"],
|
||||||
|
Script::Ethiopic => &["Kefa"],
|
||||||
Script::Gothic => &["Noto Sans Gothic"],
|
Script::Gothic => &["Noto Sans Gothic"],
|
||||||
|
Script::Grantha => &["Grantha Sangam MN"],
|
||||||
|
Script::Gujarati => &["Gujarati Sangam MN"],
|
||||||
|
Script::Gurmukhi => &["Gurmukhi Sangam MN"],
|
||||||
|
Script::Han => han_unification(locale),
|
||||||
|
Script::Hangul => han_unification("ko"),
|
||||||
Script::Hanunoo => &["Noto Sans Hanunoo"],
|
Script::Hanunoo => &["Noto Sans Hanunoo"],
|
||||||
|
Script::Hebrew => &["Arial"],
|
||||||
|
Script::Hiragana => han_unification("ja"),
|
||||||
Script::Javanese => &["Noto Sans Javanese"],
|
Script::Javanese => &["Noto Sans Javanese"],
|
||||||
Script::Kannada => &["Noto Sans Kannada"],
|
Script::Kannada => &["Noto Sans Kannada"],
|
||||||
|
Script::Katakana => han_unification("ja"),
|
||||||
|
Script::Khmer => &["Khmer Sangam MN"],
|
||||||
|
Script::Lao => &["Lao Sangam MN"],
|
||||||
|
Script::Malayalam => &["Malayalam Sangam MN"],
|
||||||
Script::Mongolian => &["Noto Sans Mongolian"],
|
Script::Mongolian => &["Noto Sans Mongolian"],
|
||||||
Script::Myanmar => &["Noto Sans Myanmar"],
|
Script::Myanmar => &["Noto Sans Myanmar"],
|
||||||
Script::Oriya => &["Noto Sans Oriya"],
|
Script::Oriya => &["Noto Sans Oriya"],
|
||||||
|
Script::Sinhala => &["Sinhala Sangam MN"],
|
||||||
Script::Syriac => &["Noto Sans Syriac"],
|
Script::Syriac => &["Noto Sans Syriac"],
|
||||||
Script::Tagalog => &["Noto Sans Tagalog"],
|
Script::Tagalog => &["Noto Sans Tagalog"],
|
||||||
Script::Tagbanwa => &["Noto Sans Tagbanwa"],
|
Script::Tagbanwa => &["Noto Sans Tagbanwa"],
|
||||||
Script::Tai_Le => &["Noto Sans Tai Le"],
|
Script::Tai_Le => &["Noto Sans Tai Le"],
|
||||||
Script::Tai_Tham => &["Noto Sans Tai Tham"],
|
Script::Tai_Tham => &["Noto Sans Tai Tham"],
|
||||||
Script::Tai_Viet => &["Noto Sans Tai Viet"],
|
Script::Tai_Viet => &["Noto Sans Tai Viet"],
|
||||||
|
Script::Tamil => &["InaiMathi"],
|
||||||
|
Script::Telugu => &["Telugu Sangam MN"],
|
||||||
Script::Thaana => &["Noto Sans Thaana"],
|
Script::Thaana => &["Noto Sans Thaana"],
|
||||||
|
Script::Thai => &["Ayuthaya"],
|
||||||
|
Script::Tibetan => &["Kailasa"],
|
||||||
Script::Tifinagh => &["Noto Sans Tifinagh"],
|
Script::Tifinagh => &["Noto Sans Tifinagh"],
|
||||||
Script::Vai => &["Noto Sans Vai"],
|
Script::Vai => &["Noto Sans Vai"],
|
||||||
//TODO: Use han_unification?
|
//TODO: Use han_unification?
|
||||||
Script::Yi => &["Noto Sans Yi"],
|
Script::Yi => &["Noto Sans Yi", "PingFang SC"],
|
||||||
_ => &[],
|
_ => &[],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,13 +24,11 @@ fn han_unification(locale: &str) -> &'static [&'static str] {
|
||||||
"ja" => &["Noto Sans CJK JA"],
|
"ja" => &["Noto Sans CJK JA"],
|
||||||
// Korea
|
// Korea
|
||||||
"ko" => &["Noto Sans CJK KR"],
|
"ko" => &["Noto Sans CJK KR"],
|
||||||
// China
|
|
||||||
"zh-CN" => &["Noto Sans CJK SC"],
|
|
||||||
// Hong Kong
|
// Hong Kong
|
||||||
"zh-HK" => &["Noto Sans CJK HK"],
|
"zh-HK" => &["Noto Sans CJK HK"],
|
||||||
// Taiwan
|
// Taiwan
|
||||||
"zh-TW" => &["Noto Sans CJK TC"],
|
"zh-TW" => &["Noto Sans CJK TC"],
|
||||||
// Simplified Chinese is the default
|
// Simplified Chinese is the default (also catches "zh-CN" for China)
|
||||||
_ => &["Noto Sans CJK SC"],
|
_ => &["Noto Sans CJK SC"],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -50,19 +48,19 @@ pub fn script_fallback(script: &Script, locale: &str) -> &'static [&'static str]
|
||||||
Script::Deseret => &["Noto Sans Deseret"],
|
Script::Deseret => &["Noto Sans Deseret"],
|
||||||
Script::Devanagari => &["Noto Sans Devanagari"],
|
Script::Devanagari => &["Noto Sans Devanagari"],
|
||||||
Script::Ethiopic => &["Noto Sans Ethiopic"],
|
Script::Ethiopic => &["Noto Sans Ethiopic"],
|
||||||
Script::Hangul => &["Noto Sans CJK KR"],
|
|
||||||
Script::Georgian => &["Noto Sans Georgian"],
|
Script::Georgian => &["Noto Sans Georgian"],
|
||||||
Script::Gothic => &["Noto Sans Gothic"],
|
Script::Gothic => &["Noto Sans Gothic"],
|
||||||
Script::Grantha => &["Noto Sans Grantha"],
|
Script::Grantha => &["Noto Sans Grantha"],
|
||||||
Script::Gujarati => &["Noto Sans Gujarati"],
|
Script::Gujarati => &["Noto Sans Gujarati"],
|
||||||
Script::Gurmukhi => &["Noto Sans Gurmukhi"],
|
Script::Gurmukhi => &["Noto Sans Gurmukhi"],
|
||||||
Script::Han => han_unification(locale),
|
Script::Han => han_unification(locale),
|
||||||
|
Script::Hangul => han_unification("ko"),
|
||||||
Script::Hanunoo => &["Noto Sans Hanunoo"],
|
Script::Hanunoo => &["Noto Sans Hanunoo"],
|
||||||
Script::Hebrew => &["Noto Sans Hebrew"],
|
Script::Hebrew => &["Noto Sans Hebrew"],
|
||||||
Script::Hiragana => &["Noto Sans CJK JP"],
|
Script::Hiragana => han_unification("ja"),
|
||||||
Script::Javanese => &["Noto Sans Javanese"],
|
Script::Javanese => &["Noto Sans Javanese"],
|
||||||
Script::Kannada => &["Noto Sans Kannada"],
|
Script::Kannada => &["Noto Sans Kannada"],
|
||||||
Script::Katakana => &["Noto Sans CJK JP"],
|
Script::Katakana => han_unification("ja"),
|
||||||
Script::Khmer => &["Noto Sans Khmer"],
|
Script::Khmer => &["Noto Sans Khmer"],
|
||||||
Script::Lao => &["Noto Sans Lao"],
|
Script::Lao => &["Noto Sans Lao"],
|
||||||
Script::Malayalam => &["Noto Sans Malayalam"],
|
Script::Malayalam => &["Noto Sans Malayalam"],
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue