From e398eb84064c5eac7cb8a97c276494100a37314b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=AA=20Vi=E1=BA=BFt=20Ho=C3=A0ng=20D=C5=A9ng?= Date: Sat, 6 Jul 2019 16:00:16 +0700 Subject: [PATCH] Use Menlo as fallback font on macOS This commit makes alacritty use Menlo as a fallback font on macOS if the config specified font family isn't found. --- CHANGELOG.md | 1 + font/src/darwin/mod.rs | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b7ed41f..d1bbd428 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - The window is now filled with the background color before displaying - Cells sometimes not getting cleared correctly - X11 clipboard hanging when mime type is set +- On macOS, Alacritty will now fallback to Menlo if a font specified in the config cannot be loaded ## 0.3.3 diff --git a/font/src/darwin/mod.rs b/font/src/darwin/mod.rs index 3a481196..cccae032 100644 --- a/font/src/darwin/mod.rs +++ b/font/src/darwin/mod.rs @@ -314,10 +314,11 @@ pub fn descriptors_for_family(family: &str) -> Vec { let mut out = Vec::new(); trace!("Family: {}", family); - let ct_collection = match create_for_family(family) { - Some(c) => c, - None => return out, - }; + let ct_collection = create_for_family(family).unwrap_or_else(|| { + // Fallback to Menlo if we can't find the config specified font family. + warn!("Unable to load specified font {}, falling back to Menlo", &family); + create_for_family("Menlo").expect("Menlo exists") + }); // CFArray of CTFontDescriptorRef (i think) let descriptors = ct_collection.get_descriptors();