#compdef dust autoload -U is-at-least _dust() { typeset -A opt_args typeset -a _arguments_options local ret=1 if is-at-least 5.2; then _arguments_options=(-s -S -C) else _arguments_options=(-s -C) fi local context curcontext="$curcontext" state line _arguments "${_arguments_options[@]}" : \ '-d+[Depth to show]:DEPTH:_default' \ '--depth=[Depth to show]:DEPTH:_default' \ '-T+[Number of threads to use]:THREADS:_default' \ '--threads=[Number of threads to use]:THREADS:_default' \ '--config=[Specify a config file to use]:FILE:_files' \ '-n+[Number of lines of output to show. (Default is terminal_height - 10)]:NUMBER:_default' \ '--number-of-lines=[Number of lines of output to show. (Default is terminal_height - 10)]:NUMBER:_default' \ '*-X+[Exclude any file or directory with this path]:PATH:_files' \ '*--ignore-directory=[Exclude any file or directory with this path]:PATH:_files' \ '-I+[Exclude any file or directory with a regex matching that listed in this file, the file entries will be added to the ignore regexs provided by --invert_filter]:FILE:_files' \ '--ignore-all-in-file=[Exclude any file or directory with a regex matching that listed in this file, the file entries will be added to the ignore regexs provided by --invert_filter]:FILE:_files' \ '-z+[Minimum size file to include in output]:MIN_SIZE:_default' \ '--min-size=[Minimum size file to include in output]:MIN_SIZE:_default' \ '(-e --filter -t --file-types)*-v+[Exclude filepaths matching this regex. To ignore png files type\: -v "\\.png\$"]:REGEX:_default' \ '(-e --filter -t --file-types)*--invert-filter=[Exclude filepaths matching this regex. To ignore png files type\: -v "\\.png\$"]:REGEX:_default' \ '(-t --file-types)*-e+[Only include filepaths matching this regex. For png files type\: -e "\\.png\$"]:REGEX:_default' \ '(-t --file-types)*--filter=[Only include filepaths matching this regex. For png files type\: -e "\\.png\$"]:REGEX:_default' \ '-w+[Specify width of output overriding the auto detection of terminal width]:WIDTH:_default' \ '--terminal-width=[Specify width of output overriding the auto detection of terminal width]:WIDTH:_default' \ '-o+[Changes output display size. si will print sizes in powers of 1000. b k m g t kb mb gb tb will print the whole tree in that size]:FORMAT:((si\:"SI prefix (powers of 1000)" b\:"byte (B)" k\:"kibibyte (KiB)" m\:"mebibyte (MiB)" g\:"gibibyte (GiB)" t\:"tebibyte (TiB)" kb\:"kilobyte (kB)" mb\:"megabyte (MB)" gb\:"gigabyte (GB)" tb\:"terabyte (TB)"))' \ '--output-format=[Changes output display size. si will print sizes in powers of 1000. b k m g t kb mb gb tb will print the whole tree in that size]:FORMAT:((si\:"SI prefix (powers of 1000)" b\:"byte (B)" k\:"kibibyte (KiB)" m\:"mebibyte (MiB)" g\:"gibibyte (GiB)" t\:"tebibyte (TiB)" kb\:"kilobyte (kB)" mb\:"megabyte (MB)" gb\:"gigabyte (GB)" tb\:"terabyte (TB)"))' \ '-S+[Specify memory to use as stack size - use if you see\: '\''fatal runtime error\: stack overflow'\'' (default low memory=1048576, high memory=1073741824)]:STACK_SIZE:_default' \ '--stack-size=[Specify memory to use as stack size - use if you see\: '\''fatal runtime error\: stack overflow'\'' (default low memory=1048576, high memory=1073741824)]:STACK_SIZE:_default' \ '-M+[+/-n matches files modified more/less than n days ago , and n matches files modified exactly n days ago, days are rounded down.That is +n => (−∞, curr−(n+1)), n => \[curr−(n+1), curr−n), and -n => (𝑐𝑢𝑟𝑟−𝑛, +∞)]:MTIME:_default' \ '--mtime=[+/-n matches files modified more/less than n days ago , and n matches files modified exactly n days ago, days are rounded down.That is +n => (−∞, curr−(n+1)), n => \[curr−(n+1), curr−n), and -n => (𝑐𝑢𝑟𝑟−𝑛, +∞)]:MTIME:_default' \ '-A+[just like -mtime, but based on file access time]:ATIME:_default' \ '--atime=[just like -mtime, but based on file access time]:ATIME:_default' \ '-y+[just like -mtime, but based on file change time]:CTIME:_default' \ '--ctime=[just like -mtime, but based on file change time]:CTIME:_default' \ '(--files-from)--files0-from=[Read NUL-terminated paths from FILE (use \`-\` for stdin)]:FILES0_FROM:_files' \ '(--files0-from)--files-from=[Read newline-terminated paths from FILE (use \`-\` for stdin)]:FILES_FROM:_files' \ '*--collapse=[Keep these directories collapsed]:COLLAPSE:_files' \ '-m+[Directory '\''size'\'' is max filetime of child files instead of disk size. while a/c/m for last accessed/changed/modified time]:FILETIME:((a\:"last accessed time" c\:"last changed time" m\:"last modified time"))' \ '--filetime=[Directory '\''size'\'' is max filetime of child files instead of disk size. while a/c/m for last accessed/changed/modified time]:FILETIME:((a\:"last accessed time" c\:"last changed time" m\:"last modified time"))' \ '-p[Subdirectories will not have their path shortened]' \ '--full-paths[Subdirectories will not have their path shortened]' \ '-L[dereference sym links - Treat sym links as directories and go into them]' \ '--dereference-links[dereference sym links - Treat sym links as directories and go into them]' \ '-x[Only count the files and directories on the same filesystem as the supplied directory]' \ '--limit-filesystem[Only count the files and directories on the same filesystem as the supplied directory]' \ '-s[Use file length instead of blocks]' \ '--apparent-size[Use file length instead of blocks]' \ '-r[Print tree upside down (biggest highest)]' \ '--reverse[Print tree upside down (biggest highest)]' \ '-c[No colors will be printed (Useful for commands like\: watch)]' \ '--no-colors[No colors will be printed (Useful for commands like\: watch)]' \ '-C[Force colors print]' \ '--force-colors[Force colors print]' \ '-b[No percent bars or percentages will be displayed]' \ '--no-percent-bars[No percent bars or percentages will be displayed]' \ '-B[percent bars moved to right side of screen]' \ '--bars-on-right[percent bars moved to right side of screen]' \ '-R[For screen readers. Removes bars. Adds new column\: depth level (May want to use -p too for full path)]' \ '--screen-reader[For screen readers. Removes bars. Adds new column\: depth level (May want to use -p too for full path)]' \ '--skip-total[No total row will be displayed]' \ '-f[Directory '\''size'\'' is number of child files instead of disk size]' \ '--filecount[Directory '\''size'\'' is number of child files instead of disk size]' \ '-i[Do not display hidden files]' \ '--ignore-hidden[Do not display hidden files]' \ '(-d --depth -D --only-dir)-t[show only these file types]' \ '(-d --depth -D --only-dir)--file-types[show only these file types]' \ '-P[Disable the progress indication]' \ '--no-progress[Disable the progress indication]' \ '--print-errors[Print path with errors]' \ '(-F --only-file -t --file-types)-D[Only directories will be displayed]' \ '(-F --only-file -t --file-types)--only-dir[Only directories will be displayed]' \ '(-D --only-dir)-F[Only files will be displayed. (Finds your largest files)]' \ '(-D --only-dir)--only-file[Only files will be displayed. (Finds your largest files)]' \ '-j[Output the directory tree as json to the current directory]' \ '--output-json[Output the directory tree as json to the current directory]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ '*::params -- Input files or directories:_files' \ && ret=0 } (( $+functions[_dust_commands] )) || _dust_commands() { local commands; commands=() _describe -t commands 'dust commands' commands "$@" } if [ "$funcstack[1]" = "_dust" ]; then _dust "$@" else compdef _dust dust fi