diff options
| author | Delapouite <delapouite@gmail.com> | 2018-10-08 22:07:13 +0200 |
|---|---|---|
| committer | Delapouite <delapouite@gmail.com> | 2018-10-08 22:07:13 +0200 |
| commit | 3a36490ef152171631dd5a307f00adffde4e18e9 (patch) | |
| tree | f366cebb789225210ee6c5c7c22986b3e1576668 /src | |
| parent | 9024d41d64627fd6a59b5ad66987e11e2d228f16 (diff) | |
Add alias completer to unalias command
Diffstat (limited to 'src')
| -rw-r--r-- | src/commands.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/commands.cc b/src/commands.cc index 0e7ccf97..15658ede 100644 --- a/src/commands.cc +++ b/src/commands.cc @@ -1141,6 +1141,14 @@ const CommandDesc alias_cmd = { } }; +static Completions complete_alias(const Context& context, CompletionFlags flags, + const String& prefix, ByteCount cursor_pos) +{ + return {0_byte, cursor_pos, + complete(prefix, cursor_pos, context.aliases().flatten_aliases() | + transform([](auto& entry) -> const String& { return entry.key; }))}; +} + const CommandDesc unalias_cmd = { "unalias", nullptr, @@ -1149,7 +1157,7 @@ const CommandDesc unalias_cmd = { ParameterDesc{{}, ParameterDesc::Flags::None, 2, 3}, CommandFlags::None, CommandHelper{}, - make_completer(complete_scope, complete_nothing, complete_command_name), + make_completer(complete_scope, complete_alias, complete_command_name), [](const ParametersParser& parser, Context& context, const ShellContext&) { AliasRegistry& aliases = get_scope(parser[0], context).aliases(); |
