You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
793 B
40 lines
793 B
#compdef git-submodule-move |
|
#autoload |
|
|
|
# |
|
# Completes git-submodule-move. |
|
# |
|
# Authors: |
|
# Sorin Ionescu <sorin.ionescu@gmail.com> |
|
# |
|
|
|
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then |
|
return 1 |
|
fi |
|
|
|
local state expl ret=1 |
|
local -a submodules |
|
local submodule |
|
|
|
_arguments -C -s -S \ |
|
'1::args:->submodule' \ |
|
'2::args:->directory' && ret=0 |
|
|
|
case "$state" in |
|
(submodule) |
|
while IFS=$'\n' read submodule; do |
|
submodules+=("$submodule") |
|
done < <( |
|
command git config --file "$(git-root)/.gitmodules" --list \ |
|
| grep '.path=' \ |
|
| cut -d= -f2- |
|
) |
|
|
|
_describe -t submodule 'submodules' submodules && ret=0 |
|
;; |
|
(directory) |
|
_wanted directories expl 'directory' _path_files -/ || _message 'directory' |
|
;; |
|
esac |
|
|
|
return $ret
|
|
|