The tab completion DSL had a $revision variable which produces branch names, tag names, etc. In some contexts it's too general, e.g. branch -D accepts a branch name but not a tag. In those contexts we were using $anything to avoid producing invalid tab completion options.
This PR introduces a more specific $branch variable that can be used when we want to only tab complete branch names.
Fixes #352
The tab completion DSL had a
$revision
variable which produces branch names, tag names, etc. In some contexts it's too general, e.g.branch -D
accepts a branch name but not a tag. In those contexts we were using$anything
to avoid producing invalid tab completion options.This PR introduces a more specific
$branch
variable that can be used when we want to only tab complete branch names.