50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| #compdef lunchy
 | |
| # ------------------------------------------------------------------------------
 | |
| # Description
 | |
| # -----------
 | |
| #
 | |
| #  Completion script for lunchy (https://github.com/mperham/lunchy).
 | |
| #
 | |
| #
 | |
| # ------------------------------------------------------------------------------
 | |
| # Authors
 | |
| # -------
 | |
| #
 | |
| #  * Blake Walters (https://github.com/markupboy)
 | |
| #
 | |
| # ------------------------------------------------------------------------------
 | |
| 
 | |
| local state line cmds ret=1
 | |
| 
 | |
| _arguments -C '1: :->cmds' '*: :->args'
 | |
| 
 | |
| case $state in
 | |
|   cmds)
 | |
|     local -a cmds
 | |
|     cmds=(
 | |
|       'ls:list available agents'
 | |
|       'start:start an agent'
 | |
|       'stop:stop an agent'
 | |
|       'restart:restart an agent'
 | |
|       'status:get the status of agent[s]'
 | |
|       'install:install an agents plist file'
 | |
|       'edit:edit an agent'
 | |
|     )
 | |
|     _describe -t commands 'lunchy command' cmds && ret=0
 | |
|     ;;
 | |
|   args)
 | |
|     case $line[1] in
 | |
|       (install)
 | |
|         ;;
 | |
|       (restart|stop)
 | |
|         _values 'items' `lunchy status | awk '{print $3}' ` 2>/dev/null && ret=0
 | |
|         ;;
 | |
|       *)
 | |
|         _values 'items' `lunchy ls` 2>/dev/null && ret=0
 | |
|         ;;
 | |
|     esac
 | |
|     ;;
 | |
| esac
 | |
| 
 | |
| return ret
 |