#![enable(implicit_some)] #![enable(unwrap_newtypes)] #![enable(unwrap_variant_newtypes)] ( address: "/tmp/mpd_socket", password: None, theme: "~/.config/rmpc/themes/catppuccin-mocha.ron", cache_dir: "~/.cache/rmpc", lyrics_dir: "~/.local/share/lyrics", on_song_change: ["~/.config/rmpc/scripts/on_song_change"], on_resize: ["~/.config/rmpc/scripts/onresize"], extra_yt_dlp_args: ["--audio-quality", "0"], volume_step: 5, max_fps: 30, scrolloff: 9, wrap_navigation: false, enable_mouse: true, scroll_amount: 1, enable_config_hot_reload: true, enable_lyrics_hot_reload: true, status_update_interval_ms: 1000, rewind_to_start_sec: None, keep_state_on_song_change: true, reflect_changes_to_playlist: false, select_current_song_on_change: false, ignore_leading_the: false, browser_song_sort: [Disc, Track, Artist, Title], directories_sort: SortFormat(group_by_type: true, reverse: false), auto_open_downloads: true, album_art: ( method: Auto, max_size_px: (width: 1200, height: 1200), disabled_protocols: ["http://", "https://"], vertical_align: Center, horizontal_align: Center, ), keybinds: ( global: { "q": Quit, "?": ShowHelp, ":": CommandMode, "oI": ShowCurrentSongInfo, "oo": ShowOutputs, "op": ShowDecoders, "od": ShowDownloads, "oP": Partition(), "z": ToggleRepeat, "x": ToggleRandom, "c": ToggleConsume, "v": ToggleSingle, "p": TogglePause, "s": Stop, ">": NextTrack, "<": PreviousTrack, "f": SeekForward, "b": SeekBack, ".": VolumeUp, ",": VolumeDown, "": NextTab, "gt": NextTab, "": PreviousTab, "gT": PreviousTab, "1": SwitchToTab("Queue"), "2": SwitchToTab("Directories"), "3": SwitchToTab("Artists"), "4": SwitchToTab("Album Artists"), "5": SwitchToTab("Albums"), "6": SwitchToTab("Playlists"), "7": SwitchToTab("Search"), "": Update, "": Rescan, "R": AddRandom, }, navigation: { "": Close, "": Close, "": Confirm, "k": Up, "": Up, "j": Down, "": Down, "h": Left, "": Left, "l": Right, "": Right, "k": PaneUp, "": PaneUp, "j": PaneDown, "": PaneDown, "h": PaneLeft, "": PaneLeft, "l": PaneRight, "": PaneRight, "K": MoveUp, "J": MoveDown, "": UpHalf, "": DownHalf, "": PageUp, "": PageUp, "": PageDown, "": PageDown, "gg": Top, "G": Bottom, "": Select, "": InvertSelection, "/": EnterSearch, "n": NextResult, "N": PreviousResult, "a": Add, "A": AddAll, "D": Delete, "": Rename, "i": FocusInput, "oi": ShowInfo, "": ContextMenu(), "s": Save(kind: Modal(all: false, duplicates_strategy: Ask)), "a": Save(kind: Modal(all: true, duplicates_strategy: Ask)), "r": Rate(), }, queue: { "d": Delete, "D": DeleteAll, "": Play, "C": JumpToCurrent, "X": Shuffle, }, ), search: ( case_sensitive: false, ignore_diacritics: false, search_button: false, mode: Contains, tags: [ (value: "any", label: "Any Tag"), (value: "artist", label: "Artist"), (value: "album", label: "Album"), (value: "albumartist", label: "Album Artist"), (value: "title", label: "Title"), (value: "filename", label: "Filename"), (value: "genre", label: "Genre"), ], ), artists: ( album_display_mode: SplitByDate, album_sort_by: Date, album_date_tags: [Date], ), tabs: [ ( name: "Queue", pane: Split( direction: Horizontal, panes: [ ( size: "65%", pane: Split( direction: Vertical, panes: [ ( size: "3", borders: "ALL", border_symbols: Inherited(parent: Rounded, bottom_left: "├", bottom_right: "┤",), pane: Split( direction: Horizontal, panes: [ ( size: "1", pane: Pane(Empty()) ), ( size: "100%", pane: Pane(QueueHeader()) ), ] ) ), ( size: "100%", borders: "LEFT | RIGHT | BOTTOM", border_symbols: Rounded, pane: Split( direction: Horizontal, panes: [ ( size: "1", pane: Pane(Empty()) ), ( size: "100%", pane: Pane(Queue) ), ] ) ), ], ) ), ( size: "35%", pane: Split( direction: Vertical, panes: [ ( size: "100%", borders: "LEFT | RIGHT | TOP", border_symbols: Rounded, pane: Pane(AlbumArt) ), ( size: "7", borders: "ALL", border_symbols: Inherited(parent: Rounded, top_left: "├", top_right: "┤",), border_title: [(kind: Text(" Lyrics "))], border_title_alignment: Right, pane: Pane(Lyrics) ), ], ), ), ], ), ), ( name: "Directories", borders: "ALL", border_symbols: Rounded, pane: Split( size: "100%", direction: Vertical, panes: [(pane: Pane(Directories), size: "100%", borders: "ALL", border_symbols: Rounded)], ) ), ( name: "Artists", borders: "ALL", border_symbols: Rounded, pane: Split( size: "100%", direction: Vertical, panes: [(pane: Pane(Artists), size: "100%", borders: "ALL", border_symbols: Rounded)], ) ), ( name: "Album Artists", borders: "ALL", border_symbols: Rounded, pane: Split( size: "100%", direction: Vertical, panes: [(pane: Pane(AlbumArtists), size: "100%", borders: "ALL", border_symbols: Rounded)], ) ), ( name: "Albums", borders: "ALL", border_symbols: Rounded, pane: Split( size: "100%", direction: Vertical, panes: [(pane: Pane(Albums), size: "100%", borders: "ALL", border_symbols: Rounded)], ) ), ( name: "Playlists", borders: "ALL", border_symbols: Rounded, pane: Split( size: "100%", direction: Vertical, panes: [(pane: Pane(Playlists), size: "100%", borders: "ALL", border_symbols: Rounded)], ) ), ( name: "Search", borders: "ALL", border_symbols: Rounded, pane: Split( size: "100%", direction: Vertical, panes: [(pane: Pane(Search), size: "100%", borders: "ALL", border_symbols: Rounded)], ) ), ], )