Themes and fonts
Pick a theme, install Nerd Fonts, and migrate from Ghostty.
Themes
vmuxMac ships with a curated library of color schemes shared with the rest of the vmux family. Open the Appearance tab in Settings to see the list, or run theme-set in vsh to switch by name.
The theme defines the foreground color, background color, ANSI 16-color palette, cursor color, and selection color. Themes are sourced from VSCode .json files and converted to terminal palettes — so any VSCode theme that ships ANSI colors can be used in vmuxMac.
Browse and select
- Open Settings → Appearance → Theme to see all themes installed in your library.
- Run
themesortheme-listin vsh to see the same list as a text dump with the active theme marked. - Run
theme NAME(fuzzy matching is fine) to switch immediately. - Open the command palette and run Theme to switch interactively.
The theme change is immediate. You do not need to restart the app or any open sessions.
Importing a VSCode theme
vmuxMac can import any VSCode .json theme that includes terminal colors. To add a theme:
- Find a
.jsontheme file (most VSCode theme extensions ship one in theirthemes/directory; you can also export one from the VSCode UI). - Open the command palette and run Import Theme, or run
theme-import /path/to/theme.jsonin vsh. - The theme is added to your library with the name from the file's metadata. Switch to it the same way you switch to any other theme.
Imported themes are stored alongside the bundled themes and persist across launches. To remove an imported theme, run theme-remove NAME in vsh.
For full theme details, including the full color mapping and the parsing rules vmuxMac uses, see Themes.
Fonts
The terminal font has three knobs: which font, what size, and what weight.
| Setting | Range | Default |
|---|---|---|
| Font | Any installed Nerd Font | JetBrains Mono Nerd Font |
| Font size | 8 pt to 32 pt | 14 pt |
| Weight | Regular, Bold | Regular |
Change any of them from Settings → Appearance, the command palette, or vsh.
Nerd Fonts
vmuxMac uses Nerd Fonts — patched monospace fonts that include the symbol glyphs that modern terminal prompts (Starship, oh-my-posh, Powerlevel10k) and tools (vim airline, lazygit, btop) expect. Without a Nerd Font, those symbols render as boxes or fallback characters.
vmuxMac bundles JetBrains Mono Nerd Font in regular and bold so you have a working setup out of the box. To use a different Nerd Font:
- Download the font from the Nerd Fonts site.
- Install it on your Mac the way you install any other font (Font Book, or double-click the
.ttf/.otffile). - Open the command palette and run Font, or run
fontin vsh, to see the list of fonts vmuxMac discovered. The list includes every Nerd Font installed on the Mac. - Select your new font.
If a font you just installed does not appear in the list, run font-rescan in vsh to refresh the discovery. vmuxMac does not need to be restarted.
Font size
Three keyboard shortcuts control the font size of the focused terminal:
| Shortcut | Action |
|---|---|
| Cmd++ | Increase by 1 pt |
| Cmd+- | Decrease by 1 pt |
| Cmd+0 | Reset to the default size |
Pinch-to-zoom on a trackpad also works inside the terminal — pinch out to zoom in, pinch in to zoom out. The font size persists across sessions per app, not per window. If you want one window large and another small, change the size after focusing the desired window — the change applies globally.
For deeper details on font discovery and the file formats vmuxMac understands, see Fonts.
Font weight
Toggle between Regular and Bold from Settings → Appearance → Weight, the palette Font Weight entry, or set-font-weight in vsh. Bold weight uses a heavier face from the same Nerd Font family.
Cursor
The cursor has three settings of its own.
| Setting | Options |
|---|---|
| Shape | Block, Hollow Block, Underline, Bar |
| Blink | On, Off |
| Opacity | 5% to 100% (Mac-specific) |
Cursor opacity is unique to vmuxMac: lowering it makes the cursor a translucent overlay rather than a solid block. This is useful when the cursor would otherwise hide important text in your terminal — for example, with a block cursor over an autocomplete suggestion. Adjust it from Settings → Mac → Cursor → Opacity or run set-cursor-opacity 0.5 in vsh.
Background opacity
The background opacity slider on the Appearance tab is honored by managed vmux sessions and by the command palette panel style. While the local-shell terminal runs through libghostty, libghostty manages its own opacity from your Ghostty config — see the migration section below.
Migrating from Ghostty
If you already use Ghostty, vmuxMac can import its config in one click. This is a convenience for the many users who already have a tuned Ghostty config and do not want to re-do their work in a new app.
To import:
- Make sure your Ghostty config is at one of the standard locations:
~/Library/Application Support/com.mitchellh.ghostty/configor~/.config/ghostty/config. - Open the command palette and run Import Ghostty Config, or open Settings → Mac → Migration → Import Ghostty Config, or run
ghostty-importin vsh. - vmuxMac parses the config and applies recognized keys to your settings.
Recognized keys:
| Ghostty key | Maps to |
|---|---|
font-family | The matching Nerd Font in your library. JetBrains is mapped explicitly. |
font-size | Font size |
theme | Theme name (fuzzy-matched against your library; imported from the Ghostty themes/ directory if needed) |
background-opacity | Background opacity |
macos-option-as-alt | Option as Meta Key |
cursor-style | Cursor shape |
cursor-style-blink | Cursor blink |
cursor-opacity | Cursor opacity (scaled from 0 – 100 to 0 – 1) |
window-padding-x, window-padding-y | Window padding |
macos-titlebar-style | Hidden Title Bar (when set to hidden) |
focus-follows-mouse | Focus Follows Mouse |
Keys not in the list above are silently skipped or, in a few specific cases, recognized as no-ops to avoid spurious warnings (background-blur, clipboard-read, shell-integration, and similar). Themes that are not in vmuxMac's library are read from your Ghostty themes/ directory if present and added to your library.
After import, the Mac tab shows how many settings were applied. Run the import again any time you change your Ghostty config — it is idempotent.
Where to go next
- Themes — full theme reference.
- Fonts — Nerd Font installation and discovery rules.
- Settings — every option in one place.
- Command palette — change theme and font without leaving the keyboard.