#compdef mondoarchive local curcontext="$curcontext" state line expl ret=1 typeset -A opt_args _arguments -C \ '(-V)-O[create backup]' \ '(-O)-V[verify backup]' \ '(-c -C -i -n -w)-c[use CD-R as backup media]:CD-R burn speed' \ '(-c -C -i -n -w)-C[use CD-R as streaming device (experimental)]:CD-R burn speed' \ '(-c -C -i -n -w)-i[use ISO image as backup media]' \ '(-c -C -i -n -w)-n[use NFS mountpoint as backup media]:NFS mountpoint' \ '(-c -C -i -n -w)-w[use CD-RW as backup media]:CD-RW burn speed' \ '-D[differential backup]' \ '-E[exclude path(s) from backup]:paths to exclude from backup:->quoted_path' \ '-I[path(s) to backup]:paths to include in backup:->quoted_path' \ '-d[backup device]:backup device' \ '-g[run in fullscreen mode]' \ '-k[path to kernel]:path to kernel:->kernel_or_magic' \ '-m[manual eject]' \ '-s[media size]:media size]' \ '-x[non-linux partition]:non-linux partition:_files -g "*(%b)"' \ '(-1 -2 -3 -4 -5 -6 -7 -8 -9)-'{1,2,3,4,5,6,7,8,9}'[compression level]' \ '-A[post ISO-creation command]:pre ISO-creation command' \ '-B[pre iSO-creation command]:post ISO-creation command' \ '-F[do not create floppy]' \ '-H[create autorestore image]' \ '-L[use lzo instead of bzip2]' \ '-P[post-nuke tarball]:post-nuke tarball:_files -g "*.(#i)(tar.gz|tgz)(-.)"' \ '-S[scratch directory]:scratch directory:_files -/' \ '-T[temporary directory]:temporary directory:_files -/' \ '-f[device with MBR]:device with MBR:_files -g "*(%b)"' \ '-l[bootloader type]:bootloader type:(GRUB LILO)' && ret=0 case $state in quoted_path) local suf="/ \t\n" [[ -n $compstate[quote] ]] && { suf="$compstate[quote]$suf"; compset -q; } _files -r $suf && ret=0 ;; kernel_or_magic) _tags kernel magic while _tags; do _requested magic expl "keyword" \ compadd -- FAILSAFE && ret=0 _requested kernel expl "path to kernel image" \ _files && ret=0 (( ret )) || break done ;; esac return ret