From 6eec14ee3726fc46850025ea1e184ecf74db5cf4 Mon Sep 17 00:00:00 2001 From: Michael Davis Date: Wed, 16 Nov 2022 18:58:54 -0600 Subject: [PATCH] Use key-sequence format for command palette keybinds (#4712) The text within the command palette used a custom format to display the keybinding for a command. This change switches to the key sequence format that we use for pending keys and macros. --- helix-term/src/commands.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index 707cc9bd5..2f2427eca 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -54,7 +54,7 @@ use crate::job::{self, Jobs}; use futures_util::StreamExt; -use std::{collections::HashMap, fmt, fmt::Write, future::Future}; +use std::{collections::HashMap, fmt, future::Future}; use std::{collections::HashSet, num::NonZeroUsize}; use std::{ @@ -2447,13 +2447,11 @@ fn label(&self, keymap: &Self::Data) -> Spans { let fmt_binding = |bindings: &Vec>| -> String { bindings.iter().fold(String::new(), |mut acc, bind| { if !acc.is_empty() { - acc.push_str(", "); + acc.push(' '); + } + for key in bind { + acc.push_str(&key.key_sequence_format()); } - bind.iter().fold(false, |needs_plus, key| { - write!(&mut acc, "{}{}", if needs_plus { "+" } else { "" }, key) - .expect("Writing to a string can only fail on an Out-Of-Memory error"); - true - }); acc }) };