reformat + remove redundant closure
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -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));
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
_ => {}
|
||||
|
||||
Reference in New Issue
Block a user