Skip to content

Commit

Permalink
Merge pull request #105 from eparis/minor-bash-cleanup
Browse files Browse the repository at this point in the history
make filename extension handling a bash function
  • Loading branch information
eparis committed May 5, 2015
2 parents 743fa31 + dff410a commit bba5604
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
9 changes: 8 additions & 1 deletion bash_completions.go
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,13 @@ __handle_reply()
fi
}
# The arguments should be in the form "ext1|ext2|extn"
__handle_filename_extension_flag()
{
local ext="$1"
_filedir "@(${ext})"
}
__handle_flag()
{
__debug "${FUNCNAME}: c is $c words[c] is ${words[c]}"
Expand Down Expand Up @@ -213,7 +220,7 @@ func writeFlagHandler(name string, annotations map[string][]string, out *bytes.B
fmt.Fprintf(out, " flags_with_completion+=(%q)\n", name)

ext := strings.Join(value, "|")
ext = "_filedir '@(" + ext + ")'"
ext = "__handle_filename_extension_flag " + ext
fmt.Fprintf(out, " flags_completion+=(%q)\n", ext)
}
}
Expand Down
2 changes: 1 addition & 1 deletion bash_completions_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ func TestBashCompletions(t *testing.T) {
// check for required nouns
check(t, str, `must_have_one_noun+=("pods")`)
// check for filename extention flags
check(t, str, `flags_completion+=("_filedir '@(json|yaml|yml)'")`)
check(t, str, `flags_completion+=("__handle_filename_extension_flag json|yaml|yml")`)

checkOmit(t, str, cmdDeprecated.Name())
}

0 comments on commit bba5604

Please sign in to comment.