pub fn parse_describe_key_arg(s: &str) -> (Option<BindingMode>, &str)Expand description
Parse a :describe-key argument that may carry a mode prefix.
Supports the six primary-mode prefix shorthands:
| prefix | mode |
|---|---|
n_ | Normal |
i_ | Insert |
v_ | Visual |
r_ | Replace |
c_ | Command |
s_ | Search |
Returns (mode, chord_str):
modeisSome(BindingMode)when a prefix was recognised;chord_stris the remainder after stripping thex_prefix.- When no prefix matches,
modeisNoneandchord_stris the original input unchanged.
ยงExamples
use lattice_keymap::{BindingMode, parse_describe_key_arg};
let (mode, chord) = parse_describe_key_arg("n_j");
assert_eq!(mode, Some(BindingMode::Normal));
assert_eq!(chord, "j");
let (mode, chord) = parse_describe_key_arg("<C-w>j");
assert_eq!(mode, None);
assert_eq!(chord, "<C-w>j");
let (mode, chord) = parse_describe_key_arg("i_<C-n>");
assert_eq!(mode, Some(BindingMode::Insert));
assert_eq!(chord, "<C-n>");