Skip to content

Theme

A theme determines the look of rmpc. You can customize it by creating a custom theme file placed in the themes directory and then configuring the theme property in the config file filename of the theme.

Bootstrapping a theme file

  1. Config file can be bootstrapped by running the following command:
    rmpc theme > ~/.config/rmpc/themes/<theme_name>.ron
  2. Use the theme in your config by editing the theme property ~/.config/rmpc/config.ron file like so:
    theme: Some("<theme_name>")
  3. Restart rmpc

Theme file structure

Below is a list of properties that can be changed.

album_art_position

album_art_position: Left | Right

Determines which side of the queue tab to display the album art on. Default is Left.

album_art_width_percent

album_art_width_percent: <number>

Percentage of the queue tab width to use for the album art. Default is 40.

default_album_art_path

default_album_art_path: None | Some("<string>")

A default image is displayed if a song does not have an album art. This property can override that default image.

show_song_table_header

show_song_table_header: true | false

If set to false, the header of the song table is not displayed. Default is true.

draw_borders

draw_borders: true | false

Whether to draw borders in the UI.

symbols

Symbols to use in the various browser panes (artist, search, …)

symbols: <Symbols>

symbols.song

song: S

symbols.dir

dir: D

symbols.marker

marker: M

This symbol is used for selected items in the browser panes.

symbols.ellipsis

ellipsis: ...

Symbol used to indicate text truncation when content exceeds the available display space.

progress_bar

Progress bar at the bottom of the window.

progress_bar: ProgressBar

progress_bar.symbols

track_style: [elapsed, thumb, track]

Array of three single character strings that determine the look of the progress bar. First value is the elapsed part of the progress bar, second is the thumb and the third is the empty track. Default is `[”-”, ”>”, ” “]

progress_bar.track_style

track_style: <style>

Style of the empty track part of the progress bar.

progress_bar.elapsed_style

elapsed_style: <style>

Style of the elapsed part of the progress bar.

progress_bar.thumb_style

thumb_style: <style>

Style of the progress bar thumb.

scrollbar

scrollbar: Scrollbar

scrollbar.symbols

track_style: [track, thumb, end_top, end_bot]

Array of four single character strings that determine the look of the scrollbars. First value is the track, second is the thumb, third is the top end and the fourth is the bottom end. Default is ["│", "█", "▲", "▼"]

scrollbar.track_style

track_style: <style>

scrollbar.ends_style

ends_style: <style>

scrollbar.thumb_style

thumb_style: <style>

browser_column_widths

browser_column_widths: [number, number, number]

Three numerical values that determine the percent width of the columns in the browser tab. Default is [20, 38, 42]. Meaning the first column takes 20% of the width, the second 38% and the third 42%.

background_color

background_color: color

Background color of the main window.

header_background_color

background_color: color

Background color of the window header. The header is at the top of the window and contains tab bar and user configurable data.

background_color: color

Background color of modal dialogs.

text_color

text_color: color

Foreground color of basic text. Defaults to your terminal’s foreground color.

tab_bar

Tab bar at the top of the windo below header. Shows what tab is currently active.

tab_bar.enabled

enabled: true | false

Whether to show tab bar at the top of the window. Default to true.

tab_bar.active_style

active_style: <style>

Style for the active tab.

tab_bar.inactive_style

inactive_style: <style>

Style for all tabs except the active one.

highlighted_item_style

highlighted_item_style: <style>

current_item_style

current_item_style: <style>

borders_style

borders_style: <style>

highlight_border_style

highlight_border_style: <style>

song_table_format

song_table_format: <song_table_format>

Configures the columns of the song table. This property is described in its own page:

browser_song_format

browser_song_format: <song_table_format>

Format used to display song in the various browser panes (albums, artists, …). Is the same format as song_table_format except the styles are ignored.

Defaults to Track Artist - Title

header: <header[]>

Configuration of the header. Header is displayed at the top of te window. It can display info about current song, the player state and custom widgets. This property is described in its own page: