git-commit-vandalism/contrib/completion
John Szakmeister db8d750876 contrib/completion: escape the forward slash in __git_match_ctag
The current definition results in an incorrect expansion of the term under zsh.
For instance "/^${1////\\/}/" under zsh with the argument "hi" results in:
    /^/\/h/\/i/

This results in an output similar to this when trying to complete `git grep
chartab` under zsh:

    :: git grep chartabawk: cmd. line:1: /^/\/c/\/h/\/a/\/r/\/t/\/a/\/b/ { print $1 }
    awk: cmd. line:1:    ^ backslash not last character on line
    awk: cmd. line:1: /^/\/c/\/h/\/a/\/r/\/t/\/a/\/b/ { print $1 }
    awk: cmd. line:1:    ^ syntax error

Leaving the prompt in a goofy state until the user hits a key.

Escaping the literal / in the parameter expansion (using "/^${1//\//\\/}/")
results in:
    /^chartab/

allowing the completion to work correctly.

This formulation also works under bash.

Signed-off-by: John Szakmeister <john@szakmeister.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2015-03-14 18:59:09 -07:00
..
git-completion.bash contrib/completion: escape the forward slash in __git_match_ctag 2015-03-14 18:59:09 -07:00
git-completion.tcsh remove #!interpreter line from shell libraries 2013-11-26 14:23:56 -08:00
git-completion.zsh completion: fix completing args of aliased "push", "fetch", etc. 2014-04-09 14:22:18 -07:00
git-prompt.sh Merge branch 'rh/prompt-pcmode-avoid-eval-on-refname' 2014-05-19 16:10:10 -07:00