mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 18:10:56 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #compdef getopt ggetopt
 | |
| 
 | |
| local -a args aopts
 | |
| 
 | |
| # Note: BusyBox getopt is borrowed straight from util-linux, so they're
 | |
| # basically identical
 | |
| if _pick_variant busybox=BusyBox util-linux='getopt*enhanced' unix --version; then
 | |
|   args=(
 | |
|     '(-a --alternative)'{-a,--alternative}'[allow long options with single -]'
 | |
|     '(: -)'{-h,--help}'[display help information]'
 | |
|     '*'{-l+,--longoptions=}'[specify long options]:long options'
 | |
|     '(-n --name)'{-n+,--name=}'[specify program name]:program name'
 | |
|     '(1 -o --options)'{-o+,--options=}'[specify short options]:short options'
 | |
|     '(-q --quiet)'{-q,--quiet}'[suppress getopt(3) error messages]'
 | |
|     '(-Q --quiet-output)'{-Q,--quiet-output}'[suppress normal output]'
 | |
|     '(-s --shell)'{-s+,--shell=}'[specify shell quoting conventions]:shell:(bash csh tcsh sh)'
 | |
|     '(: -)'{-T,--test}'[test for enhanced getopt]'
 | |
|     '(-u --unquoted)'{-u,--unquoted}'[do not quote output]'
 | |
|     '(: -)'{-V,--version}'[display version information]'
 | |
|     '(-o --options)1: :_guard "^-*" "short options"'
 | |
|     '*:argument'
 | |
|   )
 | |
|   [[ -n $POSIXLY_CORRECT ]] && aopts+=( -A '-*' )
 | |
| else
 | |
|   args=( '1:short options' '*:argument' )
 | |
| fi
 | |
| 
 | |
| _arguments -s -S $aopts : $args
 |