ekphosv0.20.0

Themes

Customize ekphos appearance with themes

Themes are TOML files stored in ~/.config/ekphos/themes/. The default theme is ekphos-dawn.

Using a Theme

Set the theme in your config:

config.toml
theme = "ekphos-dawn"

Reload with Ctrl+Shift+R or restart ekphos.

Creating a Theme

Create a new .toml file in ~/.config/ekphos/themes/:

~/.config/ekphos/themes/my-theme.toml
[base]
background = "#1a1a24"
background_secondary = "#24243a"
foreground = "#c0caf5"
muted = "#565f89"

[accent]
primary = "#7aa2f7"
secondary = "#bb9af7"

[semantic]
error = "#f7768e"
warning = "#e0af68"
success = "#9ece6a"
info = "#7dcfff"

[ui]
border = "#3b4261"
border_focused = "#7aa2f7"
selection = "#283457"
cursor = "#c0caf5"

Then set theme = "my-theme" in your config.

Color Sections

Base Colors

ColorUsage
backgroundMain background
background_secondaryPopups, code blocks
foregroundPrimary text
mutedSecondary text, hints

Accent Colors

ColorUsage
primaryFocused borders, headings
secondaryVisual mode, secondary accent

Semantic Colors

ColorUsage
errorErrors, invalid links
warningWarnings, selected items
successSuccess states, checkmarks
infoInfo messages, links

UI Colors

ColorUsage
borderUnfocused borders
border_focusedFocused borders
selectionText selection
cursorCursor color

Component Overrides

Override specific UI components for fine-grained control:

Status Bar

[ui.statusbar]
background = "#1a1a24"
foreground = "#c0caf5"
brand = "#7aa2f7"
mode = "#565f89"
separator = "#3b4261"

Dialog

[ui.dialog]
background = "#1a1a24"
border = "#7aa2f7"
title = "#7aa2f7"
text = "#c0caf5"
[ui.sidebar]
background = "#1a1a24"
item = "#c0caf5"
item_selected = "#e0af68"
folder = "#7dcfff"
folder_expanded = "#7dcfff"

Content

[ui.content]
background = "#1a1a24"
text = "#c0caf5"
heading1 = "#7aa2f7"
heading2 = "#9ece6a"
heading3 = "#e0af68"
heading4 = "#bb9af7"
link = "#7dcfff"
link_invalid = "#f7768e"
code = "#9ece6a"
code_background = "#24243a"
blockquote = "#565f89"
list_marker = "#bb9af7"
tag = "#bb9af7"
tag_background = "#24243a"
frontmatter = "#565f89"
ColorUsage
tagTag badge text color
tag_backgroundTag badge background
frontmatterFrontmatter text (delimiters, keys, values)

Outline

[ui.outline]
background = "#1a1a24"
heading1 = "#7aa2f7"
heading2 = "#9ece6a"
heading3 = "#e0af68"
heading4 = "#bb9af7"
[ui.search]
background = "#24243a"
border = "#7aa2f7"
input = "#c0caf5"
match_highlight = "#e0af68"
match_current = "#ff9e64"
match_count = "#565f89"
ColorUsage
backgroundSearch dialog background
borderDialog border
inputSearch input text
match_highlightBackground for all matches
match_currentBackground for current match
match_countMatch counter text (e.g., "3/15")

Editor

Customize markdown syntax highlighting in the editor:

[ui.editor]
heading1 = "#7aa2f7"
heading2 = "#9ece6a"
heading3 = "#e0af68"
heading4 = "#bb9af7"
heading5 = "#7dcfff"
heading6 = "#565f89"
code = "#9ece6a"
link = "#7dcfff"
blockquote = "#565f89"
list_marker = "#bb9af7"
bold = "#e0af68"
italic = "#7dcfff"
ColorUsage
heading1 - heading6Heading colors by level (# to ######)
codeInline code and code blocks
linkMarkdown links [text](url)
blockquoteBlockquote markers (>)
list_markerList bullets and numbers
boldBold text (text)
italicItalic text (text)

Component sections are optional. Missing values fall back to base colors, then to ekphos-dawn defaults.

Full Theme Example

~/.config/ekphos/themes/tokyo-night.toml
[base]
background = "#1a1b26"
background_secondary = "#24283b"
foreground = "#c0caf5"
muted = "#565f89"

[accent]
primary = "#7aa2f7"
secondary = "#bb9af7"

[semantic]
error = "#f7768e"
warning = "#e0af68"
success = "#9ece6a"
info = "#7dcfff"

[ui]
border = "#3b4261"
border_focused = "#7aa2f7"
selection = "#283457"
cursor = "#c0caf5"

[ui.content]
heading1 = "#7aa2f7"
heading2 = "#9ece6a"
heading3 = "#e0af68"
heading4 = "#bb9af7"
link = "#7dcfff"
code = "#9ece6a"
tag = "#bb9af7"
tag_background = "#283457"
frontmatter = "#565f89"

[ui.editor]
heading1 = "#7aa2f7"
heading2 = "#9ece6a"
heading3 = "#e0af68"
heading4 = "#bb9af7"
heading5 = "#7dcfff"
heading6 = "#565f89"
code = "#9ece6a"
link = "#7dcfff"
bold = "#e0af68"
italic = "#7dcfff"

Reset Themes

To restore default themes:

ekphos --reset

This resets both configuration and themes to defaults.

On this page