diff options
-rw-r--r-- | etc/completions/__git_files | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/etc/completions/__git_files b/etc/completions/__git_files deleted file mode 100644 index 062aefc..0000000 --- a/etc/completions/__git_files +++ /dev/null @@ -1,39 +0,0 @@ -#autoload -local expl files ls_opts opts gitdir dirdiff i j prefix item self - -zparseopts -D -E -a opts -- -cached -deleted -modified -others -ignored -unmerged -killed - -gitdir=$(_call_program gitdir git rev-parse --git-dir 2>/dev/null) -__git_command_successful || return - -ls_opts=("--exclude-per-directory=.gitignore") -[[ -f "${gitdir}/info/exclude" ]] && ls_opts+="--exclude-from=${gitdir}/info/exclude" - -files=(${(ps:\0:)"$(cd ${gitdir}/..; _call_program files git ls-files -z ${ls_opts} ${opts} 2>/dev/null)"}) -__git_command_successful || return - -if [[ -z ${gitdir} ]] { - return 1 -} - -if [[ ! -d .git ]] { - dirdiff=${PWD#${gitdir%/.git}/} - for ((i = 1; i <= ${#files}; i++)) { - prefix='' - item=(${(s:/:)files[$i]}) - self=(${(s:/:)dirdiff}) - for ((j = 1; j <= ${#self}; j++)) { - if [[ ${item[$j]} == ${self[$j]} ]] { - item[$j]='' - } else { - prefix+='../' - } - } - files[$i]=${prefix} - for j in ${item}; { - [[ -n ${j} ]] && files[$i]+="${j}/" - } - files[$i]=${files[$i]%/} - } -} -_wanted files expl 'index file' _multi_parts ${@} - / files |