> ## Documentation Index
> Fetch the complete documentation index at: https://www.rumus.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Fonts & ligatures

> Choose the terminal font, fallback, size, and line height — and turn on programming ligatures if your font supports them.

The terminal font is one of the most personal settings in any terminal app. Rumus lets you pick a primary font, a fallback for characters the primary doesn't cover (CJK is the common case), set the size and line height, and use programming ligatures automatically when the font supports them.

Configure them at **Settings → Appearance → Text**.

## Pick a terminal font

Click the **Terminal font** field and search through the fonts installed on your system. Suggested types of fonts to look for:

* A **monospace** font designed for code: JetBrains Mono, Cascadia Code, IBM Plex Mono, Fira Code, Hack, Iosevka, Source Code Pro, and so on.
* A font with **good box-drawing characters** if you use TUIs like `htop` or `k9s`.
* A font with **programming ligatures** if you like that aesthetic — see below.

Apply the change and any open terminal tabs re-render immediately.

## CJK / fallback font

Most monospace fonts ship without comprehensive Chinese / Japanese / Korean glyphs. The **Fallback font** field lets you pick a second font Rumus reaches for when the primary doesn't have a glyph.

Common pairings:

| Region                | Suggested fallback                    |
| --------------------- | ------------------------------------- |
| Chinese (Simplified)  | Sarasa Mono SC, Noto Sans Mono CJK SC |
| Chinese (Traditional) | Sarasa Mono TC, Noto Sans Mono CJK TC |
| Japanese              | Sarasa Mono J, Noto Sans Mono CJK JP  |
| Korean                | Sarasa Mono K, Noto Sans Mono CJK KR  |

A good fallback is **monospace** itself, otherwise CJK glyphs end up at a different cell width than ASCII and your alignment goes haywire.

## Size and line height

Two more knobs:

* **Font size (px)** — pixel size of the rendered glyphs. Defaults to a sensible value for a typical screen; bump up for large displays or down for dense ones.
* **Line height** — the multiplier on the font's natural line height. `1.0` is tight; `1.2` adds a little air.

Both apply instantly. Adjust until it looks right and your eyes aren't doing extra work.

## Reset to default

The text section has a **Reset to default** button that restores the shipping defaults for the primary font, fallback, size, and line height — useful if you've experimented your way into something illegible.

## Programming ligatures

A growing number of monospace fonts ship with **programming ligatures** — glyphs that render `=>`, `!=`, `>=`, `<=`, `==`, `->` and similar as single composite shapes.

Rumus's terminal **automatically enables ligatures when the chosen font supports them**. There's no separate toggle.

Fonts known to ship ligatures:

* **Fira Code** — the classic, with one of the most extensive ligature sets.
* **JetBrains Mono** — JetBrains' own font, tasteful ligatures.
* **Cascadia Code** — Microsoft's, also great with ligatures.
* **Iosevka** — highly customizable, ligatures available.
* **Victor Mono**, **Hasklig**, **Monoid**, and others.

If your chosen font doesn't have ligatures, you'll see standard glyphs — no broken rendering, just plain characters.

## Tips

* **Test in your real workflow.** Fonts feel different in `git diff` than they do in a settings preview. Open a typical session, look at code, look at logs, look at TUIs.
* **Mind your fallback when copying.** A fallback that's not a *fixed-width* font will show CJK at variable widths. If text alignment matters in your work, prefer monospace fallbacks like Sarasa Mono.
* **High-DPI screens take a different size.** What looks right at 13px on a Retina display can be unreadable on a 1080p monitor. Adjust per machine.

## Settings sync

Terminal font, fallback, size, and line height all sync across devices via [config sync](/docs/account/sync). Note that **the font has to be installed on each device** for it to render — sync only carries the choice, not the font file.

## Next steps

<CardGroup cols={2}>
  <Card title="Themes & color schemes" icon="palette" href="/docs/customization/themes">
    Pair your font with the right palette for readability.
  </Card>

  <Card title="Language" icon="language" href="/docs/customization/language">
    Switch the Rumus UI to Chinese, Japanese, Korean, or Spanish.
  </Card>
</CardGroup>
