dotfiles/modules/home/cli/fun/rmpc/config/config.ron

166 lines
5.5 KiB
Text
Executable file

#![enable(implicit_some)]
#![enable(unwrap_newtypes)]
#![enable(unwrap_variant_newtypes)]
(
address: "127.0.0.1:6600",
password: None,
theme: Some("catppuccin-macchiato"),
cache_dir: None,
on_song_change: None,
volume_step: 5,
max_fps: 30,
scrolloff: 0,
wrap_navigation: false,
enable_mouse: true,
enable_config_hot_reload: true,
status_update_interval_ms: 1000,
rewind_to_start_sec: None,
reflect_changes_to_playlist: false,
select_current_song_on_change: false,
browser_song_sort: [Disc, Track, Artist, Title],
directories_sort: SortFormat(group_by_type: true, reverse: false),
album_art: (
method: Auto,
max_size_px: (width: 1200, height: 1200),
disabled_protocols: ["http://", "https://"],
vertical_align: Center,
horizontal_align: Center,
),
keybinds: (
global: {
":": CommandMode,
",": VolumeDown,
"s": Stop,
".": VolumeUp,
"<Tab>": NextTab,
"<S-Tab>": PreviousTab,
"1": SwitchToTab("Queue"),
"2": SwitchToTab("Directories"),
"3": SwitchToTab("Artists"),
"4": SwitchToTab("Album Artists"),
"5": SwitchToTab("Albums"),
"6": SwitchToTab("Playlists"),
"7": SwitchToTab("Search"),
"q": Quit,
">": NextTrack,
"p": TogglePause,
"<": PreviousTrack,
"f": SeekForward,
"z": ToggleRepeat,
"x": ToggleRandom,
"c": ToggleConsume,
"v": ToggleSingle,
"b": SeekBack,
"~": ShowHelp,
"u": Update,
"U": Rescan,
"I": ShowCurrentSongInfo,
"O": ShowOutputs,
"P": ShowDecoders,
"R": AddRandom,
},
navigation: {
"k": Up,
"j": Down,
"h": Left,
"l": Right,
"<Up>": Up,
"<Down>": Down,
"<Left>": Left,
"<Right>": Right,
"<C-k>": PaneUp,
"<C-j>": PaneDown,
"<C-h>": PaneLeft,
"<C-l>": PaneRight,
"<C-u>": UpHalf,
"N": PreviousResult,
"a": Add,
"A": AddAll,
"r": Rename,
"n": NextResult,
"g": Top,
"<Space>": Select,
"<C-Space>": InvertSelection,
"G": Bottom,
"<CR>": Confirm,
"i": FocusInput,
"J": MoveDown,
"<C-d>": DownHalf,
"/": EnterSearch,
"<C-c>": Close,
"<Esc>": Close,
"K": MoveUp,
"D": Delete,
"B": ShowInfo,
},
queue: {
"D": DeleteAll,
"<CR>": Play,
"<C-s>": Save,
"a": AddToPlaylist,
"d": Delete,
"C": JumpToCurrent,
"X": Shuffle,
},
),
search: (
case_sensitive: 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,
),
tabs: [
(name: "Home", pane: Split(direction: Horizontal, panes: [
(size: "70%", borders: "NONE", pane: Split(direction: Vertical,panes: [
(size: "3", borders: "ALL", pane: Component("custom_song_table_header")),
(size: "100%", borders: "ALL", pane: Pane(Queue)),
])
),
(size: "30%", borders: "NONE", pane: Split(direction: Vertical, panes: [
(size: "0.45r", borders: "ALL", pane: Pane(AlbumArt)),
(size: "100%", borders: "ALL", pane: Pane(Cava)),
])
),
])
),
(name: "Collection", pane: Split(direction: Horizontal,panes: [
(size: "100%", borders: "ALL", pane: Pane(Directories)),
])
),
(name: "Playlists", pane: Split(direction: Horizontal, panes: [
(size: "100%", borders: "ALL", pane: Pane(Playlists)),
])
),
(name: "Search", pane: Split(direction: Horizontal, panes: [
(size: "100%", borders: "ALL", pane: Pane(Search)),
])
),
],
cava: (
framerate: 200, autosens: true, sensitivity: 100,
lower_cutoff_freq: 50, higher_cutoff_freq: 15000,
input: (
method: Fifo,
source: "/tmp/mpd.fifo",
sample_rate: 44100,
channels: 2,
samble_bits: 16,
),
smoothing: (
noise_reduction: 35,
),
eq: []
),
)