From: ted@tedpavlic.com Date: Thu, 15 Jan 2009 16:02:22 GMT Subject: [PATCH noindent 2/3] bash-completion: Try bash completions before simple filetype Message-ID: <1232035343-10544-2-git-send-email-ted@tedpavlic.com> In-Reply-To: <1232035343-10544-1-git-send-email-ted@tedpavlic.com> From: Ted Pavlic When a git completion is not found, a bash shell should try bash-type completions first before going to standard filetype completions. This patch /adds/ "-o bashdefault" to the completion line. If that option is not available, it uses the old method. This behavior was inspired by Mercurial's bash completion script. Signed-off-by: Ted Pavlic Acked-by: Shawn O. Pearce --- This patch series is identical to the last, but the commit message has been stripped of its indentation (by request). contrib/completion/git-completion.bash | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index 5d1515c..201f9a6 100755 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -1766,13 +1766,16 @@ _gitk () __git_complete_revlist } -complete -o default -o nospace -F _git git -complete -o default -o nospace -F _gitk gitk +complete -o bashdefault -o default -o nospace -F _git git 2>/dev/null \ + || complete -o default -o nospace -F _git git +complete -o bashdefault -o default -o nospace -F _gitk gitk 2>/dev/null \ + || complete -o default -o nospace -F _gitk gitk # The following are necessary only for Cygwin, and only are needed # when the user has tab-completed the executable name and consequently # included the '.exe' suffix. # if [ Cygwin = "$(uname -o 2>/dev/null)" ]; then -complete -o default -o nospace -F _git git.exe +complete -o bashdefault -o default -o nospace -F _git git.exe 2>/dev/null \ + || complete -o default -o nospace -F _git git.exe fi -- 1.6.1.87.g15624