1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
# lzop(1) completion -*- shell-script -*-
_lzop()
{
local cur prev words cword
_init_completion || return
case $prev in
--output | -!(-*)o)
_filedir
return
;;
--path)
_filedir -d
return
;;
--suffix | -!(-*)S)
return
;;
esac
if [[ $cur == -* ]]; then
COMPREPLY=($(compgen -W '-1 -2 -3 -4 -5 -6 -7 -8 -9 -P
--fast --best --decompress --extract --test --list --ls --info
--sysinfo --license --help --version --stdout --output --path
--force --no-checksum --no-name --name --no-mode --no-time --suffix
--keep --delete --crc32 --no-warn --ignore-warn --quiet --verbose
--no-stdin --filter --checksum --no-color --mono --color' \
-- "$cur"))
return
fi
local xspec="*.?(t)lzo"
case $prev in
--decompress | --uncompress | --extract | --list | --ls | --info | --test)
xspec="!"$xspec
;;
--force)
xspec=
;;
--*) ;;
-*f*)
xspec=
;;
-*[dltx]*)
xspec="!"$xspec
;;
esac
_tilde "$cur" || return
local IFS=$'\n'
compopt -o filenames
COMPREPLY=($(compgen -f -X "$xspec" -- "$cur") $(compgen -d -- "$cur"))
} &&
complete -F _lzop lzop
# ex: filetype=sh
|