Conversation
macOS keeps some families it installs out of NSFontManager.availableFonts: Rockwell, Athelas, Iowan Old Style, Seravek, Superclarendon, Marion and others (116 families on macOS 27). Their faces still draw when named, so text imported from Photoshop in Rockwell-Regular showed that one face in the menu and no way to reach Rockwell-Bold. The menu now adds the family of the face in use, found through availableMembers(ofFontFamily:), which still answers for these families. It rebuilds only when that family is missing from the list.
The font menu lists every installed face, around 720 on a typical Mac,
with no way to narrow it. A search box now sits at its top and takes the
keys as soon as the menu opens: typing keeps the faces whose names hold
every word ("rock bold" finds Rockwell-Bold), Return chooses the first
one left, and closing the menu clears it.
Typing the name of a family macOS leaves out of the list ("seravek",
"iowan old style") lists its faces too.
A window keeps its bottom edge when it shrinks, so a cut-down list fell
to wherever the full list ended, often the foot of the screen. Once the
menu resizes, its top is put level with the font control.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two commits, so either can be taken alone.
Faces of families macOS leaves out of the font list
macOS keeps some of the families it installs out of
NSFontManager.availableFonts. On macOS 27 that's 116 of them, among them Rockwell, Athelas, Iowan Old Style, Seravek, Superclarendon and Marion. Their faces still draw when named, so text in Rockwell-Regular (here from a Photoshop file) showed that one face in the font menu, because the menu adds the face in use, and there was no way to reach Rockwell-Bold. Font Book doesn't list them either.The menu now also lists the family of the face in use, through
availableMembers(ofFontFamily:), which still answers for these families. It rebuilds only when that family isn't listed yet.A search box at the top of the font menu
With around 720 faces on a typical Mac, finding one meant scrolling or type-select on the first letters. A search box now sits at the top of the menu and takes the keys as soon as it opens:
Testing
FontMenuFacesTests: the family of a face in use is listed, a hidden family (Rockwell, skipped where it isn't installed) offers all four faces, search words match in any case, and a family is found by its typed name.CompositorTestssuite: 593 tests pass on macOS 27 (TEST SUCCEEDED, none failed).I'm using Compositor for my event's banners, and this came up with text imported from Photoshop in Rockwell.
🤖 Generated with Claude Code
https://claude.ai/code/session_01WC9aF7W8inTF7p9LZbNXRe