summaryrefslogtreecommitdiff
path: root/src/cmds/comp/workspace_alias.rs
blob: cd39c9d23ed997b997e9eb98909abe7b027f228a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use comp_system_macros::{file_suggest, suggest};
use rust_i18n::t;

use crate::systems::comp::{context::CompletionContext, result::CompletionResult};

pub fn comp(ctx: CompletionContext) -> CompletionResult {
    if ctx.current_word.starts_with('-') {
        return suggest!(
            "-i" = t!("workspace_alias.comp.insert").trim(),
            "--insert" = t!("workspace_alias.comp.insert").trim(),
            "-Q" = t!("workspace_alias.comp.query").trim(),
            "--query" = t!("workspace_alias.comp.query").trim(),
            "-e" = t!("workspace_alias.comp.erase").trim(),
            "--erase" = t!("workspace_alias.comp.erase").trim(),
            "--to" = t!("workspace_alias.comp.to").trim()
        )
        .into();
    }

    if ctx.previous_word == "--to" {
        return suggest!().into();
    }

    file_suggest!()
}