Skip to content
This page is for the development version of rmpc. Make sure your version matches the selected documentation.

Default theme

theme.ron
#![enable(implicit_some)]
#![enable(unwrap_newtypes)]
#![enable(unwrap_variant_newtypes)]
(
default_album_art_path: None,
format_tag_separator: " | ",
browser_column_widths: [20, 38, 42],
background_color: None,
text_color: None,
header_background_color: None,
modal_background_color: None,
modal_backdrop: false,
preview_label_style: (fg: "yellow"),
preview_metadata_group_style: (fg: "yellow", modifiers: "Bold"),
highlighted_item_style: (fg: "blue", modifiers: "Bold"),
current_item_style: (fg: "black", bg: "blue", modifiers: "Bold"),
borders_style: (fg: "blue"),
highlight_border_style: (fg: "blue"),
symbols: (
song: "S",
dir: "D",
playlist: "P",
marker: "M",
ellipsis: "...",
song_style: None,
dir_style: None,
playlist_style: None,
),
level_styles: (
info: (fg: "blue", bg: "black"),
warn: (fg: "yellow", bg: "black"),
error: (fg: "red", bg: "black"),
debug: (fg: "light_green", bg: "black"),
trace: (fg: "magenta", bg: "black"),
),
progress_bar: (
symbols: ["", "", "", " ", ""],
track_style: None,
elapsed_style: (fg: "blue"),
thumb_style: (fg: "blue"),
use_track_when_empty: true,
),
scrollbar: (
symbols: ["", "", "", ""],
track_style: (),
ends_style: (),
thumb_style: (fg: "blue"),
),
tab_bar: (
active_style: (fg: "black", bg: "blue", modifiers: "Bold"),
inactive_style: (),
),
lyrics: (
timestamp: false
),
browser_song_format: [
(
kind: Group([
(kind: Property(Track)),
(kind: Text(" ")),
])
),
(
kind: Group([
(kind: Property(Artist)),
(kind: Text(" - ")),
(kind: Property(Title)),
]),
default: (kind: Property(Filename))
),
],
song_table_format: [
(
prop: (kind: Property(Artist),
default: (kind: Text("Unknown"))
),
label_prop: (kind: Text("Artist")),
width: "20%",
),
(
prop: (kind: Property(Title),
default: (kind: Text("Unknown"))
),
label_prop: (kind: Text("Title")),
width: "35%",
),
(
prop: (kind: Property(Album), style: (fg: "white"),
default: (kind: Text("Unknown Album"), style: (fg: "white"))
),
label_prop: (kind: Text("Album")),
width: "30%",
),
(
prop: (kind: Property(Duration),
default: (kind: Text("-"))
),
label_prop: (kind: Text("Duration")),
width: "15%",
alignment: Right,
),
],
layout: Split(
direction: Vertical,
panes: [
(
size: "4",
pane: Split(
direction: Horizontal,
panes: [
(
size: "35",
borders: "LEFT | TOP | BOTTOM",
border_symbols: Inherited(parent: Rounded, bottom_left: ""),
pane: Component("header_left")
),
(
size: "100%",
borders: "ALL",
border_symbols: Inherited(parent: Rounded, top_left: "", top_right: "", bottom_left: "", bottom_right: ""),
pane: Component("header_center")
),
(
size: "35",
borders: "RIGHT | TOP | BOTTOM",
border_symbols: Inherited(parent: Rounded, bottom_right: ""),
pane: Component("header_right")
),
]
)
),
(
pane: Pane(Tabs),
borders: "RIGHT | LEFT | BOTTOM",
border_symbols: Rounded,
size: "2",
),
(
pane: Pane(TabContent),
size: "100%",
),
(
size: "3",
pane: Split(
direction: Horizontal,
panes: [
(
size: "12",
borders: "ALL",
border_symbols: Inherited(parent: Rounded, top_right: "", bottom_right: ""),
pane: Component("input_mode")
),
(
size: "100%",
borders: "TOP | BOTTOM | RIGHT",
border_symbols: Rounded,
border_title: [(kind: Text(" ")), (kind: Property(Status(QueueLength()))), (kind: Text(" songs / ")), (kind: Property(Status(QueueTimeTotal()))), (kind: Text(" total time "))],
border_title_alignment: Right,
pane: Component("progress_bar"),
),
]
),
),
],
),
components: {
"state": Pane(Property(
content: [
(kind: Text("["), style: (fg: "yellow", modifiers: "Bold")),
(kind: Property(Status(StateV2( ))), style: (fg: "yellow", modifiers: "Bold")),
(kind: Text("]"), style: (fg: "yellow", modifiers: "Bold")),
], align: Left,
)),
"title": Pane(Property(
content: [
(kind: Property(Song(Title)), style: (modifiers: "Bold"),
default: (kind: Text("No Song"), style: (modifiers: "Bold"))),
], align: Center, scroll_speed: 1
)),
"volume": Split(
direction: Horizontal,
panes: [
(size: "1", pane: Pane(Property(content: [(kind: Text(""))]))),
(size: "100%", pane: Pane(Volume(kind: Slider(symbols: (filled: "", thumb: "", track: ""))))),
(size: "3", pane: Pane(Property(content: [(kind: Property(Status(Volume)), style: (fg: "blue"))], align: Right))),
(size: "2", pane: Pane(Property(content: [(kind: Text("%"), style: (fg: "blue"))]))),
]
),
"elapsed_and_bitrate": Pane(Property(
content: [
(kind: Property(Status(Elapsed))),
(kind: Text(" / ")),
(kind: Property(Status(Duration))),
(kind: Group([
(kind: Text(" (")),
(kind: Property(Status(Bitrate))),
(kind: Text(" kbps)")),
])),
],
align: Left,
)),
"artist_and_album": Pane(Property(
content: [
(kind: Property(Song(Artist)), style: (fg: "yellow", modifiers: "Bold"),
default: (kind: Text("Unknown"), style: (fg: "yellow", modifiers: "Bold"))),
(kind: Text(" - ")),
(kind: Property(Song(Album)), default: (kind: Text("Unknown Album"))),
], align: Center, scroll_speed: 1
)),
"states": Split(
direction: Horizontal,
panes: [
(
size: "1",
pane: Pane(Empty())
),
(
size: "100%",
pane: Pane(Property(content: [(kind: Property(Status(InputBuffer())), style: (fg: "blue"), align: Left)]))
),
(
size: "6",
pane: Pane(Property(content: [
(kind: Text("["), style: (fg: "blue", modifiers: "Bold")),
(kind: Property(Status(RepeatV2(
on_label: "z",
off_label: "z",
on_style: (fg: "yellow", modifiers: "Bold"),
off_style: (fg: "blue", modifiers: "Dim"),
)))),
(kind: Property(Status(RandomV2(
on_label: "x",
off_label: "x",
on_style: (fg: "yellow", modifiers: "Bold"),
off_style: (fg: "blue", modifiers: "Dim"),
)))),
(kind: Property(Status(ConsumeV2(
on_label: "c",
off_label: "c",
oneshot_label: "c",
on_style: (fg: "yellow", modifiers: "Bold"),
off_style: (fg: "blue", modifiers: "Dim"),
oneshot_style: (fg: "red", modifiers: "Dim"),
)))),
(kind: Property(Status(SingleV2(
on_label: "v",
off_label: "v",
oneshot_label: "v",
on_style: (fg: "yellow", modifiers: "Bold"),
off_style: (fg: "blue", modifiers: "Dim"),
oneshot_style: (fg: "red", modifiers: "Bold"),
)))),
(kind: Text("]"), style: (fg: "blue", modifiers: "Bold")),
],
align: Right
))
),
]
),
"input_mode": Pane(Property(
content: [
(kind: Transform(Replace(content: (kind: Property(Status(InputMode()))), replacements: [
(match: "Normal", replace: (kind: Text(" NORMAL "), style: (fg: "black", bg: "blue"))),
(match: "Insert", replace: (kind: Text(" INSERT "), style: (fg: "black", bg: "green"))),
])))
], align: Center
)),
"header_left": Split(
direction: Vertical,
panes: [
(size: "1", pane: Component("state")),
(size: "1", pane: Component("elapsed_and_bitrate")),
]
),
"header_center": Split(
direction: Vertical,
panes: [
(size: "1", pane: Component("title")),
(size: "1", pane: Component("artist_and_album")),
]
),
"header_right": Split(
direction: Vertical,
panes: [
(size: "1", pane: Component("volume")),
(size: "1", pane: Component("states")),
]
),
"progress_bar": Split(
direction: Horizontal,
panes: [
(
size: "1",
pane: Pane(Empty())
),
(
size: "100%",
pane: Pane(ProgressBar)
),
(
size: "1",
pane: Pane(Empty())
),
]
)
},
)