2026-09-28 11:08:17 -04:00
---
title: Ghostty
2026-10-08 11:29:11 -04:00
description: Ghostty as a tmux-only terminal — every window attaches to tmux, and ctrl+shift chords drive tmux.
2026-09-28 11:08:17 -04:00
---
2026-10-08 11:29:11 -04:00
Ghostty is only a [tmux](/terminal/tmux) client. tmux owns tabs (windows), splits (panes), sessions, and persistence. Ghostty draws the text and handles the clipboard and font size.
2026-09-28 11:08:17 -04:00
| | |
| --- | --- |
| Source | `dot_config/ghostty/config`, `dot_config/ghostty/config.ghostty`, `dot_config/ghostty/themes/` |
| Target | `~/.config/ghostty/` |
| Install | Not listed in `.chezmoidata/packages.yaml`; install separately |
Ghostty reads both `config` and `config.ghostty`. `config` holds all settings; `config.ghostty` contains a single line, `theme = noctalia`, which selects the active theme.
## Options
| Option | Value |
| --- | --- |
2026-10-08 11:29:11 -04:00
| `font-family` / `font-size` | `IoskeleyMonoTerm Nerd Font Mono` / `11` |
| `adjust-cell-height` | `20%` (line height) |
2026-09-28 11:08:17 -04:00
| `background-opacity` / `background-blur` | `0.9` / `true` |
| `window-decoration` | `false`; `gtk-titlebar = false` |
2026-10-08 11:29:11 -04:00
| `window-padding-x/y` | `2` |
2026-09-28 11:08:17 -04:00
| `cursor-style` | `underline`, blinking |
2026-10-08 11:29:11 -04:00
| `scrollback-limit` | `3023` (tmux keeps the real scrollback: `history-limit 50000`) |
2026-09-28 11:08:17 -04:00
| `mouse-hide-while-typing` | `true` |
| `copy-on-select` | `false` |
| `confirm-close-surface` | `false` |
| `app-notifications` | `no-clipboard-copy,no-config-reload` |
| `quit-after-last-window-closed` | `false`, delay `5m` |
2026-10-08 11:29:11 -04:00
| `command` | `tmux new-session -A -s main`: every window attaches to tmux session `main` and creates it if it is missing |
2026-09-28 11:08:17 -04:00
| `shell-integration` | `detect`, features `cursor,sudo,title,no-cursor` |
| `gtk-single-instance` | `true` |
2026-10-08 11:29:11 -04:00
## Persistence
Closing Ghostty only detaches from tmux; the shells keep running in the tmux server. Across reboots, tmux-continuum saves the layout every 10 minutes. When the first Ghostty window starts a new tmux server, continuum restores the last save. See [tmux](/terminal/tmux#persistence).
2026-09-28 11:08:17 -04:00
## Keybindings
2026-10-08 11:29:11 -04:00
`keybind = clear` comes first and drops every Ghostty default: tabs, splits, `alt+N` goto_tab, and `ctrl+alt+arrow` goto_split. Those chords then reach tmux, which binds `alt+1…9` and `ctrl+alt+arrows` itself. Each `ctrl+shift` chord sends tmux's second prefix, `ctrl+b` (`\x02`), followed by a key.
| Key | Ghostty action |
2026-09-28 11:08:17 -04:00
| --- | --- |
2026-10-08 11:29:11 -04:00
| `ctrl+shift+c` / `ctrl+shift+v` | Copy / paste |
2026-09-28 11:08:17 -04:00
| `ctrl+plus` / `ctrl+minus` / `ctrl+zero` | Font size +1 / -1 / reset |
2026-10-08 11:29:11 -04:00
| `ctrl+shift+.` | Reload Ghostty config |
2026-09-28 11:08:17 -04:00
| `shift+enter` | Sends a literal newline |
2026-10-08 11:29:11 -04:00
| Key | Sends | tmux action |
| --- | --- | --- |
| `ctrl+shift+t` | `prefix c` | New window (tab) in pane cwd |
| `ctrl+shift+w` | `prefix k` | Kill window (close tab) |
| `ctrl+shift+r` | `prefix r` | Rename window |
| `ctrl+tab` / `ctrl+page_down` / `ctrl+shift+right` / `ctrl+shift+k` | `prefix n` | Next window |
| `ctrl+shift+tab` / `ctrl+page_up` / `ctrl+shift+left` / `ctrl+shift+h` | `prefix p` | Previous window |
| `ctrl+shift+l` | `prefix v` | Split right |
| `ctrl+shift+e` / `ctrl+shift+j` | `prefix h` | Split below |
| `ctrl+shift+o` | `prefix o` | Session picker (tmux-sessionx) |
| `ctrl+shift+x` | `prefix x` | Kill pane |
| `ctrl+shift+enter` / `ctrl+shift+z` | `prefix z` | Zoom pane |
| `ctrl+shift+f` | `prefix /` | Search scrollback upward |
| `ctrl+shift+page_up` | `prefix [` | Copy mode |
| `ctrl+shift+p` | `prefix :` | Command prompt |
| `ctrl+shift+/` | `prefix ?` | Keybinding help popup |
| `ctrl+shift+alt+,` | `prefix q` | Reload tmux config |
| `ctrl+shift+n` | `prefix C` | New session |
| `ctrl+shift+s` | `prefix s` | Session/window tree |
| `ctrl+shift+q` | `prefix d` | Detach (closes the Ghostty window; the session lives on) |
2026-09-28 11:08:17 -04:00
## Themes
| Theme | Notes |
| --- | --- |
| `noctalia` | Active. Palette matching the Noctalia shell. |
| `ii-auto` | Auto-generated by the ii wallpaper theming system; not meant to be edited. |
| `koda-dark` / `koda-light` | Koda palettes with `bold-is-bright = true`. |