| #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]' |
| '(-vv -v)'--verbose'[Enforce verbosity level]' |
| '(-vv)-v[Slightly more verbose output]' |
| '(-v)-vv[More verbose output]' |
| '(-vv -v --verbose)'{--quiet,-q}'[Quiet, only print error messages]' |
| '(--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]' |
| '(--recursive -r)'{--recursive,-r}'[Apply commands to subdirs and dependencies]' |
| ) |
| |
| _rebar () { |
| _arguments -C $_rebar_global_opts \ |
| '*::command and variable:->cmd_and_var' \ |
| && return |
| |
| case $state in |
| cmd_and_var) |
| _values -S = 'variables' \ |
| 'dialyze[Analyze the code for discrepancies]' \ |
| 'build-plt[Build project-specific PLT]' \ |
| 'check-plt[Check the plt for consistency and rebuild it if it is not up-to-date]' \ |
| 'clean[Clean]' \ |
| 'compile[Compile sources]' \ |
| 'create[Create skel based on template and vars]' \ |
| 'create-app[Create simple app skel]' \ |
| 'create-lib[Create simple lib skel]' \ |
| 'create-node[Create simple node skel]' \ |
| 'list-template[List available templates]' \ |
| 'doc[Generate Erlang program documentation]' \ |
| 'check-deps[Display to be fetched dependencies]' \ |
| 'prepare-deps[Fetch and build dependencies]' \ |
| 'refresh-deps[Update and build 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]' \ |
| 'escriptize[Create stand-alone escript executable]' \ |
| '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]::flag:(1)' \ |
| '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)' \ |
| 'libid[Library id]:' \ |
| 'appid[Application id]:' \ |
| 'nodeid[Node id]:' \ |
| 'overlay_vars[Overlay variables file]:' \ |
| 'previous_release[Previous release path]:' \ |
| 'profiler[Select profiler]::flag:(fprof eflame)' \ |
| 'root_dir[Reltool config root directory]::directory:_files -/' \ |
| 'shell[Start a shell similar to erl -pa ebin -pa deps/*/ebin]' \ |
| 'skip_deps[Skip deps]::flag:(true false)' \ |
| 'skip_apps[Application names to not process]::flag:(true false)' \ |
| 'target_dir[Target directory]:' \ |
| 'template[Template name]:' \ |
| 'template_dir[Template directory]::directory:_files -/' \ |
| 'tests[Run eunit tests whose name starts with given string]:' \ |
| && 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 |