feat: multi-suggest

This commit is contained in:
iff 2024-12-06 23:37:28 +01:00
parent e6ed9d617b
commit 1ddfbef7e7
8 changed files with 111 additions and 81 deletions

View file

@ -18,6 +18,7 @@ pub struct Data {
pub shell: String,
pub command: String,
pub suggest: Option<String>,
pub candidates: Vec<String>,
pub split: Vec<String>,
pub alias: Option<HashMap<String, String>>,
pub privilege: Option<String>,
@ -43,6 +44,7 @@ impl Data {
shell,
command,
suggest: None,
candidates: vec![],
alias,
split: vec![],
privilege: None,
@ -110,6 +112,13 @@ impl Data {
self.suggest = Some(suggest.to_string());
};
}
pub fn add_candidate(&mut self, candidate: &str) {
let candidate = candidate.trim();
if candidate != self.command {
self.candidates.push(candidate.to_string());
}
}
}
pub fn split_command(command: &str) -> Vec<String> {