Appearance
Theme Format
Theme files at ~/.config/otty/themes/<name>.ottytheme are real TOML (unlike the main config). Schema below.
Minimal example
toml
# ~/.config/otty/themes/midnight.ottytheme
[terminal]
foreground = "#e0e0ff"
background = "#0a0a14"
palette = [
"#0a0a14", "#ff4d6d", "#7be0ad", "#ffd66b", # 0-3: black red green yellow
"#82aaff", "#c792ea", "#89ddff", "#d0d0ff", # 4-7: blue magenta cyan white
"#3b3b50", "#ff6b88", "#9eebbf", "#ffe28a", # 8-11: bright black red green yellow
"#a0c0ff", "#daa6f7", "#a8e6ff", "#ffffff", # 12-15: bright blue magenta cyan white
]Activate:
theme = midnightOnly [terminal] is required; every other section is optional.
[terminal] — required
| Key | Type | Description |
|---|---|---|
foreground | color | Default text colour |
background | color | Default background colour |
palette | array[16] color | ANSI 0-15 |
cursor | color | Cursor block (falls back to foreground) |
cursor-text | color | Foreground while inside cursor |
selection-foreground | color | (legacy — prefer [selection]) |
selection-background | color | (legacy — prefer [selection]) |
[ui] — UI chrome
toml
[ui]
title-bar-bg = "#0e0e18"
tab-bar-bg = "#0a0a14"
tab-active-bg = "#1a1a28"
tab-active-fg = "#ffffff"
sidebar-divider = "#3b3b50"Controls the window frame, tab sidebar, command palette tint.
[selection] — selection
toml
[selection]
foreground = "#ffffff"
background = "#3a3a55"[cursor] — cursor
toml
[cursor]
color = "#ffa830"
style = "beam" # block | underline | beam
blink = true[ghost] — autocomplete ghost text
toml
[ghost]
foreground = "#666680"Inheritance
toml
inherits = "glass-dark"
[terminal]
background = "#000000" # override only this; everything else from glass-darkUseful for tweaking a built-in theme without restating all 16 palette entries.
See also
- Themes — choosing and customizing.
- Config File Format — separate from theme format.
- Spec:
docs/spec/THEME_SPEC.mdin the repo.