_find-identical-files() { local i cur prev opts cmd COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" cmd="" opts="" for i in ${COMP_WORDS[@]} do case "${cmd},${i}" in ",$1") cmd="find__identical__files" ;; *) ;; esac done case "${cmd}" in find__identical__files) opts="-a -b -B -c -d -D -e -f -F -g -i -o -r -s -t -v -w -x -h -V --algorithm --min_size --max_size --csv_dir --min_depth --max_depth --extended_path --min_frequency --max_frequency --generate --input_dir --omit_hidden --result_format --sort --time --verbose --wipe_terminal --xlsx_dir --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --algorithm) COMPREPLY=($(compgen -W "ahash blake3 fxhash sha256 sha512" -- "${cur}")) return 0 ;; -a) COMPREPLY=($(compgen -W "ahash blake3 fxhash sha256 sha512" -- "${cur}")) return 0 ;; --min_size) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -b) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --max_size) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -B) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --csv_dir) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -c) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --min_depth) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -d) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --max_depth) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -D) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --min_frequency) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -f) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --max_frequency) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -F) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --generate) COMPREPLY=($(compgen -W "bash elvish fish powershell zsh" -- "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -W "bash elvish fish powershell zsh" -- "${cur}")) return 0 ;; --input_dir) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -i) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --result_format) COMPREPLY=($(compgen -W "json yaml personal" -- "${cur}")) return 0 ;; -r) COMPREPLY=($(compgen -W "json yaml personal" -- "${cur}")) return 0 ;; --xlsx_dir) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -x) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; esac } if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then complete -F _find-identical-files -o nosort -o bashdefault -o default find-identical-files else complete -F _find-identical-files -o bashdefault -o default find-identical-files fi