- Split Unicode ranges by language to avoid mapping Hangul to Hiragino
Sans or Kana to Apple SD Gothic Neo. Shared CJK ranges (ideographs,
symbols, fullwidth forms) use the first CJK language's font, while
script-specific ranges (Kana, Hangul) only map to their own font.
- Use UUID-based temp file path to prevent race conditions on concurrent
launches.
- Move fallback injection after ghostty_config_load_recursive_files so
that config-file includes are already loaded when checking for
existing font-codepoint-map entries.
- Follow config-file directives when scanning for existing
font-codepoint-map entries.
- Extract test helper withTempConfig to reduce duplication.
- Add tests for multi-language mappings and config-file includes.
- Replace placeholder issue URL with actual PR link.
On macOS, Core Text's CTFontCreateForString may pick an inappropriate
fallback font (e.g. LingWai, a decorative calligraphic font) for CJK
characters when the primary font (e.g. Menlo) does not cover them.
This adds automatic CJK font fallback based on the system's preferred
language:
- ja → Hiragino Sans
- ko → Apple SD Gothic Neo
- zh-Hant/zh-TW/zh-HK → PingFang TC
- zh → PingFang SC
The fallback is only applied when:
1. The user has not set any font-codepoint-map in their Ghostty config
2. A CJK language is detected in the system's preferred languages
This ensures CJK text renders with appropriate system fonts instead of
relying on Core Text's unpredictable fallback chain.
* Add Apple Icon Composer source file
Store the .icon project file in design/cmux.icon so the icon can be
edited in Icon Composer and regenerated from source.
* Regenerate all app icons from Icon Composer
Use ictool to render light/dark icon PNGs from the .icon source file
with proper macOS padding. Updates AppIcon, AppIcon-Debug (with DEV
banner), AppIconLight, and AppIconDark imagesets. Adds AppIcon.icon
to the Xcode project as a resource.
* Address review: fix trailing newline, remove .icon from bundle
- Add trailing newline to icon.json files
- Remove AppIcon.icon from Copy Bundle Resources (design-time only)
- Created new Documentation section with docs link
- Moved Reddit link below LinkedIn in Community section
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: cmux <cmux@cmuxs-Mac-mini.local>
Co-authored-by: Claude <noreply@anthropic.com>
* Add Reddit community link and docs reference to README
Added Reddit (r/cmux) to Community section and included a link to docs after The Zen of cmux section for easier configuration access.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Fix UTM parameter to use standard utm_source
---------
Co-authored-by: cmux <cmux@cmuxs-Mac-mini.local>
Co-authored-by: Claude <noreply@anthropic.com>
Move "Copy Update Logs" and "Copy Focus Logs" from a standalone
top-level "Update Logs" menu into the existing Debug menu. Remove
the now-unused menu.updateLogs.title localization key.
Co-authored-by: cmux <cmux@cmuxs-Mac-mini.local>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* Cache Swift packages across CI runs
Add actions/cache for the SPM cloned source packages directory so
subsequent runs skip fetching Sparkle, sentry-cocoa, swift-markdown-ui,
posthog-ios, and NetworkImage from GitHub each time.
- nightly/release: replace the no-op SwiftPM cache step with
actions/cache + -clonedSourcePackagesDirPath on xcodebuild
- ci/ci-macos-compat/test-e2e: add actions/cache before the existing
resolve step, stop deleting the cache dir each run
* Include runner in test-e2e cache key
Consistent with ci-macos-compat.yml which uses matrix.os in the key.
Use `open -g` (background) and remove `osascript activate` calls across
reload.sh, reloadp.sh, and reloads.sh so rebuilds no longer yank focus
away from the active window.
* Add sidebar help menu
* Fix help menu test wiring
* Fix help menu accessibility
* Use native popup for help menu
* Use icon button for sidebar help
* Add feedback composer and feedback API
* Allow preview builds without feedback env
* Tighten feedback upload limits
* Adjust sidebar footer padding
* Tighten sidebar footer spacing
* Add link affordances to help menu
* Polish sidebar feedback composer
* Move feedback icon to trailing edge
* Normalize help menu trailing icon sizes
* Enlarge help menu trailing icons
* Reduce help menu link icon size
* Shrink help menu link arrow
* Reduce help menu link arrow again
* Fix feedback message editor focus
* Add send feedback keyboard shortcut
* Polish feedback launch and delivery