diff --git a/src/command/client/search/history_list.rs b/src/command/client/search/history_list.rs index f4725b02..cf195a33 100644 --- a/src/command/client/search/history_list.rs +++ b/src/command/client/search/history_list.rs @@ -112,14 +112,11 @@ pub const PREFIX_LENGTH: u16 = " > 123ms 59s ago".len() as u16; impl DrawState<'_> { fn index(&mut self) { - // these encode the slices of `" > "`, `" {n} "`, or `" "` in a compact form. - // Yes, this is a hack, but it makes me feel happy - static SLICES: &str = " > 1 2 3 4 5 6 7 8 9 "; - - let i = self.y as usize + self.state.offset; - let i = i.checked_sub(self.state.selected); - let i = i.unwrap_or(10).min(10) * 2; - self.draw(&SLICES[i..i + 3], Style::default()); + if self.y as usize + self.state.offset == self.state.selected { + self.draw(" >> ", Style::default()); + } else { + self.draw(" ", Style::default()); + } } fn duration(&mut self, h: &History) { diff --git a/src/command/client/search/interactive.rs b/src/command/client/search/interactive.rs index 903c3362..fb60b47b 100644 --- a/src/command/client/search/interactive.rs +++ b/src/command/client/search/interactive.rs @@ -95,7 +95,6 @@ impl State { len: usize, ) -> Option { let ctrl = input.modifiers.contains(KeyModifiers::CONTROL); - let alt = input.modifiers.contains(KeyModifiers::ALT); match input.code { KeyCode::Char('c' | 'd' | 'g') if ctrl => return Some(RETURN_ORIGINAL), KeyCode::Esc => { @@ -107,10 +106,6 @@ impl State { KeyCode::Enter => { return Some(self.results_state.selected()); } - KeyCode::Char(c @ '1'..='9') if alt => { - let c = c.to_digit(10)? as usize; - return Some(self.results_state.selected() + c); - } KeyCode::Left => { self.input.left(); }