reformat + remove redundant closure

This commit is contained in:
Henrik Friedrichsen
2020-04-02 21:21:51 +02:00
parent 07be9dc48d
commit 705a54c08c
3 changed files with 75 additions and 32 deletions

View File

@@ -137,14 +137,15 @@ impl fmt::Display for Command {
Command::Back => "back".to_string(),
Command::Open(mode) => format!("open {}", mode),
Command::Goto(mode) => format!("goto {}", mode),
Command::Move(mode, MoveAmount::Extreme) => {
format!("move {}", match mode {
Command::Move(mode, MoveAmount::Extreme) => format!(
"move {}",
match mode {
MoveMode::Up => "top",
MoveMode::Down => "bottom",
MoveMode::Left => "leftmost",
MoveMode::Right => "rightmost",
})
},
}
),
Command::Move(mode, MoveAmount::Integer(amount)) => format!("move {} {}", mode, amount),
Command::Shift(mode, amount) => format!("shift {} {}", mode, amount.unwrap_or(1)),
Command::Search(term) => format!("search {}", term),
@@ -229,20 +230,20 @@ pub fn parse(input: &str) -> Option<Command> {
}
"move" => {
let cmd: Option<Command> = {
args.get(0)
.and_then(|extreme| match *extreme {
"top" => Some(Command::Move(MoveMode::Up, MoveAmount::Extreme)),
"bottom" => Some(Command::Move(MoveMode::Down, MoveAmount::Extreme)),
"leftmost" => Some(Command::Move(MoveMode::Left, MoveAmount::Extreme)),
"rightmost" => Some(Command::Move(MoveMode::Right, MoveAmount::Extreme)),
_ => None
})
args.get(0).and_then(|extreme| match *extreme {
"top" => Some(Command::Move(MoveMode::Up, MoveAmount::Extreme)),
"bottom" => Some(Command::Move(MoveMode::Down, MoveAmount::Extreme)),
"leftmost" => Some(Command::Move(MoveMode::Left, MoveAmount::Extreme)),
"rightmost" => Some(Command::Move(MoveMode::Right, MoveAmount::Extreme)),
_ => None,
})
};
cmd.or({
let amount = args.get(1)
let amount = args
.get(1)
.and_then(|amount| amount.parse().ok())
.map(|amount| MoveAmount::Integer(amount))
.map(MoveAmount::Integer)
.unwrap_or_default();
args.get(0)

View File

@@ -2,7 +2,9 @@ use std::collections::HashMap;
use std::sync::Arc;
use std::time::Duration;
use crate::command::{parse, Command, GotoMode, MoveAmount, MoveMode, SeekDirection, ShiftMode, TargetMode};
use crate::command::{
parse, Command, GotoMode, MoveAmount, MoveMode, SeekDirection, ShiftMode, TargetMode,
};
use crate::library::Library;
use crate::queue::{Queue, RepeatSetting};
use crate::spotify::{Spotify, VOLUME_PERCENT};
@@ -263,22 +265,64 @@ impl CommandManager {
kb.insert("A".into(), Command::Goto(GotoMode::Artist));
kb.insert("Up".into(), Command::Move(MoveMode::Up, Default::default()));
kb.insert("Down".into(), Command::Move(MoveMode::Down, Default::default()));
kb.insert("Left".into(), Command::Move(MoveMode::Left, Default::default()));
kb.insert("Right".into(), Command::Move(MoveMode::Right, Default::default()));
kb.insert("PageUp".into(), Command::Move(MoveMode::Up, MoveAmount::Integer(5)));
kb.insert("PageDown".into(), Command::Move(MoveMode::Down, MoveAmount::Integer(5)));
kb.insert("Home".into(), Command::Move(MoveMode::Up, MoveAmount::Extreme));
kb.insert("End".into(), Command::Move(MoveMode::Down, MoveAmount::Extreme));
kb.insert(
"Down".into(),
Command::Move(MoveMode::Down, Default::default()),
);
kb.insert(
"Left".into(),
Command::Move(MoveMode::Left, Default::default()),
);
kb.insert(
"Right".into(),
Command::Move(MoveMode::Right, Default::default()),
);
kb.insert(
"PageUp".into(),
Command::Move(MoveMode::Up, MoveAmount::Integer(5)),
);
kb.insert(
"PageDown".into(),
Command::Move(MoveMode::Down, MoveAmount::Integer(5)),
);
kb.insert(
"Home".into(),
Command::Move(MoveMode::Up, MoveAmount::Extreme),
);
kb.insert(
"End".into(),
Command::Move(MoveMode::Down, MoveAmount::Extreme),
);
kb.insert("k".into(), Command::Move(MoveMode::Up, Default::default()));
kb.insert("j".into(), Command::Move(MoveMode::Down, Default::default()));
kb.insert("h".into(), Command::Move(MoveMode::Left, Default::default()));
kb.insert("l".into(), Command::Move(MoveMode::Right, Default::default()));
kb.insert(
"j".into(),
Command::Move(MoveMode::Down, Default::default()),
);
kb.insert(
"h".into(),
Command::Move(MoveMode::Left, Default::default()),
);
kb.insert(
"l".into(),
Command::Move(MoveMode::Right, Default::default()),
);
kb.insert("Ctrl+p".into(), Command::Move(MoveMode::Up, Default::default()));
kb.insert("Ctrl+n".into(), Command::Move(MoveMode::Down, Default::default()));
kb.insert("Ctrl+a".into(), Command::Move(MoveMode::Left, Default::default()));
kb.insert("Ctrl+e".into(), Command::Move(MoveMode::Right, Default::default()));
kb.insert(
"Ctrl+p".into(),
Command::Move(MoveMode::Up, Default::default()),
);
kb.insert(
"Ctrl+n".into(),
Command::Move(MoveMode::Down, Default::default()),
);
kb.insert(
"Ctrl+a".into(),
Command::Move(MoveMode::Left, Default::default()),
);
kb.insert(
"Ctrl+e".into(),
Command::Move(MoveMode::Right, Default::default()),
);
kb.insert("Shift+Up".into(), Command::Shift(ShiftMode::Up, None));
kb.insert("Shift+Down".into(), Command::Shift(ShiftMode::Down, None));

View File

@@ -376,9 +376,7 @@ impl<I: ListItem + Clone> ViewExt for ListView<I> {
}
return Ok(CommandResult::Consumed(None));
}
MoveMode::Down
if self.selected == last_idx && self.can_paginate() =>
{
MoveMode::Down if self.selected == last_idx && self.can_paginate() => {
self.pagination.call(&self.content);
}
_ => {}