Configuration
Configure ekphos settings and options
Configuration is stored at ~/.config/ekphos/config.toml. A default config is created on first run.
File Locations
Main Settings
# Directory where notes are stored
notes_dir = "~/Documents/ekphos"
# Show welcome dialog on startup
welcome_shown = true
# Theme name (without .toml extension)
theme = "ekphos-dawn"
# Show folders with no .md files
show_empty_dir = true
# Syntax highlighting theme for code blocks
syntax_theme = "base16-ocean.dark"
# Start with sidebar collapsed
sidebar_collapsed = false
# Start with outline collapsed
outline_collapsed = false
# Group folders at the top of sidebar (like Obsidian)
folders_first = true
# Hide frontmatter in content view (show only tag badges)
frontmatter_hidden = true
# Show tag badges when note has frontmatter tags
show_tags = trueOptions Reference
| Option | Type | Default | Description |
|---|---|---|---|
notes_dir | string | ~/Documents/ekphos | Notes storage directory |
welcome_shown | bool | true | Show welcome on startup |
theme | string | ekphos-dawn | Theme name |
show_empty_dir | bool | true | Show empty folders |
syntax_theme | string | base16-ocean.dark | Code highlighting theme |
sidebar_collapsed | bool | false | Start with sidebar collapsed |
outline_collapsed | bool | false | Start with outline collapsed |
folders_first | bool | true | Group folders at top of sidebar |
frontmatter_hidden | bool | true | Hide YAML frontmatter in content view |
show_tags | bool | true | Show tag badges from frontmatter |
Editor Settings
[editor]
# Enable soft line wrapping
line_wrap = true
# Tab width in spaces
tab_width = 4
# Left padding (columns)
left_padding = 0
# Right padding (columns)
right_padding = 1
# Line number display mode
line_numbers = "absolute"
# Minimum lines to keep above/below cursor
scrolloff = 8| Option | Type | Default | Description |
|---|---|---|---|
line_wrap | bool | true | Soft line wrapping |
tab_width | u16 | 4 | Tab display width |
left_padding | u16 | 0 | Left editor padding |
right_padding | u16 | 1 | Right editor padding |
line_numbers | string | "absolute" | Line number display mode |
scrolloff | u8 | 0 | Minimum lines above/below cursor |
Line Number Modes
| Mode | Description |
|---|---|
"none" | No line numbers |
"absolute" | Standard line numbers (1, 2, 3, ...) - default |
"relative" | Relative to cursor position (current line shows 0) |
"hybrid" | Current line shows absolute, others show relative |
Hybrid mode is useful for vim users who frequently use relative motions like 5j or 10k while still seeing the actual line number at the cursor.
Scrolloff
The scrolloff option (similar to Vim's set scrolloff) keeps a minimum number of lines visible above and below the cursor when scrolling. This provides context and prevents the cursor from sticking to the very edge of the editor.
[editor]
scrolloff = 8 # Always keep 8 lines of contextSetting scrolloff to a high value (like half your screen height) effectively keeps the cursor centered while scrolling.
Syntax Themes
Available themes for code block highlighting:
base16-ocean.dark(default)base16-ocean.lightbase16-eighties.darkbase16-mocha.darkInspiredGitHubSolarized (dark)Solarized (light)
syntax_theme = "base16-mocha.dark"CLI Arguments
# Open a specific folder or file
ekphos ~/notes
ekphos ~/notes/todo.md
# Reset configuration to defaults
ekphos --reset
# Clear search index cache
ekphos --clean-cache| Option | Description |
|---|---|
-h, --help | Print help information |
-v, --version | Print version information |
-c, --config | Print config file path |
-d, --dir | Print notes directory path |
--reset | Reset config and themes to defaults |
--clean-cache | Clear the search index cache |
Use ekphos --reset after major updates if you experience issues. This resets config and themes to defaults.
Example Configuration
notes_dir = "~/Documents/notes"
welcome_shown = false
theme = "ekphos-dawn"
show_empty_dir = false
syntax_theme = "base16-mocha.dark"
sidebar_collapsed = false
outline_collapsed = false
folders_first = true
frontmatter_hidden = true
show_tags = true
[editor]
line_wrap = true
tab_width = 2
left_padding = 1
right_padding = 1
line_numbers = "hybrid"
scrolloff = 8Reload Configuration
Press Ctrl+Shift+R to reload config and theme without restarting ekphos.