[lint] Improve the code

This commit is contained in:
Anas Elgarhy 2023-04-22 09:02:14 +02:00
parent 10543a2cc1
commit 91878512ca
No known key found for this signature in database
GPG key ID: 0501802A1D496528
8 changed files with 23 additions and 24 deletions

View file

@ -1,8 +1,7 @@
use cmus_notify::{ use cmus_notify::{
cmus::{self, events::CmusEvent, query::CmusQueryResponse}, cmus::{self, query::CmusQueryResponse},
notification, settings, notification,
settings::Settings, settings::Settings,
track_cover, TrackCover,
}; };
#[cfg(feature = "debug")] #[cfg(feature = "debug")]

View file

@ -1,6 +1,6 @@
use crate::{process_template_placeholders, settings}; use crate::{process_template_placeholders};
use crate::cmus::{Track, TrackStatus}; use crate::cmus::{Track};
use crate::cmus::player_settings::{AAAMode, PlayerSettings, Shuffle}; use crate::cmus::player_settings::{PlayerSettings};
use crate::notification::Action; use crate::notification::Action;
use crate::settings::Settings; use crate::settings::Settings;

View file

@ -112,7 +112,7 @@ impl TemplateProcessor for Track {
if let Some(value) = match key.as_str() { if let Some(value) = match key.as_str() {
"status" => Some(status.as_str()), "status" => Some(status.as_str()),
"title" => Some(self.get_name()), "title" => Some(self.get_name()),
_ => self.metadata.get(&key), _ => self.metadata.get(key),
} { } {
processed = processed.replace(&format!("{{{key}}}"), value); processed = processed.replace(&format!("{{{key}}}"), value);
} }
@ -200,13 +200,13 @@ impl TrackMetadata {
/// This function will assume you processed the first 4 lines, and remove them from the iterator. /// This function will assume you processed the first 4 lines, and remove them from the iterator.
/// ///
/// and also assume the all tags is contained in the iterator. /// and also assume the all tags is contained in the iterator.
fn parse<'a>(mut lines: impl Iterator<Item = &'a str> + Debug) -> Self { fn parse<'a>(lines: impl Iterator<Item = &'a str> + Debug) -> Self {
#[cfg(feature = "debug")] #[cfg(feature = "debug")]
info!("Parsing track metadata from lines: {:?}", lines); info!("Parsing track metadata from lines: {:?}", lines);
let mut tags = HashMap::new(); let mut tags = HashMap::new();
while let Some(line) = lines.next() { for line in lines {
#[cfg(feature = "debug")] #[cfg(feature = "debug")]
debug!("Parsing line: {}", line); debug!("Parsing line: {}", line);
match line.trim().split_once(' ') { match line.trim().split_once(' ') {
@ -240,7 +240,7 @@ impl Track {
.split('/') .split('/')
.last() .last()
.unwrap_or("") .unwrap_or("")
.split_once(".") .split_once('.')
.unwrap_or(("", "")) .unwrap_or(("", ""))
.0 .0
}) })
@ -268,7 +268,7 @@ pub fn ping_cmus(
let output = let output =
String::from_utf8(output.stdout).map_err(|e| CmusError::UnknownError(e.to_string()))?; String::from_utf8(output.stdout).map_err(|e| CmusError::UnknownError(e.to_string()))?;
CmusQueryResponse::from_str(&output).map_err(|e| CmusError::UnknownError(e.to_string())) CmusQueryResponse::from_str(&output).map_err(CmusError::UnknownError)
} }
/// Build the query command. /// Build the query command.

View file

@ -123,7 +123,7 @@ impl FromStr for PlayerSettings {
debug!("Parsing line: {}", line); debug!("Parsing line: {}", line);
if line.starts_with("set ") { if line.starts_with("set ") {
let line = &line[4..]; let line = &line[4..];
let (key, value) = line.split_once(" ").ok_or(CmusError::UnknownError( let (key, value) = line.split_once(' ').ok_or(CmusError::UnknownError(
"Corrupted cmus response".to_string(), "Corrupted cmus response".to_string(),
))?; ))?;

View file

@ -71,8 +71,8 @@ impl CmusQueryResponse {
#[cfg(feature = "debug")] #[cfg(feature = "debug")]
debug!("Track changed: {:?} -> {:?}", other_track, track); debug!("Track changed: {:?} -> {:?}", other_track, track);
events.push(CmusEvent::TrackChanged( events.push(CmusEvent::TrackChanged(
other_track.clone(), other_track,
other_player_settings.clone(), other_player_settings,
)); ));
// We don't need to check for other changes, since the track changed. // We don't need to check for other changes, since the track changed.
return Ok(events); return Ok(events);
@ -93,7 +93,7 @@ impl CmusQueryResponse {
other_track.position, track.position other_track.position, track.position
); );
events.push(CmusEvent::PositionChanged( events.push(CmusEvent::PositionChanged(
track.clone(), track,
other_player_settings.clone(), other_player_settings.clone(),
)); ));
} }
@ -244,8 +244,8 @@ mod tests {
let player_settings = player_settings.unwrap(); let player_settings = player_settings.unwrap();
assert_eq!(player_settings.aaa_mode, AAAMode::All); assert_eq!(player_settings.aaa_mode, AAAMode::All);
assert_eq!(player_settings.repeat, true); assert!(player_settings.repeat);
assert_eq!(player_settings.repeat_current, false); assert!(!player_settings.repeat_current);
assert_eq!(player_settings.shuffle, Shuffle::Off); assert_eq!(player_settings.shuffle, Shuffle::Off);
assert_eq!(player_settings.volume.left, 17); assert_eq!(player_settings.volume.left, 17);
assert_eq!(player_settings.volume.right, 17); assert_eq!(player_settings.volume.right, 17);

View file

@ -170,9 +170,9 @@ pub fn track_cover(
} }
if !no_use_external_cover { if !no_use_external_cover {
let (Ok(regx), path) = (match path.split("/").last() { let (Ok(regx), path) = (match path.split('/').last() {
Some(last_pat) if last_pat.contains("r#") => { Some(last_pat) if last_pat.contains("r#") => {
(regex::Regex::new(&*last_pat.replace("r#", "")), (regex::Regex::new(&last_pat.replace("r#", "")),
// Remove the last part of the path // Remove the last part of the path
path.remove(path.len() - last_pat.len() - 1).to_string()) path.remove(path.len() - last_pat.len() - 1).to_string())
} }

View file

@ -1,11 +1,11 @@
#[cfg(feature = "debug")] #[cfg(feature = "debug")]
use log::{debug, info}; use log::{info};
use notify_rust::Notification; use notify_rust::Notification;
use crate::{process_template_placeholders, settings, track_cover, TrackCover}; use crate::{track_cover, TrackCover};
use crate::cmus::{TemplateProcessor, Track, TrackStatus}; use crate::cmus::{TemplateProcessor, Track};
use crate::cmus::events::CmusEvent; use crate::cmus::events::CmusEvent;
use crate::cmus::player_settings::PlayerSettings;
use crate::cmus::query::CmusQueryResponse; use crate::cmus::query::CmusQueryResponse;
use crate::settings::Settings; use crate::settings::Settings;

View file

@ -373,7 +373,7 @@ impl Settings {
.or(cfg.notification_static_cover); .or(cfg.notification_static_cover);
cfg.cover_path_template = args.cover_path_template.or(cfg.cover_path_template); cfg.cover_path_template = args.cover_path_template.or(cfg.cover_path_template);
#[cfg(feature = "lyrics")] #[cfg(feature = "lyrics")]
if args.lyrics_path != None { if args.lyrics_path.is_some() {
#[cfg(feature = "debug")] #[cfg(feature = "debug")]
debug!("The user not override the lyrics_path, using the config's lyrics_path. lyrics_path: {:?}", cfg.lyrics_path); debug!("The user not override the lyrics_path, using the config's lyrics_path. lyrics_path: {:?}", cfg.lyrics_path);
cfg.lyrics_path = args.lyrics_path; cfg.lyrics_path = args.lyrics_path;