Add track_format config option (#800)
* Added track_name_first config option to allow choosing if artists' names should be shown before or after the track name.
* Added active_fields config option, which allows configuration of which columns are visible in Queue/Library view.
This also removes the need for a separate track_name_first and album_column option.
* Fixed README
* Made custom tracklist formatting more flexible.
Updated readme with new instructions.
Reformatted impl member order to match the definitions in traits.rs.
* Added track_name_first config option to allow choosing if artists' names should be shown before or after the track name.
* Added active_fields config option, which allows configuration of which columns are visible in Queue/Library view.
This also removes the need for a separate track_name_first and album_column option.
* Fixed README
* Made custom tracklist formatting more flexible.
Updated readme with new instructions.
Reformatted impl member order to match the definitions in traits.rs.
* Fetch formatting config from library config
Instead of the lazy static mutex
* Moved custom format function to Playable impl as it's a better location to handle both Tracks and Episodes
* Rename from `tracklist_formatting` to `track_format`
Also shorten `format_{left|center|right}` to `{left|center|right}`
Co-authored-by: Henrik Friedrichsen <henrik@affekt.org>
This commit is contained in:
committed by
Henrik Friedrichsen
parent
0e50466a5e
commit
f7450321da
@@ -33,6 +33,23 @@ pub enum LibraryTab {
|
||||
Podcasts,
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug, Default, Clone)]
|
||||
pub struct TrackFormat {
|
||||
pub left: Option<String>,
|
||||
pub center: Option<String>,
|
||||
pub right: Option<String>,
|
||||
}
|
||||
|
||||
impl TrackFormat {
|
||||
pub fn default() -> Self {
|
||||
TrackFormat {
|
||||
left: Some(String::from("%artists - %title")),
|
||||
center: Some(String::from("%album")),
|
||||
right: Some(String::from("%saved %duration")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone, Serialize, Deserialize, Debug, Default)]
|
||||
pub struct ConfigValues {
|
||||
pub command_key: Option<char>,
|
||||
@@ -50,12 +67,12 @@ pub struct ConfigValues {
|
||||
pub volnorm_pregain: Option<f64>,
|
||||
pub notify: Option<bool>,
|
||||
pub bitrate: Option<u32>,
|
||||
pub album_column: Option<bool>,
|
||||
pub gapless: Option<bool>,
|
||||
pub shuffle: Option<bool>,
|
||||
pub repeat: Option<queue::RepeatSetting>,
|
||||
pub cover_max_scale: Option<f32>,
|
||||
pub playback_state: Option<PlaybackState>,
|
||||
pub track_format: Option<TrackFormat>,
|
||||
pub library_tabs: Option<Vec<LibraryTab>>,
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user