Browse Source

Fix compatibility bug with Git completions (#318)

Git 2.30.0 removed an internal function yadm completion depended upon.
This change retains the old function call for compatibility.
pull/317/head
Tim Byrne 9 months ago
parent
commit
c4327d0099
No known key found for this signature in database GPG Key ID: 14DB4FC2465A4B12
  1. 14
      completion/bash/yadm

14
completion/bash/yadm

@ -1,10 +1,12 @@
# test if git completion is missing, but loader exists, attempt to load
if ! declare -F _git > /dev/null && declare -F _completion_loader > /dev/null; then
_completion_loader git
if ! declare -F _git > /dev/null && ! declare -F __git_wrap__git_main > /dev/null; then
if declare -F _completion_loader > /dev/null; then
_completion_loader git
fi
fi
# only operate if git completion is present
if declare -F _git > /dev/null; then
if declare -F _git > /dev/null || declare -F __git_wrap__git_main > /dev/null; then
_yadm() {
@ -66,7 +68,11 @@ if declare -F _git > /dev/null; then
if [[ " ${yadm_switches[*]} " != *" $penultimate "* ]]; then
# TODO: somehow solve the problem with [--yadm-xxx option] being
# incompatible with what git expects, namely [--arg=option]
_git
if declare -F _git > /dev/null; then
_git
else
__git_wrap__git_main
fi
fi
if [[ "$current" =~ ^- ]]; then
local matching

Loading…
Cancel
Save