mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 18:10:56 +01:00 
			
		
		
		
	Found by grepping for patterns that can match needles of various lengths:
    :grep 'compset -[PS].*[\#^*()\|<>?~\]' Completion/
		
	
			
		
			
				
	
	
		
			79 lines
		
	
	
	
		
			3.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
	
		
			3.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #compdef lzop
 | |
| 
 | |
| local expl state line decompress disp curcontext="$curcontext" sep ret=1
 | |
| typeset -A opt_args
 | |
| 
 | |
| _arguments -C -s \
 | |
|   '(-c --stdout --to-stdout)'{-c,--stdout,--to-stdout}'[write on standard output]' \
 | |
|   '(-d --decompress --uncompress -x -extract)'{-d,--decompress,--uncompress}'[decompress]' \
 | |
|   '(-x --extract -d --decompress --uncompress -n --name -p --path)'{-x,--extract}'[extract]' \
 | |
|   '(-f --force)'{-f,--force}'[force overwrite]' \
 | |
|   '(- *)'{-h,-H,--help}'[display help information]' \
 | |
|   '(-l --list)'{-l,--list}'[list compressed file contents]' \
 | |
|   '(-L --license)'{-L,--license}'[display software license]' \
 | |
|   '(-n --no-name -N --name)'{-n,--no-name}'[do not save or restore the original name and time stamp]' \
 | |
|   '(-N --name -n --no-name)'{-N,--name}'[save or restore the original name and time stamp]' \
 | |
|   '--no-mode[do not restore original mode]' \
 | |
|   '--no-time[do not restore original time stamp]' \
 | |
|   '(-q --quiet --silent)'{-q,--quiet,--silent}'[suppress all warnings]' \
 | |
|   '(-r --recursive)'{-r,--recursive}'[operate recursively on directories]' \
 | |
|   '(-S --suffix)'{-S+,--suffix=}'[specify suffix for compressed files]:suffix' \
 | |
|   '(-t --test)'{-t,--test}'[test compressed file integrity]' \
 | |
|   \*{-v,--verbose}'[verbose mode]' \
 | |
|   '(- *)'{-V,--version}'[display version number]' \
 | |
|   '(       -1 -2 -3 -4 -5 -6 -7 -8 -9 --best)--fast' \
 | |
|   '(--fast    -2 -3 -4 -5 -6 -7 -8 -9 --best)-1' \
 | |
|   '(--fast -1    -3 -4 -5 -6 -7 -8 -9 --best)-2' \
 | |
|   '(--fast -1 -2    -4 -5 -6 -7 -8 -9 --best)-3' \
 | |
|   '(--fast -1 -2 -3    -5 -6 -7 -8 -9 --best)-4' \
 | |
|   '(--fast -1 -2 -3 -4    -6 -7 -8 -9 --best)-5' \
 | |
|   '(--fast -1 -2 -3 -4 -5    -7 -8 -9 --best)-6' \
 | |
|   '(--fast -1 -2 -3 -4 -5 -6    -8 -9 --best)-7' \
 | |
|   '(--fast -1 -2 -3 -4 -5 -6 -7    -9 --best)-8' \
 | |
|   '(--fast -1 -2 -3 -4 -5 -6 -7 -8    --best)-9' \
 | |
|   '(--fast -1 -2 -3 -4 -5 -6 -7 -8 -9       )--best' \
 | |
|   '--ls=[list each compressed file in a format similar to ls -ln]:ls flag:->flags' \
 | |
|   '--info[list internal header fields for each compressed file]' \
 | |
|   '(-I --sysinfo)'{-I,--sysinfo}'[display information about the system]' \
 | |
|   '(-o --outfile)'{-o,--outfile=}'[specify output file]:output file:_files' \
 | |
|   '(-p --path)'{-p,--path=}'[write output files to specified directory]:directory:_files -/' \
 | |
|   '(-F --no-checksum)'{-F,--no-checksum}'[do not store or verify a checksum]' \
 | |
|   '(-k --keep -U --unlink --delete)'{-k,--keep}"[keep (don't delete) input files]" \
 | |
|   '(-U --unlink --delete)'{-U,--unlink,--delete}'[delete input files]' \
 | |
|   '--no-stdin[do not try to read stdin]' \
 | |
|   '--no-warn[suppress all warnings]' \
 | |
|   '--ignore-warn[suppress all warnings and never exit with status 2]' \
 | |
|   '--no-color[do not use an color escape sequences]' \
 | |
|   '--mono[assume a mono ANSI terminal]' \
 | |
|   '--color[assume a color ANSI terminal]' \
 | |
|   '--intro[display intro sequence]' \
 | |
|   '--filter=[preprocess data with a special multimedia filter]:number' \
 | |
|   '*:files:->files' && ret=0
 | |
| 
 | |
| case "$state" in
 | |
|   files)
 | |
|     if (( $+opt_args[-d] || $+opt_args[--decompress] ||
 | |
| 	$+opt_args[--uncompress] || $+opt_args[-x] || $+opt_args[--extract] ||
 | |
| 	$+opt_args[--test] || $+opt_args[-t] || $+opt_args[--list] ||
 | |
| 	$+opt_args[-l] || $+opt_args[--ls] || $+opt_args[--info] )); then
 | |
|       _description files expl 'compressed file'
 | |
|       _files "$expl[@]" -g '*.[tl]zo(-.)' && ret=0
 | |
|     else
 | |
|       _description files expl 'file to compress'
 | |
|       _files "$expl[@]" -g '^*.[tl]zo(-.)' && ret=0
 | |
|     fi
 | |
|   ;;
 | |
|   flags)
 | |
|     zstyle -s ":completion:${curcontext}:flags" list-separator sep || sep=--
 | |
|     disp=(
 | |
|       "F $sep Append a \`*' for executable files"
 | |
|       "G $sep Inhibit display of group information"
 | |
|       "Q $sep Enclose file names in double quotes" )
 | |
|     # The "Z" on the next line is sentinel to prevent the character class from being empty.
 | |
|     disp=( ${disp[@]:#[Z$PREFIX]*} )
 | |
|     compset -P '[FGQ]#'
 | |
|     compadd -d disp - ${disp[@]%% *} && ret=0
 | |
|   ;;
 | |
| esac
 | |
| 
 | |
| return ret
 |