You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

216 lines
5.4 KiB

пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
  1. # bash completion for rebar3
  2. _rebar3()
  3. {
  4. local cur prev sopts lopts cmdsnvars
  5. COMPREPLY=()
  6. cur="${COMP_WORDS[COMP_CWORD]}"
  7. prev="${COMP_WORDS[COMP_CWORD-1]}"
  8. if [[ ${prev} == rebar3 ]] ; then
  9. sopts="-h -v"
  10. lopts="--help --version"
  11. cmdsnvars="as \
  12. clean \
  13. compile \
  14. cover \
  15. ct \
  16. deps \
  17. dialyzer \
  18. do \
  19. edoc \
  20. escriptize \
  21. eunit \
  22. help \
  23. new \
  24. path \
  25. pkgs \
  26. plugins \
  27. release \
  28. relup \
  29. report \
  30. shell \
  31. tar \
  32. tree \
  33. unlock \
  34. unstable \
  35. update \
  36. upgrade \
  37. version \
  38. xref"
  39. elif [[ ${prev} == as ]] ; then
  40. :
  41. elif [[ ${prev} == clean ]] ; then
  42. sopts="-a"
  43. lopts="--all"
  44. elif [[ ${prev} == compile ]] ; then
  45. :
  46. elif [[ ${prev} == cover ]] ; then
  47. sopts="-r -v"
  48. lopts="--reset --verbose"
  49. elif [[ ${prev} == ct ]] ; then
  50. sopts="-c -v"
  51. lopts="--dir \
  52. --suite \
  53. --group \
  54. --case \
  55. --config \
  56. --allow_user_terms \
  57. --logdir \
  58. --logopts \
  59. --verbosity \
  60. --silent_connections \
  61. --stylesheet \
  62. --cover \
  63. --repeat \
  64. --duration \
  65. --until \
  66. --force_stop \
  67. --basic_html \
  68. --stylesheet \
  69. --decrypt_key \
  70. --decrypt_file \
  71. --abort_if_missing_suites \
  72. --multiply_timetraps \
  73. --scale_timetraps \
  74. --create_priv_dir \
  75. --verbose" \
  76. --auto_compile
  77. elif [[ ${prev} == deps ]] ; then
  78. :
  79. elif [[ ${prev} == dialyzer ]] ; then
  80. sopts="-u -s"
  81. lopts="--update-plt --succ-typings"
  82. elif [[ ${prev} == do ]] ; then
  83. :
  84. elif [[ ${prev} == edoc ]] ; then
  85. :
  86. elif [[ ${prev} == escriptize ]] ; then
  87. :
  88. elif [[ ${prev} == eunit ]] ; then
  89. sopts="-c -e -v"
  90. lopts="--app --application --cover --dir --error_on_warning --file --module --suite --verbose"
  91. elif [[ ${prev} == help ]] ; then
  92. :
  93. elif [[ ${prev} == new ]] ; then
  94. sopts="-f"
  95. lopts="--force"
  96. elif [[ ${prev} == path ]] ; then
  97. sopts="-s"
  98. lopts="--app \
  99. --base \
  100. --bin \
  101. --ebin \
  102. --lib \
  103. --priv \
  104. --separator \
  105. --src \
  106. --rel"
  107. elif [[ ${prev} == pkgs ]] ; then
  108. :
  109. elif [[ ${prev} == plugins ]] ; then
  110. :
  111. elif [[ ${prev} == release ]] ; then
  112. sopts="-n -v -g -u -o -h -l -p -V -d -i -a -c -r"
  113. lopts="--relname \
  114. --relvsn \
  115. --goal \
  116. --upfrom \
  117. --output-dir \
  118. --help \
  119. --lib-dir \
  120. --path \
  121. --default-libs \
  122. --verbose \
  123. --dev-mode \
  124. --include-erts \
  125. --override \
  126. --config \
  127. --overlay_vars \
  128. --vm_args \
  129. --sys_config \
  130. --system_libs \
  131. --version \
  132. --root"
  133. elif [[ ${prev} == relup ]] ; then
  134. sopts="-n -v -g -u -o -h -l -p -V -d -i -a -c -r"
  135. lopts="--relname \
  136. --relvsn \
  137. --goal \
  138. --upfrom \
  139. --output-dir \
  140. --help \
  141. --lib-dir \
  142. --path \
  143. --default-libs \
  144. --verbose \
  145. --dev-mode \
  146. --include-erts \
  147. --override \
  148. --config \
  149. --overlay_vars \
  150. --vm_args \
  151. --sys_config \
  152. --system_libs \
  153. --version \
  154. --root"
  155. elif [[ ${prev} == report ]] ; then
  156. :
  157. elif [[ ${prev} == shell ]] ; then
  158. :
  159. elif [[ ${prev} == tar ]] ; then
  160. sopts="-n -v -g -u -o -h -l -p -V -d -i -a -c -r"
  161. lopts="--relname \
  162. --relvsn \
  163. --goal \
  164. --upfrom \
  165. --output-dir \
  166. --help \
  167. --lib-dir \
  168. --path \
  169. --default-libs \
  170. --verbose \
  171. --dev-mode \
  172. --include-erts \
  173. --override \
  174. --config \
  175. --overlay_vars \
  176. --vm_args \
  177. --sys_config \
  178. --system_libs \
  179. --version \
  180. --root"
  181. elif [[ ${prev} == tree ]] ; then
  182. sopts="-v"
  183. lopts="--verbose"
  184. elif [[ ${prev} == unstable ]] ; then
  185. :
  186. elif [[ ${prev} == update ]] ; then
  187. :
  188. elif [[ ${prev} == upgrade ]] ; then
  189. :
  190. elif [[ ${prev} == version ]] ; then
  191. :
  192. elif [[ ${prev} == xref ]] ; then
  193. :
  194. fi
  195. COMPREPLY=( $(compgen -W "${sopts} ${lopts} ${cmdsnvars}" -- ${cur}) )
  196. if [ -n "$COMPREPLY" ] ; then
  197. # append space if matched
  198. COMPREPLY="${COMPREPLY} "
  199. # remove trailing space after equal sign
  200. COMPREPLY=${COMPREPLY/%= /=}
  201. fi
  202. return 0
  203. }
  204. complete -o nospace -F _rebar3 rebar3
  205. # Local variables:
  206. # mode: shell-script
  207. # sh-basic-offset: 4
  208. # sh-indent-comment: t
  209. # indent-tabs-mode: nil
  210. # End:
  211. # ex: ts=4 sw=4 et filetype=sh