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/
		
	
			
		
			
				
	
	
		
			47 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #compdef gsettings
 | |
| 
 | |
| local curcontext="$curcontext" state line expl ret=1
 | |
| local subcmds
 | |
| 
 | |
| _arguments \
 | |
|   '(- 1 *)--version[show version information]' \
 | |
|   '--schemadir[specify location of schemata]:directory:_directories' \
 | |
|   ':command:->subcmds' \
 | |
|   '*::args:->subargs' && ret=0
 | |
| 
 | |
| if [[ $state = subargs ]]; then
 | |
|   curcontext="${curcontext%:*}-$words[1]:"
 | |
|   case $words[1] in
 | |
|     help) state=subcmds;;
 | |
|     get|range|reset|writable|monitor)
 | |
|       _arguments ':schema:->schemata' ':key:->keys'
 | |
|     ;;
 | |
|     set)
 | |
|       _arguments ':schema:->schemata' ':key:->keys' ':value'
 | |
|     ;;
 | |
|     (list|reset)-(keys|recursively|children)) state=schemata ;;
 | |
|     *) _default && ret=0 ;;
 | |
|   esac
 | |
| fi
 | |
| 
 | |
| case $state in
 | |
|   subcmds)
 | |
|     subcmds=( ${(L)${${(M)${${(f)"$(_call_program commands $service help)"}[(r)Commands:*,-2]}:#  *}#??}/ ##/:} )
 | |
|     _describe -t commands 'command' subcmds -M 'r:?|-=* r:|=*' && ret=0
 | |
|     state=''
 | |
|   ;;
 | |
|   schemata)
 | |
|     if compset -P 1 '*:'; then
 | |
|       _directories && ret=0
 | |
|     else
 | |
|       _wanted schemata expl 'schema' compadd -M 'r:|.=* r:|=*' \
 | |
|           $(_call_program schemata $service list-schemas) && ret=0
 | |
|     fi
 | |
|   ;;
 | |
|   keys)
 | |
|     _wanted keys expl 'key' compadd \
 | |
|         $(_call_program keys $service list-keys $words[CURRENT-1]) && ret=0
 | |
|   ;;
 | |
| esac
 | |
| 
 | |
| return ret
 |