From 456d423f4702be4f7086f50ccf4714c4ed858ce7 Mon Sep 17 00:00:00 2001 From: AB Date: Thu, 19 Dec 2019 01:36:57 +0300 Subject: [PATCH] Improve player metadata displaying. --- src/main.rs | 39 +++++++++++++++++++++------------------ 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/src/main.rs b/src/main.rs index 3ad670d..f997857 100644 --- a/src/main.rs +++ b/src/main.rs @@ -169,6 +169,26 @@ fn main() { let mut artist_len = 30; let mut separator: String = " - ".to_string(); let max_shift = 6; + if track_info.artist.chars().count() == 0 { + separator = "".to_string(); + title_len += artist_len; + } + if artist_len + max_shift >= track_info.artist.chars().count() { + artist_len = track_info.artist.chars().count() + } + if track_info.artist.len() > artist_len { + let mut artist: String = String::new(); + let mut counter = 0; + for ch in track_info.artist.chars() { + if counter == artist_len { + artist.push_str(".."); + break; + } + artist.push(ch); + counter += 1; + } + track_info.artist = artist; + } if title_len + max_shift >= track_info.title.chars().count() { title_len = track_info.title.chars().count() } @@ -177,31 +197,14 @@ fn main() { let mut counter = 0; for ch in track_info.title.chars() { if counter == title_len { + title.push_str(".."); break; } title.push(ch); counter += 1; } - title.push_str(".."); track_info.title = title; } - if artist_len + max_shift >= track_info.artist.chars().count() { - artist_len = track_info.artist.chars().count() - } - if track_info.artist.chars().count() == 0 {separator = "".to_string()} - if track_info.artist.len() > artist_len { - let mut artist: String = String::new(); - let mut counter = 0; - for ch in track_info.artist.chars() { - if counter == artist_len { - break; - } - artist.push(ch); - counter += 1; - } - artist.push_str(".."); - track_info.artist = artist; - } println!( "#[none]#[bold]{}{}{}#[none]{}{}{}{} {}[{}/{}] {} {}", TRACK_NAME,