80 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #compdef rebar
 | |
| 
 | |
| local curcontext=$curcontext state ret=1
 | |
| typeset -ga _rebar_global_opts
 | |
| 
 | |
| _rebar_global_opts=(
 | |
|   '(--help -h)'{--help,-h}'[Show the program options]'
 | |
|   '(--commands -c)'{--commands,-c}'[Show available commands]'
 | |
|   '(--version -V)'{--version,-V}'[Show version information]'
 | |
|   '(-vvv -vv -v)'--verbose+'[Verbosity level. Default: 0]:verbosity level:(0 1 2 3)'
 | |
|   '(-vvv)-v[Slightly more verbose output]'
 | |
|   '(-vvv)-vv[More verbose output]'
 | |
|   '(-v -vv)-vvv[Most verbose output]'
 | |
|   '(--force -f)'{--force,-f}'[Force]'
 | |
|   '-D+[Define compiler macro]'
 | |
|   '(--jobs -j)'{--jobs+,-j+}'[Number of concurrent workers a command may use. Default: 3]:workers:(1 2 3 4 5 6 7 8 9)'
 | |
|   '(--config -C)'{--config,-C}'[Rebar config file to use]:files:_files'
 | |
|   '(--profile -p)'{--profile,-p}'[Profile this run of rebar]'
 | |
|   '(--keep-going -k)'{--keep-going,-k}'[Keep running after a command fails]'
 | |
| )
 | |
| 
 | |
| _rebar () {
 | |
|   _arguments -C $_rebar_global_opts \
 | |
|     '*::command and variable:->cmd_and_var' \
 | |
|     && return
 | |
| 
 | |
|   case $state in
 | |
|     cmd_and_var)
 | |
|       _values -S = 'variables' \
 | |
|         'clean[Clean]' \
 | |
|         'compile[Compile sources]' \
 | |
|         'create[Create skel based on template and vars]' \
 | |
|         'create-app[Create simple app skel]' \
 | |
|         'create-node[Create simple node skel]' \
 | |
|         'list-template[List avaiavle templates]' \
 | |
|         'doc[Generate Erlang program documentation]' \
 | |
|         'check-deps[Display to be fetched dependencies]' \
 | |
|         'get-deps[Fetch dependencies]' \
 | |
|         'update-deps[Update fetched dependencies]' \
 | |
|         'delete-deps[Delete fetched dependencies]' \
 | |
|         'list-deps[List dependencies]' \
 | |
|         'generate[Build release with reltool]' \
 | |
|         'overlay[Run reltool overlays only]' \
 | |
|         'generate-appups[Generate appup files]' \
 | |
|         'generate-upgrade[Build an upgrade package]' \
 | |
|         'eunit[Run eunit tests]' \
 | |
|         'ct[Run common_test suites]' \
 | |
|         'qc[Test QuickCheck properties]' \
 | |
|         'xref[Run cross reference analysis]' \
 | |
|         'help[Show the program options]' \
 | |
|         'version[Show version information]' \
 | |
|         'apps[Application names to process]:' \
 | |
|         'case[Common Test case]:' \
 | |
|         'dump_spec[Dump reltool spec]:' \
 | |
|         'jobs[Number of workers]::workers:(0 1 2 3 4 5 6 7 8 9)' \
 | |
|         'suites[Common Test suites]::suite name:_path_files -W "(src test)" -g "*.erl(:r)"' \
 | |
|         'verbose[Verbosity level]::verbosity level:(0 1 2 3)' \
 | |
|         'appid[Application id]:' \
 | |
|         'previous_release[Previous release path]:' \
 | |
|         'nodeid[Node id]:' \
 | |
|         'root_dir[Reltool config root directory]::directory:_files -/' \
 | |
|         'skip_deps[Skip deps]::flag:(true false)' \
 | |
|         'skip_apps[Application names to not process]::flag:(true false)' \
 | |
|         'template[Template name]:' \
 | |
|         'template_dir[Template directory]::directory:_files -/' \
 | |
|         && ret=0
 | |
|       ;;
 | |
|   esac
 | |
| }
 | |
| 
 | |
| _rebar
 | |
| 
 | |
| # Local variables:
 | |
| # mode: shell-script
 | |
| # sh-basic-offset: 2
 | |
| # sh-indent-comment: t
 | |
| # indent-tabs-mode: nil
 | |
| # End:
 | |
| # ex: sw=2 ts=2 et filetype=sh
 |