From b1b16d56d8fddf819bdbe24b3724bb6a9f3fa613 Mon Sep 17 00:00:00 2001 From: Daniel Luz Date: Thu, 1 Dec 2016 23:27:35 -0200 Subject: [PATCH] imp(Completions): adds fallbacks to Bash completions With these options, in case the completion function cannot provide suggestions, Bash will perform its default completions, based on e.g. files, directories, and variable names. This is particularly useful for argument values. --- src/completions/bash.rs | 2 +- tests/completions.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/completions/bash.rs b/src/completions/bash.rs index bd4c8c8bf2e..8da517b2793 100644 --- a/src/completions/bash.rs +++ b/src/completions/bash.rs @@ -58,7 +58,7 @@ impl<'a, 'b> BashGen<'a, 'b> { esac }} -complete -F _{name} {name} +complete -F _{name} -o bashdefault -o default {name} ", name = self.p.meta.bin_name.as_ref().unwrap(), name_opts = self.all_options_for_path(self.p.meta.bin_name.as_ref().unwrap()), diff --git a/tests/completions.rs b/tests/completions.rs index c024232268d..6aa99f5d7ab 100644 --- a/tests/completions.rs +++ b/tests/completions.rs @@ -21,5 +21,5 @@ fn test_generation() { let last_line = string.lines().rev().nth(0).unwrap(); assert_eq!(first_line, "_myapp() {"); - assert_eq!(last_line, "complete -F _myapp myapp"); + assert_eq!(last_line, "complete -F _myapp -o bashdefault -o default myapp"); }