Configuration
Full reference for every setting in blade.toml.
[window]
Window appearance and layout settings.
| Key | Type | Default | Description |
|---|---|---|---|
title | string | "Blade" | Window title bar text |
columns | integer | 120 | Initial width in columns |
rows | integer | 36 | Initial height in rows |
opacity | float | 1.0 | Window opacity (0.0 - 1.0) |
padding | integer | 8 | Padding in pixels around the terminal |
fullscreen | boolean | false | Start in fullscreen mode |
[font]
Font rendering and text shaping settings.
| Key | Type | Default | Description |
|---|---|---|---|
family | string | "MiSans" | Primary font family name |
size | float | 14.0 | Font size in points |
line_height | float | 1.2 | Line height multiplier |
ligatures | boolean | true | Enable programming ligatures |
fallback | string[] | ["Consolas", "Noto Sans Mono", "DejaVu Sans Mono"] | Fallback font chain |
[colors]
Color scheme settings. Set theme to use a built-in theme, mode to switch between dark and light, and font_color to override the text color.
| Key | Type | Default | Description |
|---|---|---|---|
theme | string | null | Built-in theme name (overrides individual colors) |
mode | string | "dark" | Color mode: "dark", "light", or "system" (auto-detect OS preference) |
font_color | string | null | Override text color: "white", "black", "red", or any "#RRGGBB" hex |
foreground | hex | "#d4d4d4" | Default text color |
background | hex | "#1e1e2e" | Background color |
cursor | hex | "#f5e0dc" | Cursor color |
selection | hex | "#45475a" | Selection highlight color |
When mode = "light", Blade auto-switches to a light theme variant (e.g., catppuccin-mocha becomes catppuccin-latte). When mode = "system", Blade reads your OS appearance preference. The font_color override is applied on top of any theme.
See Themes for available theme names, light/dark mode details, and custom theme creation.
[scrolling]
Scrollback buffer and scroll speed settings.
| Key | Type | Default | Description |
|---|---|---|---|
history | integer | 10000 | Maximum scrollback lines |
multiplier | integer | 3 | Scroll speed multiplier |
[cursor]
Cursor appearance and behavior.
| Key | Type | Default | Description |
|---|---|---|---|
style | string | "block" | Cursor style: block, beam, or underline |
blink | boolean | true | Enable cursor blinking |
blink_interval | integer | 600 | Blink interval in milliseconds |
[keybindings]
Keyboard shortcut configuration. Load a preset or define custom bindings.
| Key | Type | Default | Description |
|---|---|---|---|
preset | string | null | Preset name: "default", "vim", or "emacs" |
custom | array | [] | Custom keybinding entries (see below) |
Custom keybinding format
Each entry in [[keybindings.custom]] has:
keys— Key combination string (e.g.,"ctrl+shift+t")action— Action name (e.g.,"new_tab")bytes— Optional byte array for"send_bytes"action
See Keybindings for the full list of actions and presets.