config.toml)Presto supports an optional config.toml file for user-tunable settings.
By default on Linux (XDG), Presto looks here:
$XDG_CONFIG_HOME/presto/config.toml~/.config/presto/config.tomlYou can also override the path entirely with:
PRESTO_CONFIG_PATH=/some/path/config.tomlHighest wins:
PRESTO__, __ separates nested fields)config.tomlExample environment override:
PRESTO__AUDIO__CROSSFADE_MS=0 presto
[playback]shuffle (bool): start with shuffle enabledloop_mode (string): one of no-loop, loop-all/loop-around, loop-one/repeat-oneDefaults:
shuffle = falseloop_mode = "loop-all" (loop-around)[audio]crossfade_ms (u64, milliseconds): crossfade when switching tracks (0 disables)crossfade_steps (u64): number of fade steps (must be >= 1)quit_fade_out_ms (u64, milliseconds): fade out on quit (0 disables)[controls]scrub_seconds (u64): seconds to seek when pressing H / L[ui]follow_playback (bool): start in follow-playback modeheader_text (string): the text rendered in the top “presto” boxnow_playing_track_fields (array of strings): which fields to show for the status “Song:” label
display, title, artist, album, filename, pathnow_playing_track_separator (string): how to join those fieldsnow_playing_time_fields (array of strings): which time fields to show (and order)
elapsed, total, remainingnow_playing_time_separator (string): how to join those time fields[library]extensions (array of strings): audio extensions (without dot)follow_links (bool): follow symlinks while scanninginclude_hidden (bool): scan dotfiles/directoriesrecursive (bool): recurse into subdirectoriesmax_depth (int or omitted): max directory depthdisplay_fields (array of strings): how to build the track list label (Track.display)
artist, title, album, filename, path (and display acts like artist+title)display_separator (string): joiner used for display_fieldsSee docs/config.example.toml for a full example.