Appearance
Config File Format
The syntax of ~/.config/otty/config.toml.
Despite the
.tomlextension, Otty's config is parsed in Ghostty-stylekey = valuelines — one per line, with TOML-compatible string quoting. This keeps the file portable for users coming from Ghostty.
Lexical structure
# Comments start with `#`
key = value
key-with-dashes = "string value"
font-feature = "+liga, +calt" # quoted to preserve commas- One assignment per line.
- Whitespace around
=is optional. - Unknown keys are silently ignored — typos won't error.
- Blank lines and
#comments are skipped.
Value types
| Type | Examples |
|---|---|
| String | JetBrains Mono, "value with spaces", 'literal' |
| Integer | 13, 0, -1 |
| Float | 0.92, 1.0, 3.14 |
| Boolean | true / false, also on / off |
| Color | #RRGGBB, #RRGGBBAA, named (red, cornflowerblue) |
| Enum | block, glass-dark — see each key's docs |
| List | repeated keys (e.g. multiple keybind = ...) |
Includes
include = ~/.config/otty/personal.toml
include = ~/dotfiles/otty/work.tomlLater includes override earlier ones; the main file is read last and overrides everything.
Environment expansion
~ and $VAR expand inside string values:
working-directory = ~/projects
shell-command = $HOMEBREW_PREFIX/bin/fishHot reload
Saving config.toml reapplies the changes immediately to every window. No restart, no signal.
See also
- Configuration Reference — every key.
- Theme Format — the
.tomlschema for theme files (this is real TOML).